Improved and new cells
diff --git a/cells/cell/ASYNC2.cell b/cells/cell/ASYNC2.cell
new file mode 100644
index 0000000..b604db8
--- /dev/null
+++ b/cells/cell/ASYNC2.cell
@@ -0,0 +1,12 @@
+.AUTOGENERATED by spice2cell script from ASYNC2.spice
+.inputs A B
+.outputs C CN
+.ORDER "MOSFET Gate Drain Source"
+nmos C CN GND
+pmos A net1 VDD
+pmos B CN net1
+pmos CN C VDD
+pmos C CN VDD
+nmos B CN net2
+nmos A net2 GND
+nmos CN C GND
diff --git a/cells/cell/ASYNC3.cell b/cells/cell/ASYNC3.cell
new file mode 100644
index 0000000..fe7b7c5
--- /dev/null
+++ b/cells/cell/ASYNC3.cell
@@ -0,0 +1,16 @@
+.AUTOGENERATED by spice2cell script from ASYNC3.spice
+.inputs B A
+.outputs C CN 
+.ORDER "MOSFET Gate Drain Source"
+nmos B CN net2
+nmos A net2 GND
+nmos A CN net1
+nmos CN C GND
+nmos B net1 GND
+nmos C net2 net1
+pmos B CN net3
+pmos A net3 VDD
+pmos B net4 VDD
+pmos A CN net4
+pmos CN C VDD
+pmos C net4 net3
diff --git a/cells/cell/DFFSR.cell b/cells/cell/DFFSR.cell
deleted file mode 100644
index f8d5e14..0000000
--- a/cells/cell/DFFSR.cell
+++ /dev/null
@@ -1,36 +0,0 @@
-.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
-.inputs S R D CLK
-.outputs Q
-.ORDER "MOSFET Gate Drain Source"
-pmos R 1 vdd
-pmos 2 1 vdd
-pmos 3 2 vdd
-pmos S 2 vdd
-pmos 4 3 1
-pmos 5 6 3
-pmos D 6 vdd
-pmos 4 5 vdd
-pmos CLK 4 vdd
-pmos 4 7 2
-pmos 5 8 7
-pmos 7 9 vdd
-pmos R 9 vdd
-pmos 9 8 vdd
-pmos S 8 vdd
-pmos 9 Q vdd
-nmos R 10 1
-nmos 2 10 gnd
-nmos 3 11 gnd
-nmos S 2 11
-nmos 5 3 1
-nmos 4 6 3
-nmos D 6 gnd
-nmos 4 5 gnd
-nmos CLK 4 gnd
-nmos 5 7 2
-nmos 4 8 7
-nmos 7 12 9
-nmos R 12 gnd
-nmos 9 13 gnd
-nmos S 8 13
-nmos 9 Q gnd
diff --git a/cells/cell/HAX1.cell b/cells/cell/HAX1.cell
new file mode 100644
index 0000000..d361eb1
--- /dev/null
+++ b/cells/cell/HAX1.cell
@@ -0,0 +1,18 @@
+.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
+.inputs B A
+.outputs YS YC
+.ORDER "MOSFET Gate Drain Source"
+pmos A 1 vdd
+pmos B 1 vdd
+pmos 1 YC vdd
+pmos 1 2 vdd
+pmos B 3 2
+pmos A 3 vdd
+pmos 2 YS vdd
+nmos A 4 gnd
+nmos B 1 4
+nmos 1 YC gnd
+nmos 1 5 gnd
+nmos B 2 5
+nmos A 5 2
+nmos 2 YS gnd
diff --git a/cells/cell/MARTIN1989.cell b/cells/cell/MARTIN1989.cell
new file mode 100644
index 0000000..1a372f5
--- /dev/null
+++ b/cells/cell/MARTIN1989.cell
@@ -0,0 +1,12 @@
+.AUTOGENERATED by spice2cell script from martin1989.spice
+.inputs A B
+.outputs C
+.ORDER "MOSFET Gate Drain Source"
+nmos B net2 net3
+pmos A net1 VDD
+pmos B net2 net1
+pmos net2 C VDD
+nmos A net3 GND
+nmos net2 C GND
+pmos C net2 VDD
+nmos C net2 GND
diff --git a/cells/cell/NOR2X1.cell b/cells/cell/NOR2X1.cell
new file mode 100644
index 0000000..32d5a8a
--- /dev/null
+++ b/cells/cell/NOR2X1.cell
@@ -0,0 +1,8 @@
+.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 B Y 1
+nmos A Y gnd
+nmos B Y gnd
diff --git a/cells/cell/OAI21X1.cell b/cells/cell/OAI21X1.cell
new file mode 100644
index 0000000..65dd544
--- /dev/null
+++ b/cells/cell/OAI21X1.cell
@@ -0,0 +1,10 @@
+.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
+.inputs C B A
+.outputs Y
+.ORDER "MOSFET Gate Drain Source"
+pmos A 1 vdd
+pmos B Y 1
+pmos C Y vdd
+nmos A 2 gnd
+nmos B 2 gnd
+nmos C Y 2
diff --git a/cells/cell/OAI22X1.cell b/cells/cell/OAI22X1.cell
new file mode 100644
index 0000000..b2d91f3
--- /dev/null
+++ b/cells/cell/OAI22X1.cell
@@ -0,0 +1,12 @@
+.AUTOGENERATED by spice2cell script from /usr/share/qflow/tech/osu050/osu050_stdcells.sp
+.inputs D C B A
+.outputs Y
+.ORDER "MOSFET Gate Drain Source"
+pmos A 1 vdd
+pmos B Y 1
+pmos D 2 Y
+pmos C 2 vdd
+nmos A 3 gnd
+nmos B 3 gnd
+nmos D Y 3
+nmos C 3 Y
diff --git a/cells/cell/SUTHERLAND1989.cell b/cells/cell/SUTHERLAND1989.cell
new file mode 100644
index 0000000..04da389
--- /dev/null
+++ b/cells/cell/SUTHERLAND1989.cell
@@ -0,0 +1,16 @@
+.AUTOGENERATED by spice2cell script from sutherland1989.spice
+.inputs B A
+.outputs C
+.ORDER "MOSFET Gate Drain Source"
+nmos B net6 net5
+pmos A net2 VDD
+pmos B net6 net2
+pmos A net1 VDD
+pmos B net1 VDD
+pmos C net3 net1
+pmos net3 C VDD
+nmos C net3 net4
+nmos A net5 GND
+nmos B net4 GND
+nmos A net4 GND
+nmos net3 C GND
diff --git a/cells/cell/VANBERKEL1991.cell b/cells/cell/VANBERKEL1991.cell
new file mode 100644
index 0000000..cf2ea8b
--- /dev/null
+++ b/cells/cell/VANBERKEL1991.cell
@@ -0,0 +1,16 @@
+.AUTOGENERATED by spice2cell script from vanberkel1991.spice
+.inputs A B
+.outputs C
+.ORDER "MOSFET Gate Drain Source"
+nmos B net3 net5
+pmos A net2 VDD
+pmos B net3 net2
+pmos B net1 VDD
+pmos A net3 net1
+pmos net3 C VDD
+nmos A net3 net4
+nmos A net5 GND
+nmos B net4 GND
+nmos C net4 net5
+nmos net3 C GND
+pmos C net1 net2
diff --git a/cells/gds/AND2X1.gds b/cells/gds/AND2X1.gds
index 11bd472..c32eb25 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 82b272d..6b97345 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 7c973bc..8d75f42 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 2fc2c28..9de602c 100644
--- a/cells/gds/AOI22X1.gds
+++ b/cells/gds/AOI22X1.gds
Binary files differ
diff --git a/cells/gds/ASYNC2.gds b/cells/gds/ASYNC2.gds
new file mode 100644
index 0000000..c1825d1
--- /dev/null
+++ b/cells/gds/ASYNC2.gds
Binary files differ
diff --git a/cells/gds/ASYNC3.gds b/cells/gds/ASYNC3.gds
new file mode 100644
index 0000000..42d8001
--- /dev/null
+++ b/cells/gds/ASYNC3.gds
Binary files differ
diff --git a/cells/gds/BUFX2.gds b/cells/gds/BUFX2.gds
index 385db82..b09e33b 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 5cd198c..6945513 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 9268e21..3a0fce2 100644
--- a/cells/gds/CLKBUF1.gds
+++ b/cells/gds/CLKBUF1.gds
Binary files differ
diff --git a/cells/gds/CLKBUF2.gds b/cells/gds/CLKBUF2.gds
new file mode 100644
index 0000000..49c25dd
--- /dev/null
+++ b/cells/gds/CLKBUF2.gds
Binary files differ
diff --git a/cells/gds/HAX1.gds b/cells/gds/HAX1.gds
new file mode 100644
index 0000000..a158a0a
--- /dev/null
+++ b/cells/gds/HAX1.gds
Binary files differ
diff --git a/cells/gds/INV.gds b/cells/gds/INV.gds
index 94721cf..db780c6 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 940120c..39d70d4 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 da460e8..f5d8a53 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 c9ac0e3..5ad4165 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 cae54aa..9967fc8 100644
--- a/cells/gds/INVX8.gds
+++ b/cells/gds/INVX8.gds
Binary files differ
diff --git a/cells/gds/MARTIN1989.gds b/cells/gds/MARTIN1989.gds
new file mode 100644
index 0000000..1eab0f0
--- /dev/null
+++ b/cells/gds/MARTIN1989.gds
Binary files differ
diff --git a/cells/gds/MUX2X1.gds b/cells/gds/MUX2X1.gds
index 9c653d0..ea22af6 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 bc58849..bd4f535 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 a2dac94..270c781 100644
--- a/cells/gds/NAND3X1.gds
+++ b/cells/gds/NAND3X1.gds
Binary files differ
diff --git a/cells/gds/NOR2X1.gds b/cells/gds/NOR2X1.gds
new file mode 100644
index 0000000..d439cf6
--- /dev/null
+++ b/cells/gds/NOR2X1.gds
Binary files differ
diff --git a/cells/gds/OAI21X1.gds b/cells/gds/OAI21X1.gds
new file mode 100644
index 0000000..7cd42bf
--- /dev/null
+++ b/cells/gds/OAI21X1.gds
Binary files differ
diff --git a/cells/gds/OAI22X1.gds b/cells/gds/OAI22X1.gds
new file mode 100644
index 0000000..1b53cc1
--- /dev/null
+++ b/cells/gds/OAI22X1.gds
Binary files differ
diff --git a/cells/gds/OR2X1.gds b/cells/gds/OR2X1.gds
index 4993173..5e9f88b 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 965af81..6f0d9bc 100644
--- a/cells/gds/OR2X2.gds
+++ b/cells/gds/OR2X2.gds
Binary files differ
diff --git a/cells/gds/SUTHERLAND1989.gds b/cells/gds/SUTHERLAND1989.gds
new file mode 100644
index 0000000..3bed578
--- /dev/null
+++ b/cells/gds/SUTHERLAND1989.gds
Binary files differ
diff --git a/cells/gds/VANBERKEL1991.gds b/cells/gds/VANBERKEL1991.gds
new file mode 100644
index 0000000..91997ca
--- /dev/null
+++ b/cells/gds/VANBERKEL1991.gds
Binary files differ
diff --git a/cells/gds/XNOR2X1.gds b/cells/gds/XNOR2X1.gds
index fdb1416..dcb7eac 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
index ebdfda2..2bd2e24 100644
--- a/cells/gds/XOR2X1.gds
+++ b/cells/gds/XOR2X1.gds
Binary files differ
diff --git a/cells/lef/AND2X1.lef b/cells/lef/AND2X1.lef
index dcfe4e8..378a429 100644
--- a/cells/lef/AND2X1.lef
+++ b/cells/lef/AND2X1.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.580 2.990 0.870 3.090 ;
-        RECT 0.580 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.870 2.990 ;
-        RECT 0.580 2.760 0.870 2.820 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.560 2.990 0.890 3.090 ;
-        RECT 0.560 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.890 2.990 ;
-        RECT 0.560 2.740 0.890 2.820 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,18 +40,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -76,8 +69,8 @@
     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 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
@@ -94,6 +87,10 @@
   END A
   OBS
       LAYER li1 ;
+        RECT 3.200 2.970 3.530 3.050 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
         RECT 1.760 2.430 2.090 2.510 ;
         RECT 1.760 2.260 1.840 2.430 ;
         RECT 2.010 2.260 2.090 2.430 ;
@@ -114,6 +111,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.620 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 ;
@@ -125,30 +123,36 @@
         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.910 4.490 1.080 ;
-        RECT 4.160 0.830 4.490 0.910 ;
+        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 0.800 0.670 1.130 0.750 ;
         RECT 0.800 0.500 0.880 0.670 ;
         RECT 1.050 0.500 1.130 0.670 ;
-        RECT 4.660 0.670 4.970 0.750 ;
-        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
         RECT 0.800 0.420 1.130 0.500 ;
-        RECT 4.640 0.500 4.720 0.660 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 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 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 2.000 1.990 2.200 ;
         RECT 4.180 2.010 4.470 2.070 ;
-        RECT 4.180 1.840 4.240 2.010 ;
+        RECT 4.180 2.000 4.240 2.010 ;
+        RECT 1.850 1.860 4.240 2.000 ;
+        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 1.860 ;
+        RECT 4.180 1.840 4.240 1.860 ;
         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 ;
@@ -156,9 +160,8 @@
         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 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.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 AND2X1
diff --git a/cells/lef/AND2X1.lef.beforemagic b/cells/lef/AND2X1.lef.beforemagic
index 183b8e2..339e2c8 100644
--- a/cells/lef/AND2X1.lef.beforemagic
+++ b/cells/lef/AND2X1.lef.beforemagic
@@ -52,8 +52,8 @@
      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 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
     END
   END B
 
@@ -74,28 +74,19 @@
   OBS
     LAYER locali ;
       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 ( 0 3.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.215 ) ( 5.76 3.245 ) ;
+      RECT ( 0 3.09 ) ( 3.025 3.215 ) ;
+      RECT ( 3.695 3.09 ) ( 5.76 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.045 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
       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 ) ;
@@ -118,6 +109,7 @@
       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.92 ) ( 1.355 1.075 ) ;
       RECT ( 1.295 0.905 ) ( 1.355 0.92 ) ;
@@ -129,71 +121,44 @@
       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 ( 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.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 ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
       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.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.25 2.07 ) ( 4.39 2.27 ) ;
+      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 ) ;
@@ -201,21 +166,28 @@
       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.85 1.995 ) ( 1.99 2.195 ) ;
       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.175 1.995 ) ( 4.235 2.01 ) ;
+      RECT ( 1.85 1.855 ) ( 4.235 1.995 ) ;
       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 ( 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 1.855 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 1.855 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      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.78 ) ;
       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 ) ;
@@ -225,32 +197,21 @@
       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 ( 1.045 0.515 ) ( 1.99 0.655 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 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 ( 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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
       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 ( 3.29 0.24 ) ( 3.43 0.44 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/AND2X1.lef.temp b/cells/lef/AND2X1.lef.temp
index 8d61f30..575885c 100644
--- a/cells/lef/AND2X1.lef.temp
+++ b/cells/lef/AND2X1.lef.temp
@@ -52,8 +52,8 @@
      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 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
     END
   END B
 
diff --git a/cells/lef/AND2X2.lef b/cells/lef/AND2X2.lef
index fe5e376..13faabb 100644
--- a/cells/lef/AND2X2.lef
+++ b/cells/lef/AND2X2.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.580 2.990 0.870 3.090 ;
-        RECT 0.580 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.870 2.990 ;
-        RECT 0.580 2.760 0.870 2.820 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.560 2.990 0.890 3.090 ;
-        RECT 0.560 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.890 2.990 ;
-        RECT 0.560 2.740 0.890 2.820 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,18 +40,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -70,6 +63,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.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
   PIN A
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -81,17 +85,12 @@
         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 3.200 2.970 3.530 3.050 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
         RECT 1.760 2.430 2.090 2.510 ;
         RECT 1.760 2.260 1.840 2.430 ;
         RECT 2.010 2.260 2.090 2.430 ;
@@ -112,7 +111,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 2.800 1.620 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 ;
@@ -124,15 +123,20 @@
         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.910 4.490 1.080 ;
-        RECT 4.160 0.830 4.490 0.910 ;
+        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 0.800 0.670 1.130 0.750 ;
         RECT 0.800 0.500 0.880 0.670 ;
         RECT 1.050 0.500 1.130 0.670 ;
-        RECT 4.660 0.670 4.970 0.750 ;
-        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
         RECT 0.800 0.420 1.130 0.500 ;
-        RECT 4.640 0.500 4.720 0.660 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 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 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
@@ -140,20 +144,20 @@
         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 1.850 2.000 1.990 2.200 ;
         RECT 4.180 2.010 4.470 2.070 ;
-        RECT 4.180 1.840 4.240 2.010 ;
+        RECT 4.180 2.000 4.240 2.010 ;
+        RECT 1.850 1.860 4.240 2.000 ;
+        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 1.860 ;
+        RECT 4.180 1.840 4.240 1.860 ;
         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 ;
diff --git a/cells/lef/AND2X2.lef.beforemagic b/cells/lef/AND2X2.lef.beforemagic
index 8a95474..d7617f0 100644
--- a/cells/lef/AND2X2.lef.beforemagic
+++ b/cells/lef/AND2X2.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.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,43 +70,23 @@
     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.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 ( 0 3.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.215 ) ( 5.76 3.245 ) ;
+      RECT ( 0 3.09 ) ( 3.025 3.215 ) ;
+      RECT ( 3.695 3.09 ) ( 5.76 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.045 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
       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 ) ;
@@ -116,7 +109,7 @@
       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 ( 2.795 1.615 ) ( 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 ) ;
@@ -128,60 +121,39 @@
       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 ( 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.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 ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
       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 ) ;
@@ -194,57 +166,52 @@
       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.85 1.995 ) ( 1.99 2.195 ) ;
+      RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
+      RECT ( 4.175 1.995 ) ( 4.235 2.01 ) ;
+      RECT ( 1.85 1.855 ) ( 4.235 1.995 ) ;
       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 ( 1.85 0.655 ) ( 1.99 1.855 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 1.855 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 2.01 ) ;
+      RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      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.78 ) ;
+      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 ( 1.045 0.515 ) ( 1.99 0.655 ) ;
-      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 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 ( 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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
       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 ( 3.29 0.24 ) ( 3.43 0.44 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/AND2X2.lef.temp b/cells/lef/AND2X2.lef.temp
index efd3ff5..24a2d58 100644
--- a/cells/lef/AND2X2.lef.temp
+++ b/cells/lef/AND2X2.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.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,15 +70,4 @@
     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 9e5c643..8e8ad6e 100644
--- a/cells/lef/AOI21X1.lef
+++ b/cells/lef/AOI21X1.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
+        RECT 3.200 2.970 3.530 3.090 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -40,10 +40,12 @@
     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 1.780 0.670 2.090 0.750 ;
+        RECT 1.780 0.660 1.840 0.670 ;
+        RECT 1.760 0.500 1.840 0.660 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 1.840 0.240 2.010 0.420 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -53,26 +55,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 2.200 0.870 2.490 ;
-        RECT 0.650 0.730 0.790 2.200 ;
-        RECT 0.580 0.660 0.870 0.730 ;
+        RECT 0.820 2.200 1.110 2.490 ;
+        RECT 0.890 0.730 1.030 2.200 ;
+        RECT 0.820 0.660 1.110 0.730 ;
         RECT 4.660 0.660 4.950 0.730 ;
-        RECT 0.580 0.520 4.950 0.660 ;
-        RECT 0.580 0.440 0.870 0.520 ;
+        RECT 0.820 0.520 4.950 0.660 ;
+        RECT 0.820 0.440 1.110 0.520 ;
         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 ;
@@ -95,18 +86,29 @@
         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 ;
-        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 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 2.240 2.430 2.570 2.510 ;
         RECT 2.240 2.260 2.320 2.430 ;
         RECT 2.490 2.260 2.570 2.430 ;
         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 0.800 2.180 1.110 2.260 ;
         RECT 2.240 2.180 2.550 2.260 ;
         RECT 4.660 2.180 4.970 2.260 ;
         RECT 1.280 2.010 1.610 2.090 ;
@@ -122,9 +124,10 @@
         RECT 4.410 1.840 4.490 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
         RECT 1.280 1.080 1.610 1.160 ;
-        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.280 0.920 1.360 1.080 ;
+        RECT 1.300 0.910 1.360 0.920 ;
         RECT 1.530 0.910 1.610 1.080 ;
-        RECT 1.280 0.830 1.610 0.910 ;
+        RECT 1.300 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 ;
@@ -134,10 +137,10 @@
         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 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 0.800 0.670 1.130 0.750 ;
+        RECT 0.800 0.500 0.880 0.670 ;
+        RECT 1.050 0.500 1.130 0.670 ;
+        RECT 0.800 0.420 1.130 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 ;
diff --git a/cells/lef/AOI21X1.lef.beforemagic b/cells/lef/AOI21X1.lef.beforemagic
index 4e34cbd..6c06027 100644
--- a/cells/lef/AOI21X1.lef.beforemagic
+++ b/cells/lef/AOI21X1.lef.beforemagic
@@ -38,29 +38,16 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 4.94500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.51500000 4.94500000 0.65500000 ;
+        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 ;
@@ -87,33 +74,36 @@
     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.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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.195 2.965 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
+      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 ( 2.235 2.425 ) ( 2.565 2.505 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
       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 ) ;
@@ -136,9 +126,10 @@
       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.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.275 0.825 ) ( 1.605 0.905 ) ;
+      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 ) ;
@@ -148,57 +139,37 @@
       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 ( 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 ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
       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 ( 1.835 0.24 ) ( 2.005 0.42 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
+      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 ( 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 ) ;
@@ -210,7 +181,7 @@
       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 ( 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 ) ;
@@ -238,31 +209,20 @@
       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 ( 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 ( 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 ( 1.045 0.515 ) ( 4.715 0.655 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.515 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/AOI21X1.lef.temp b/cells/lef/AOI21X1.lef.temp
index c375c88..7e38600 100644
--- a/cells/lef/AOI21X1.lef.temp
+++ b/cells/lef/AOI21X1.lef.temp
@@ -38,29 +38,16 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 4.94500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.51500000 4.94500000 0.65500000 ;
+        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 ;
@@ -87,4 +74,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 AOI21X1
diff --git a/cells/lef/AOI22X1.lef b/cells/lef/AOI22X1.lef
index 618c08e..d0308ef 100644
--- a/cells/lef/AOI22X1.lef
+++ b/cells/lef/AOI22X1.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 7.200 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 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 7.200 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 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -40,10 +40,12 @@
     END
     PORT
       LAYER li1 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 3.280 0.240 3.450 0.420 ;
         RECT 0.000 -0.240 7.200 0.240 ;
     END
   END VGND
@@ -53,26 +55,17 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 5.140 2.200 5.430 2.490 ;
+        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 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 D
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 5.620 1.780 5.910 2.070 ;
-        RECT 5.690 1.140 5.830 1.780 ;
-        RECT 5.620 0.850 5.910 1.140 ;
-    END
-  END D
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -84,17 +77,6 @@
         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 ;
@@ -106,6 +88,28 @@
         RECT 2.740 0.850 3.030 1.140 ;
     END
   END A
+  PIN D
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 5.620 1.780 5.910 2.070 ;
+        RECT 5.690 1.140 5.830 1.780 ;
+        RECT 5.620 0.850 5.910 1.140 ;
+    END
+  END D
+  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
   OBS
       LAYER li1 ;
         RECT 6.080 2.830 6.410 2.910 ;
@@ -118,13 +122,13 @@
         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 0.800 2.180 1.110 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.430 2.260 ;
-        RECT 1.300 2.010 1.610 2.090 ;
+        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 ;
@@ -141,9 +145,10 @@
         RECT 5.850 1.840 5.930 2.010 ;
         RECT 5.600 1.760 5.930 1.840 ;
         RECT 1.280 1.080 1.610 1.160 ;
-        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.280 0.920 1.360 1.080 ;
+        RECT 1.300 0.910 1.360 0.920 ;
         RECT 1.530 0.910 1.610 1.080 ;
-        RECT 1.280 0.830 1.610 0.910 ;
+        RECT 1.300 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 ;
@@ -157,12 +162,11 @@
         RECT 5.850 0.920 5.930 1.080 ;
         RECT 5.850 0.910 5.910 0.920 ;
         RECT 5.600 0.830 5.910 0.910 ;
-        RECT 0.800 0.670 1.110 0.750 ;
+        RECT 0.800 0.670 1.130 0.750 ;
         RECT 0.800 0.500 0.880 0.670 ;
-        RECT 1.050 0.660 1.110 0.670 ;
-        RECT 6.080 0.670 6.410 0.750 ;
-        RECT 1.050 0.500 1.130 0.660 ;
+        RECT 1.050 0.500 1.130 0.670 ;
         RECT 0.800 0.420 1.130 0.500 ;
+        RECT 6.080 0.670 6.410 0.750 ;
         RECT 6.080 0.500 6.160 0.670 ;
         RECT 6.330 0.500 6.410 0.670 ;
         RECT 6.080 0.420 6.410 0.500 ;
diff --git a/cells/lef/AOI22X1.lef.beforemagic b/cells/lef/AOI22X1.lef.beforemagic
index d468c70..1515970 100644
--- a/cells/lef/AOI22X1.lef.beforemagic
+++ b/cells/lef/AOI22X1.lef.beforemagic
@@ -43,24 +43,13 @@
         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.21000000 0.65500000 5.35000000 2.19500000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
+        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 ;
     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 B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,19 +63,6 @@
     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 ;
@@ -100,41 +76,54 @@
     END
   END A
 
+  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 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
+
 
   OBS
     LAYER locali ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
       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 ( 1.045 2.26 ) ( 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 ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 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 ) ;
@@ -143,9 +132,8 @@
       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.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 ) ;
@@ -161,9 +149,10 @@
       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.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.275 0.825 ) ( 1.605 0.905 ) ;
+      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 ) ;
@@ -177,62 +166,35 @@
       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.67 ) ( 1.125 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 ( 1.045 0.5 ) ( 1.125 0.67 ) ;
+      RECT ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 6.075 0.67 ) ( 6.405 0.75 ) ;
       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 ( 3.275 0.24 ) ( 3.445 0.42 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 7.2 0.085 ) ;
       RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
       RECT ( 6.095 2.83 ) ( 6.385 2.89 ) ;
       RECT ( 6.095 2.815 ) ( 6.155 2.83 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
       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 ) ;
@@ -251,7 +213,9 @@
       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.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 ( 1.295 2.01 ) ( 1.585 2.07 ) ;
       RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
@@ -265,9 +229,14 @@
       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 0.905 ) ( 1.585 1.075 ) ;
@@ -280,19 +249,14 @@
       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.17 0.73 ) ( 6.31 2.27 ) ;
+      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 ( 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 ) ;
@@ -302,22 +266,8 @@
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 7.2 0.085 ) ;
       RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
 
   end
diff --git a/cells/lef/AOI22X1.lef.temp b/cells/lef/AOI22X1.lef.temp
index 1ec3a84..856dfb6 100644
--- a/cells/lef/AOI22X1.lef.temp
+++ b/cells/lef/AOI22X1.lef.temp
@@ -43,24 +43,13 @@
         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.21000000 0.65500000 5.35000000 2.19500000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
+        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 ;
     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 B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,19 +63,6 @@
     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 ;
@@ -100,4 +76,30 @@
     END
   END A
 
+  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 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
+
 END AOI22X1
diff --git a/cells/lef/ASYNC2.lef b/cells/lef/ASYNC2.lef
new file mode 100644
index 0000000..86f07d1
--- /dev/null
+++ b/cells/lef/ASYNC2.lef
@@ -0,0 +1,179 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO ASYNC2
+  CLASS CORE ;
+  FOREIGN ASYNC2 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 4.660 2.970 4.950 3.090 ;
+        RECT 4.660 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.950 2.970 ;
+        RECT 4.660 2.740 4.950 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        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 0.650 0.240 0.790 0.440 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 4.660 0.670 4.970 0.750 ;
+        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 4.640 0.500 4.720 0.660 ;
+        RECT 4.890 0.500 4.970 0.670 ;
+        RECT 4.640 0.420 4.970 0.500 ;
+        RECT 4.720 0.240 4.890 0.420 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+  END VGND
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 6.100 2.410 6.390 2.490 ;
+        RECT 4.250 2.270 6.390 2.410 ;
+        RECT 4.250 2.070 4.390 2.270 ;
+        RECT 6.100 2.200 6.390 2.270 ;
+        RECT 4.180 1.780 4.470 2.070 ;
+        RECT 6.170 0.730 6.310 2.200 ;
+        RECT 6.100 0.440 6.390 0.730 ;
+    END
+  END C
+  PIN CN
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 3.220 2.200 3.510 2.490 ;
+        RECT 3.290 1.060 3.430 2.200 ;
+        RECT 5.620 1.780 5.910 2.070 ;
+        RECT 5.690 1.140 5.830 1.780 ;
+        RECT 5.620 1.060 5.910 1.140 ;
+        RECT 3.290 0.920 5.910 1.060 ;
+        RECT 3.290 0.730 3.430 0.920 ;
+        RECT 5.620 0.850 5.910 0.920 ;
+        RECT 3.220 0.440 3.510 0.730 ;
+    END
+  END CN
+  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 ;
+    SHAPE ABUTMENT ;
+    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
+  OBS
+      LAYER li1 ;
+        RECT 4.640 2.970 4.970 3.050 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
+        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 6.080 2.430 6.410 2.510 ;
+        RECT 6.080 2.260 6.160 2.430 ;
+        RECT 6.330 2.260 6.410 2.430 ;
+        RECT 3.220 2.180 3.530 2.260 ;
+        RECT 6.100 2.180 6.410 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 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 4.240 1.160 4.410 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.920 3.050 1.080 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
+        RECT 4.160 0.910 4.240 1.080 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
+        RECT 5.600 1.080 5.930 1.160 ;
+        RECT 5.600 0.910 5.680 1.080 ;
+        RECT 5.850 0.920 5.930 1.080 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.600 0.830 5.910 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 3.200 0.670 3.530 0.750 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 6.080 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+  END
+END ASYNC2
+END LIBRARY
+
diff --git a/cells/lef/ASYNC2.lef.beforemagic b/cells/lef/ASYNC2.lef.beforemagic
new file mode 100644
index 0000000..2fc5209
--- /dev/null
+++ b/cells/lef/ASYNC2.lef.beforemagic
@@ -0,0 +1,259 @@
+MACRO ASYNC2
+ CLASS CORE ;
+ FOREIGN ASYNC2 0 0 ;
+ SIZE 7.2 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
+        RECT 4.25000000 2.27000000 6.38500000 2.41000000 ;
+        RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+        RECT 3.29000000 0.73000000 3.43000000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 3.29000000 0.92000000 5.90500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 3.29000000 1.06000000 3.43000000 2.19500000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+    END
+  END CN
+
+  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 ;
+   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
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.215 ) ( 7.2 3.245 ) ;
+      RECT ( 0 3.09 ) ( 4.465 3.215 ) ;
+      RECT ( 5.135 3.09 ) ( 7.2 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.045 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.26 ) ( 3.275 2.425 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.26 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 6.075 2.425 ) ( 6.405 2.505 ) ;
+      RECT ( 6.075 2.26 ) ( 6.155 2.425 ) ;
+      RECT ( 3.215 2.175 ) ( 3.525 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.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 ( 4.235 1.155 ) ( 4.405 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 ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      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.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.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      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 ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      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 ( 4.715 0.24 ) ( 4.885 0.42 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      RECT ( 4.655 2.965 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.945 2.965 ) ;
+      RECT ( 4.655 2.735 ) ( 4.945 2.795 ) ;
+      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 ( 6.095 2.425 ) ( 6.385 2.485 ) ;
+      RECT ( 6.095 2.41 ) ( 6.155 2.425 ) ;
+      RECT ( 3.215 2.195 ) ( 3.505 2.255 ) ;
+      RECT ( 4.25 2.27 ) ( 6.155 2.41 ) ;
+      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 ( 3.29 1.06 ) ( 3.43 2.195 ) ;
+      RECT ( 4.25 2.07 ) ( 4.39 2.27 ) ;
+      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 ( 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 ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      RECT ( 5.615 1.075 ) ( 5.905 1.135 ) ;
+      RECT ( 5.615 1.06 ) ( 5.675 1.075 ) ;
+      RECT ( 3.29 0.92 ) ( 5.675 1.06 ) ;
+      RECT ( 3.29 0.73 ) ( 3.43 0.92 ) ;
+      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.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.67 ) ( 3.505 0.73 ) ;
+      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 ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.67 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 0.65 0.24 ) ( 0.79 0.44 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+
+  end
+END ASYNC2
diff --git a/cells/lef/ASYNC2.lef.temp b/cells/lef/ASYNC2.lef.temp
new file mode 100644
index 0000000..7443d27
--- /dev/null
+++ b/cells/lef/ASYNC2.lef.temp
@@ -0,0 +1,96 @@
+MACRO ASYNC2
+ CLASS CORE ;
+ FOREIGN ASYNC2 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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
+        RECT 4.25000000 2.27000000 6.38500000 2.41000000 ;
+        RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+        RECT 3.29000000 0.73000000 3.43000000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 3.29000000 0.92000000 5.90500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 3.29000000 1.06000000 3.43000000 2.19500000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+    END
+  END CN
+
+  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 ;
+   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
+
+END ASYNC2
diff --git a/cells/lef/ASYNC3.lef b/cells/lef/ASYNC3.lef
new file mode 100644
index 0000000..9b18ec4
--- /dev/null
+++ b/cells/lef/ASYNC3.lef
@@ -0,0 +1,281 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO ASYNC3
+  CLASS CORE ;
+  FOREIGN ASYNC3 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 8.980 2.970 9.270 3.090 ;
+        RECT 8.980 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.270 2.970 ;
+        RECT 8.980 2.740 9.270 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 4.640 2.970 4.970 3.090 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
+        RECT 8.960 2.970 9.290 3.090 ;
+        RECT 8.960 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.290 2.970 ;
+        RECT 8.960 2.720 9.290 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        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 4.640 0.420 4.970 0.500 ;
+        RECT 8.960 0.670 9.290 0.750 ;
+        RECT 8.960 0.500 9.040 0.670 ;
+        RECT 9.210 0.500 9.290 0.670 ;
+        RECT 8.960 0.420 9.290 0.500 ;
+        RECT 4.720 0.240 4.890 0.420 ;
+        RECT 9.040 0.240 9.210 0.420 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+  END VGND
+  PIN CN
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.780 2.000 2.070 2.070 ;
+        RECT 9.940 2.000 10.230 2.070 ;
+        RECT 1.780 1.860 10.230 2.000 ;
+        RECT 1.780 1.780 2.070 1.860 ;
+        RECT 9.940 1.780 10.230 1.860 ;
+        RECT 10.010 1.140 10.150 1.780 ;
+        RECT 9.940 0.850 10.230 1.140 ;
+    END
+  END CN
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 10.420 2.200 10.710 2.490 ;
+        RECT 10.490 0.730 10.630 2.200 ;
+        RECT 7.060 0.660 7.350 0.730 ;
+        RECT 10.420 0.660 10.710 0.730 ;
+        RECT 7.060 0.520 10.710 0.660 ;
+        RECT 7.060 0.440 7.350 0.520 ;
+        RECT 10.420 0.440 10.710 0.520 ;
+    END
+  END C
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.300 0.850 1.590 1.140 ;
+        RECT 1.370 0.660 1.510 0.850 ;
+        RECT 3.220 0.660 3.510 0.730 ;
+        RECT 1.370 0.520 3.510 0.660 ;
+        RECT 3.220 0.440 3.510 0.520 ;
+    END
+  END A
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.060 3.030 1.140 ;
+        RECT 8.500 1.060 8.790 1.140 ;
+        RECT 2.740 0.920 8.790 1.060 ;
+        RECT 2.740 0.850 3.030 0.920 ;
+        RECT 8.500 0.850 8.790 0.920 ;
+    END
+  END B
+  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 3.680 2.580 4.010 2.660 ;
+        RECT 6.320 2.830 6.650 2.910 ;
+        RECT 6.320 2.660 6.400 2.830 ;
+        RECT 6.570 2.660 6.650 2.830 ;
+        RECT 6.320 2.580 6.650 2.660 ;
+        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 1.760 2.430 2.090 2.510 ;
+        RECT 1.760 2.260 1.840 2.430 ;
+        RECT 2.010 2.260 2.090 2.430 ;
+        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 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 0.800 2.180 1.110 2.260 ;
+        RECT 1.760 2.180 2.090 2.260 ;
+        RECT 7.540 2.180 7.850 2.260 ;
+        RECT 10.420 2.180 10.730 2.260 ;
+        RECT 1.280 2.010 1.590 2.090 ;
+        RECT 1.840 2.010 2.010 2.180 ;
+        RECT 2.720 2.010 3.050 2.090 ;
+        RECT 1.280 1.840 1.360 2.010 ;
+        RECT 1.530 1.840 1.610 2.010 ;
+        RECT 2.720 1.840 2.800 2.010 ;
+        RECT 2.970 1.840 3.050 2.010 ;
+        RECT 1.280 1.760 1.610 1.840 ;
+        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.920 1.610 1.080 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        RECT 1.840 0.750 2.010 1.840 ;
+        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 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 9.920 2.010 10.250 2.090 ;
+        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 2.800 1.160 2.970 1.760 ;
+        RECT 4.240 1.210 4.410 1.760 ;
+        RECT 3.280 1.160 4.410 1.210 ;
+        RECT 7.120 1.160 7.290 1.760 ;
+        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 3.280 1.080 4.490 1.160 ;
+        RECT 3.280 1.040 4.240 1.080 ;
+        RECT 0.800 0.670 1.110 0.750 ;
+        RECT 0.800 0.500 0.880 0.670 ;
+        RECT 1.050 0.660 1.110 0.670 ;
+        RECT 1.760 0.670 2.090 0.750 ;
+        RECT 3.280 0.670 3.450 1.040 ;
+        RECT 4.160 0.920 4.240 1.040 ;
+        RECT 4.180 0.910 4.240 0.920 ;
+        RECT 4.410 0.920 4.490 1.080 ;
+        RECT 7.040 1.080 7.370 1.160 ;
+        RECT 4.410 0.910 4.470 0.920 ;
+        RECT 4.180 0.830 4.470 0.910 ;
+        RECT 7.040 0.910 7.120 1.080 ;
+        RECT 7.290 0.920 7.370 1.080 ;
+        RECT 7.290 0.910 7.350 0.920 ;
+        RECT 7.040 0.830 7.350 0.910 ;
+        RECT 3.680 0.670 4.010 0.750 ;
+        RECT 1.050 0.500 1.130 0.660 ;
+        RECT 0.800 0.420 1.130 0.500 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.680 0.500 3.760 0.670 ;
+        RECT 3.930 0.500 4.010 0.670 ;
+        RECT 3.680 0.420 4.010 0.500 ;
+        RECT 6.320 0.670 6.650 0.750 ;
+        RECT 7.120 0.670 7.290 0.830 ;
+        RECT 7.600 0.750 7.770 1.450 ;
+        RECT 8.560 1.160 8.730 1.760 ;
+        RECT 8.480 1.080 8.810 1.160 ;
+        RECT 8.480 0.910 8.560 1.080 ;
+        RECT 8.730 0.920 8.810 1.080 ;
+        RECT 9.920 1.080 10.250 1.160 ;
+        RECT 8.730 0.910 8.790 0.920 ;
+        RECT 8.480 0.830 8.790 0.910 ;
+        RECT 9.920 0.910 10.000 1.080 ;
+        RECT 10.170 0.910 10.250 1.080 ;
+        RECT 9.920 0.830 10.250 0.910 ;
+        RECT 7.520 0.670 7.850 0.750 ;
+        RECT 6.320 0.500 6.400 0.670 ;
+        RECT 6.570 0.500 6.650 0.670 ;
+        RECT 6.320 0.420 6.650 0.500 ;
+        RECT 7.520 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.850 0.670 ;
+        RECT 10.420 0.670 10.730 0.750 ;
+        RECT 10.420 0.660 10.480 0.670 ;
+        RECT 7.520 0.420 7.850 0.500 ;
+        RECT 10.400 0.500 10.480 0.660 ;
+        RECT 10.650 0.500 10.730 0.670 ;
+        RECT 10.400 0.420 10.730 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.340 2.830 6.630 2.890 ;
+        RECT 6.340 2.820 6.400 2.830 ;
+        RECT 3.930 2.680 6.400 2.820 ;
+        RECT 3.930 2.660 3.990 2.680 ;
+        RECT 3.700 2.600 3.990 2.660 ;
+        RECT 6.340 2.660 6.400 2.680 ;
+        RECT 6.570 2.660 6.630 2.830 ;
+        RECT 6.340 2.600 6.630 2.660 ;
+        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 7.540 2.430 7.830 2.490 ;
+        RECT 7.540 2.410 7.600 2.430 ;
+        RECT 1.050 2.270 7.600 2.410 ;
+        RECT 1.050 2.260 1.110 2.270 ;
+        RECT 0.820 2.200 1.110 2.260 ;
+        RECT 7.540 2.260 7.600 2.270 ;
+        RECT 7.770 2.260 7.830 2.430 ;
+        RECT 7.540 2.200 7.830 2.260 ;
+        RECT 7.540 1.620 7.830 1.680 ;
+        RECT 7.540 1.600 7.600 1.620 ;
+        RECT 0.890 1.460 7.600 1.600 ;
+        RECT 0.890 0.730 1.030 1.460 ;
+        RECT 7.540 1.450 7.600 1.460 ;
+        RECT 7.770 1.450 7.830 1.620 ;
+        RECT 7.540 1.390 7.830 1.450 ;
+        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 ;
+        RECT 3.700 0.670 3.990 0.730 ;
+        RECT 3.700 0.500 3.760 0.670 ;
+        RECT 3.930 0.660 3.990 0.670 ;
+        RECT 6.340 0.670 6.630 0.730 ;
+        RECT 6.340 0.660 6.400 0.670 ;
+        RECT 3.930 0.520 6.400 0.660 ;
+        RECT 3.930 0.500 3.990 0.520 ;
+        RECT 3.700 0.440 3.990 0.500 ;
+        RECT 6.340 0.500 6.400 0.520 ;
+        RECT 6.570 0.500 6.630 0.670 ;
+        RECT 6.340 0.440 6.630 0.500 ;
+  END
+END ASYNC3
+END LIBRARY
+
diff --git a/cells/lef/ASYNC3.lef.beforemagic b/cells/lef/ASYNC3.lef.beforemagic
new file mode 100644
index 0000000..1350053
--- /dev/null
+++ b/cells/lef/ASYNC3.lef.beforemagic
@@ -0,0 +1,359 @@
+MACRO ASYNC3
+ CLASS CORE ;
+ FOREIGN ASYNC3 0 0 ;
+ SIZE 11.52 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+        RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
+        RECT 1.77500000 1.78000000 2.06500000 1.85500000 ;
+        RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+        RECT 1.77500000 1.85500000 10.22500000 1.99500000 ;
+        RECT 1.77500000 1.99500000 2.06500000 2.07000000 ;
+        RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+    END
+  END CN
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.44000000 7.34500000 0.51500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.51500000 ;
+        RECT 7.05500000 0.51500000 10.70500000 0.65500000 ;
+        RECT 7.05500000 0.65500000 7.34500000 0.73000000 ;
+        RECT 10.41500000 0.65500000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+    END
+  END A
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    END
+  END B
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.09 ) ( 11.52 3.245 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.09 ) ;
+      RECT ( 3.675 2.83 ) ( 4.005 2.91 ) ;
+      RECT ( 3.675 2.66 ) ( 3.755 2.83 ) ;
+      RECT ( 3.925 2.66 ) ( 4.005 2.83 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 8.955 2.965 ) ( 9.285 3.09 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
+      RECT ( 6.315 2.83 ) ( 6.645 2.91 ) ;
+      RECT ( 3.675 2.58 ) ( 4.005 2.66 ) ;
+      RECT ( 6.315 2.66 ) ( 6.395 2.83 ) ;
+      RECT ( 6.565 2.66 ) ( 6.645 2.83 ) ;
+      RECT ( 8.955 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.285 2.965 ) ;
+      RECT ( 8.955 2.715 ) ( 9.285 2.795 ) ;
+      RECT ( 6.315 2.58 ) ( 6.645 2.66 ) ;
+      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 ( 1.755 2.425 ) ( 2.085 2.505 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
+      RECT ( 1.755 2.255 ) ( 1.835 2.425 ) ;
+      RECT ( 2.005 2.255 ) ( 2.085 2.425 ) ;
+      RECT ( 7.515 2.425 ) ( 7.845 2.505 ) ;
+      RECT ( 7.515 2.26 ) ( 7.595 2.425 ) ;
+      RECT ( 1.755 2.175 ) ( 2.085 2.255 ) ;
+      RECT ( 7.535 2.255 ) ( 7.595 2.26 ) ;
+      RECT ( 7.765 2.255 ) ( 7.845 2.425 ) ;
+      RECT ( 10.395 2.425 ) ( 10.725 2.505 ) ;
+      RECT ( 10.395 2.26 ) ( 10.475 2.425 ) ;
+      RECT ( 7.535 2.175 ) ( 7.845 2.255 ) ;
+      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.585 2.09 ) ;
+      RECT ( 1.275 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 2.005 ) ( 1.585 2.01 ) ;
+      RECT ( 1.835 2.01 ) ( 2.005 2.175 ) ;
+      RECT ( 1.525 1.84 ) ( 1.605 2.005 ) ;
+      RECT ( 1.275 1.76 ) ( 1.605 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.92 ) ( 1.605 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      RECT ( 1.835 0.75 ) ( 2.005 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 ( 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 ( 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 ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 4.235 1.21 ) ( 4.405 1.76 ) ;
+      RECT ( 3.275 1.155 ) ( 4.405 1.21 ) ;
+      RECT ( 7.115 1.155 ) ( 7.285 1.76 ) ;
+      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 ( 3.275 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 3.275 1.04 ) ( 4.235 1.075 ) ;
+      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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.655 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 3.275 0.67 ) ( 3.445 1.04 ) ;
+      RECT ( 4.155 0.92 ) ( 4.235 1.04 ) ;
+      RECT ( 4.175 0.905 ) ( 4.235 0.92 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.175 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.92 ) ( 7.365 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 0.92 ) ;
+      RECT ( 7.035 0.825 ) ( 7.345 0.905 ) ;
+      RECT ( 3.675 0.67 ) ( 4.005 0.75 ) ;
+      RECT ( 3.675 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.5 ) ( 4.005 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.675 0.42 ) ( 4.005 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 6.315 0.67 ) ( 6.645 0.75 ) ;
+      RECT ( 6.315 0.5 ) ( 6.395 0.67 ) ;
+      RECT ( 6.565 0.5 ) ( 6.645 0.67 ) ;
+      RECT ( 7.115 0.67 ) ( 7.285 0.825 ) ;
+      RECT ( 7.595 0.75 ) ( 7.765 1.445 ) ;
+      RECT ( 8.555 1.155 ) ( 8.725 1.76 ) ;
+      RECT ( 8.475 1.075 ) ( 8.805 1.155 ) ;
+      RECT ( 8.475 0.905 ) ( 8.555 1.075 ) ;
+      RECT ( 8.725 0.92 ) ( 8.805 1.075 ) ;
+      RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 0.92 ) ;
+      RECT ( 8.475 0.825 ) ( 8.785 0.905 ) ;
+      RECT ( 9.915 0.905 ) ( 9.995 1.075 ) ;
+      RECT ( 10.165 0.905 ) ( 10.245 1.075 ) ;
+      RECT ( 9.915 0.825 ) ( 10.245 0.905 ) ;
+      RECT ( 7.515 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 0.67 ) ;
+      RECT ( 6.315 0.42 ) ( 6.645 0.5 ) ;
+      RECT ( 7.515 0.42 ) ( 7.845 0.5 ) ;
+      RECT ( 8.955 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 10.415 0.67 ) ( 10.725 0.75 ) ;
+      RECT ( 10.415 0.655 ) ( 10.475 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 10.395 0.5 ) ( 10.475 0.655 ) ;
+      RECT ( 10.645 0.5 ) ( 10.725 0.67 ) ;
+      RECT ( 10.395 0.42 ) ( 10.725 0.5 ) ;
+      RECT ( 4.715 0.24 ) ( 4.885 0.42 ) ;
+      RECT ( 9.035 0.24 ) ( 9.205 0.42 ) ;
+      RECT ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 9.035 0.085 ) ;
+      RECT ( 9.205 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.09 ) ( 11.52 3.245 ) ;
+      RECT ( 8.975 2.965 ) ( 9.265 3.09 ) ;
+      RECT ( 3.695 2.83 ) ( 3.985 2.89 ) ;
+      RECT ( 3.695 2.66 ) ( 3.755 2.83 ) ;
+      RECT ( 3.925 2.815 ) ( 3.985 2.83 ) ;
+      RECT ( 6.335 2.83 ) ( 6.625 2.89 ) ;
+      RECT ( 6.335 2.815 ) ( 6.395 2.83 ) ;
+      RECT ( 3.925 2.675 ) ( 6.395 2.815 ) ;
+      RECT ( 3.925 2.66 ) ( 3.985 2.675 ) ;
+      RECT ( 3.695 2.6 ) ( 3.985 2.66 ) ;
+      RECT ( 6.335 2.66 ) ( 6.395 2.675 ) ;
+      RECT ( 6.565 2.66 ) ( 6.625 2.83 ) ;
+      RECT ( 8.975 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.265 2.965 ) ;
+      RECT ( 8.975 2.735 ) ( 9.265 2.795 ) ;
+      RECT ( 6.335 2.6 ) ( 6.625 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 ( 7.535 2.425 ) ( 7.825 2.485 ) ;
+      RECT ( 7.535 2.41 ) ( 7.595 2.425 ) ;
+      RECT ( 1.045 2.27 ) ( 7.595 2.41 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.27 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 2.255 ) ;
+      RECT ( 7.535 2.255 ) ( 7.595 2.27 ) ;
+      RECT ( 7.765 2.255 ) ( 7.825 2.425 ) ;
+      RECT ( 7.535 2.195 ) ( 7.825 2.255 ) ;
+      RECT ( 10.415 2.425 ) ( 10.705 2.485 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.425 ) ;
+      RECT ( 10.645 2.255 ) ( 10.705 2.425 ) ;
+      RECT ( 10.415 2.195 ) ( 10.705 2.255 ) ;
+      RECT ( 1.775 2.01 ) ( 2.065 2.07 ) ;
+      RECT ( 1.775 1.84 ) ( 1.835 2.01 ) ;
+      RECT ( 2.005 1.995 ) ( 2.065 2.01 ) ;
+      RECT ( 9.935 2.01 ) ( 10.225 2.07 ) ;
+      RECT ( 9.935 1.995 ) ( 9.995 2.01 ) ;
+      RECT ( 2.005 1.855 ) ( 9.995 1.995 ) ;
+      RECT ( 2.005 1.84 ) ( 2.065 1.855 ) ;
+      RECT ( 1.775 1.78 ) ( 2.065 1.84 ) ;
+      RECT ( 9.935 1.84 ) ( 9.995 1.855 ) ;
+      RECT ( 10.165 1.84 ) ( 10.225 2.01 ) ;
+      RECT ( 9.935 1.78 ) ( 10.225 1.84 ) ;
+      RECT ( 7.535 1.615 ) ( 7.825 1.675 ) ;
+      RECT ( 7.535 1.6 ) ( 7.595 1.615 ) ;
+      RECT ( 0.89 1.46 ) ( 7.595 1.6 ) ;
+      RECT ( 0.89 0.73 ) ( 1.03 1.46 ) ;
+      RECT ( 7.535 1.445 ) ( 7.595 1.46 ) ;
+      RECT ( 7.765 1.445 ) ( 7.825 1.615 ) ;
+      RECT ( 7.535 1.385 ) ( 7.825 1.445 ) ;
+      RECT ( 10.01 1.135 ) ( 10.15 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 1.06 ) ( 3.025 1.075 ) ;
+      RECT ( 8.495 1.075 ) ( 8.785 1.135 ) ;
+      RECT ( 8.495 1.06 ) ( 8.555 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 8.555 1.06 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 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.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 ( 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 ( 1.37 0.655 ) ( 1.51 0.845 ) ;
+      RECT ( 10.49 0.73 ) ( 10.63 2.195 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 0.67 ) ;
+      RECT ( 1.37 0.515 ) ( 3.275 0.655 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.515 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 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.335 0.67 ) ( 6.625 0.73 ) ;
+      RECT ( 6.335 0.655 ) ( 6.395 0.67 ) ;
+      RECT ( 3.925 0.515 ) ( 6.395 0.655 ) ;
+      RECT ( 3.925 0.5 ) ( 3.985 0.515 ) ;
+      RECT ( 3.695 0.44 ) ( 3.985 0.5 ) ;
+      RECT ( 6.335 0.5 ) ( 6.395 0.515 ) ;
+      RECT ( 6.565 0.5 ) ( 6.625 0.67 ) ;
+      RECT ( 6.335 0.44 ) ( 6.625 0.5 ) ;
+      RECT ( 7.055 0.67 ) ( 7.345 0.73 ) ;
+      RECT ( 7.055 0.5 ) ( 7.115 0.67 ) ;
+      RECT ( 7.285 0.655 ) ( 7.345 0.67 ) ;
+      RECT ( 10.415 0.67 ) ( 10.705 0.73 ) ;
+      RECT ( 10.415 0.655 ) ( 10.475 0.67 ) ;
+      RECT ( 7.285 0.515 ) ( 10.475 0.655 ) ;
+      RECT ( 7.285 0.5 ) ( 7.345 0.515 ) ;
+      RECT ( 7.055 0.44 ) ( 7.345 0.5 ) ;
+      RECT ( 10.415 0.5 ) ( 10.475 0.515 ) ;
+      RECT ( 10.645 0.5 ) ( 10.705 0.67 ) ;
+      RECT ( 10.415 0.44 ) ( 10.705 0.5 ) ;
+      RECT ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 9.035 0.085 ) ;
+      RECT ( 9.205 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+
+  end
+END ASYNC3
diff --git a/cells/lef/ASYNC3.lef.temp b/cells/lef/ASYNC3.lef.temp
new file mode 100644
index 0000000..4a12a8c
--- /dev/null
+++ b/cells/lef/ASYNC3.lef.temp
@@ -0,0 +1,98 @@
+MACRO ASYNC3
+ CLASS CORE ;
+ FOREIGN ASYNC3 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+        RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
+        RECT 1.77500000 1.78000000 2.06500000 1.85500000 ;
+        RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+        RECT 1.77500000 1.85500000 10.22500000 1.99500000 ;
+        RECT 1.77500000 1.99500000 2.06500000 2.07000000 ;
+        RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+    END
+  END CN
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.44000000 7.34500000 0.51500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.51500000 ;
+        RECT 7.05500000 0.51500000 10.70500000 0.65500000 ;
+        RECT 7.05500000 0.65500000 7.34500000 0.73000000 ;
+        RECT 10.41500000 0.65500000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+    END
+  END A
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    END
+  END B
+
+END ASYNC3
diff --git a/cells/lef/BUFX2.lef b/cells/lef/BUFX2.lef
index a306b76..47ab7b0 100644
--- a/cells/lef/BUFX2.lef
+++ b/cells/lef/BUFX2.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 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 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 4.320 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 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -36,18 +36,15 @@
     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 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 4.320 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 0.000 -0.240 4.320 0.240 ;
     END
   END VGND
@@ -68,6 +65,8 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.300 1.390 1.590 1.680 ;
+        RECT 1.370 1.140 1.510 1.390 ;
         RECT 1.300 0.850 1.590 1.140 ;
     END
   END A
@@ -76,25 +75,26 @@
         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 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 3.200 2.180 3.530 2.260 ;
+        RECT 0.560 2.180 0.890 2.260 ;
+        RECT 3.220 2.180 3.530 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.030 2.090 ;
+        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 1.360 1.160 1.530 1.760 ;
+        RECT 1.360 1.620 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 ;
-        RECT 1.280 0.830 1.610 0.910 ;
+        RECT 1.530 0.920 1.610 1.080 ;
         RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
         RECT 2.720 0.910 2.800 1.080 ;
         RECT 2.970 0.920 3.050 1.080 ;
         RECT 2.970 0.910 3.030 0.920 ;
@@ -103,6 +103,10 @@
         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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
         RECT 3.200 0.670 3.530 0.750 ;
         RECT 3.200 0.500 3.280 0.670 ;
         RECT 3.450 0.500 3.530 0.670 ;
diff --git a/cells/lef/BUFX2.lef.beforemagic b/cells/lef/BUFX2.lef.beforemagic
index 50e98e6..ba5e794 100644
--- a/cells/lef/BUFX2.lef.beforemagic
+++ b/cells/lef/BUFX2.lef.beforemagic
@@ -52,6 +52,8 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
     END
   END A
 
@@ -59,44 +61,37 @@
   OBS
     LAYER locali ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
       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.195 2.26 ) ( 3.275 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.26 ) ;
       RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
-      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 3.215 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 2.01 ) ( 3.045 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.965 1.84 ) ( 3.045 2.01 ) ;
       RECT ( 2.715 1.76 ) ( 3.045 1.84 ) ;
-      RECT ( 1.355 1.155 ) ( 1.525 1.76 ) ;
+      RECT ( 1.355 1.615 ) ( 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 ( 1.525 0.92 ) ( 1.605 1.075 ) ;
       RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
       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 ) ;
@@ -104,44 +99,28 @@
       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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.195 0.67 ) ( 3.525 0.75 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
       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 ) ;
@@ -158,6 +137,11 @@
       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.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 ( 1.37 1.135 ) ( 1.51 1.385 ) ;
       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 ) ;
@@ -171,26 +155,19 @@
       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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
       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 ( 1.85 0.24 ) ( 1.99 0.44 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
diff --git a/cells/lef/BUFX2.lef.temp b/cells/lef/BUFX2.lef.temp
index 8f7177b..15ea3d0 100644
--- a/cells/lef/BUFX2.lef.temp
+++ b/cells/lef/BUFX2.lef.temp
@@ -52,6 +52,8 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
     END
   END A
 
diff --git a/cells/lef/BUFX4.lef b/cells/lef/BUFX4.lef
index f7e81f6..b525c63 100644
--- a/cells/lef/BUFX4.lef
+++ b/cells/lef/BUFX4.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 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 ;
-        RECT 4.660 2.990 4.950 3.090 ;
-        RECT 4.660 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.950 2.990 ;
-        RECT 4.660 2.760 4.950 2.820 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 4.660 2.970 4.950 3.090 ;
+        RECT 4.660 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.950 2.970 ;
+        RECT 4.660 2.740 4.950 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 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 4.640 2.990 4.970 3.090 ;
-        RECT 4.640 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.970 2.990 ;
-        RECT 4.640 2.740 4.970 2.820 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,22 +40,20 @@
     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 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 4.660 0.670 4.950 0.730 ;
+        RECT 4.660 0.500 4.720 0.670 ;
+        RECT 4.890 0.500 4.950 0.670 ;
+        RECT 4.660 0.440 4.950 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 4.730 0.240 4.870 0.440 ;
         RECT 0.000 -0.240 5.760 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 4.640 0.510 4.970 0.590 ;
-        RECT 4.640 0.340 4.720 0.510 ;
-        RECT 4.890 0.340 4.970 0.510 ;
-        RECT 4.640 0.240 4.970 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -69,13 +63,7 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 3.700 2.410 3.990 2.490 ;
-        RECT 3.700 2.270 4.870 2.410 ;
-        RECT 3.700 2.200 3.990 2.270 ;
-        RECT 3.700 0.660 3.990 0.730 ;
-        RECT 4.730 0.660 4.870 2.270 ;
-        RECT 3.700 0.520 4.870 0.660 ;
-        RECT 3.700 0.440 3.990 0.520 ;
+        RECT 3.220 0.440 3.510 0.730 ;
     END
   END Y
   PIN A
@@ -84,83 +72,96 @@
     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
       LAYER li1 ;
+        RECT 4.640 2.970 4.970 3.050 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
         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 3.680 2.430 4.010 2.510 ;
-        RECT 3.680 2.260 3.760 2.430 ;
-        RECT 3.930 2.260 4.010 2.430 ;
-        RECT 3.680 2.180 4.010 2.260 ;
+        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 3.200 2.180 3.530 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 4.180 2.010 4.490 2.090 ;
+        RECT 2.720 2.010 3.030 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 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.920 1.610 1.080 ;
+        RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        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 3.280 0.750 3.450 2.180 ;
+        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 1.360 1.160 1.530 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 ;
-        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 4.160 1.080 4.490 1.160 ;
-        RECT 4.160 0.920 4.240 1.080 ;
-        RECT 2.720 0.830 3.050 0.910 ;
-        RECT 4.180 0.910 4.240 0.920 ;
-        RECT 4.410 0.910 4.490 1.080 ;
-        RECT 4.180 0.830 4.490 0.910 ;
+        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 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 3.680 0.670 4.010 0.750 ;
-        RECT 3.680 0.500 3.760 0.670 ;
-        RECT 3.930 0.500 4.010 0.670 ;
-        RECT 3.680 0.420 4.010 0.500 ;
+        RECT 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 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 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
         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 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.970 1.840 3.030 2.010 ;
-        RECT 2.740 1.780 3.030 1.840 ;
+        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 2.000 3.030 2.010 ;
         RECT 4.180 2.010 4.470 2.070 ;
-        RECT 4.180 1.840 4.240 2.010 ;
+        RECT 4.180 2.000 4.240 2.010 ;
+        RECT 2.970 1.860 4.240 2.000 ;
+        RECT 2.970 1.840 3.030 1.860 ;
+        RECT 2.740 1.780 3.030 1.840 ;
+        RECT 4.180 1.840 4.240 1.860 ;
         RECT 4.410 1.840 4.470 2.010 ;
         RECT 4.180 1.780 4.470 1.840 ;
         RECT 2.810 1.140 2.950 1.780 ;
         RECT 4.250 1.140 4.390 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.970 1.060 3.030 1.080 ;
-        RECT 4.180 1.080 4.470 1.140 ;
-        RECT 4.180 1.060 4.240 1.080 ;
-        RECT 2.970 0.920 4.240 1.060 ;
-        RECT 2.970 0.910 3.030 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 4.180 0.910 4.240 0.920 ;
+        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 0.580 0.670 0.870 0.730 ;
diff --git a/cells/lef/BUFX4.lef.beforemagic b/cells/lef/BUFX4.lef.beforemagic
index 9cdbd98..3a6715f 100644
--- a/cells/lef/BUFX4.lef.beforemagic
+++ b/cells/lef/BUFX4.lef.beforemagic
@@ -38,13 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
-        RECT 3.69500000 0.51500000 4.87000000 0.65500000 ;
-        RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
-        RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
-        RECT 4.73000000 0.65500000 4.87000000 2.27000000 ;
-        RECT 3.69500000 2.27000000 4.87000000 2.41000000 ;
-        RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
     END
   END Y
 
@@ -55,9 +49,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
 
@@ -65,191 +57,144 @@
   OBS
     LAYER locali ;
       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 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.215 ) ( 5.76 3.245 ) ;
+      RECT ( 0 3.09 ) ( 4.465 3.215 ) ;
+      RECT ( 5.135 3.09 ) ( 5.76 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.045 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
       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 ( 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.045 2.09 ) ;
+      RECT ( 2.715 2.01 ) ( 3.025 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.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 ( 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.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 ( 1.525 0.92 ) ( 1.605 1.075 ) ;
       RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
       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 ( 3.275 0.75 ) ( 3.445 2.175 ) ;
+      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 ( 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 ( 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 4.655 2.965 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.945 2.965 ) ;
+      RECT ( 4.655 2.735 ) ( 4.945 2.795 ) ;
       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 ( 0.65 1.995 ) ( 0.79 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 ( 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.995 ) ( 3.025 2.01 ) ;
       RECT ( 4.175 2.01 ) ( 4.465 2.07 ) ;
-      RECT ( 4.175 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.175 1.995 ) ( 4.235 2.01 ) ;
+      RECT ( 2.965 1.855 ) ( 4.235 1.995 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 1.855 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 1.855 ) ;
       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.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 ( 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 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.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.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 0.905 ) ( 4.235 0.92 ) ;
+      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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      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 ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 4.73 0.24 ) ( 4.87 0.44 ) ;
       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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/BUFX4.lef.temp b/cells/lef/BUFX4.lef.temp
index e445ba4..cbd2f02 100644
--- a/cells/lef/BUFX4.lef.temp
+++ b/cells/lef/BUFX4.lef.temp
@@ -38,13 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
-        RECT 3.69500000 0.51500000 4.87000000 0.65500000 ;
-        RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
-        RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
-        RECT 4.73000000 0.65500000 4.87000000 2.27000000 ;
-        RECT 3.69500000 2.27000000 4.87000000 2.41000000 ;
-        RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
     END
   END Y
 
@@ -55,9 +49,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/CLKBUF1.lef b/cells/lef/CLKBUF1.lef
index db3d232..eee5239 100644
--- a/cells/lef/CLKBUF1.lef
+++ b/cells/lef/CLKBUF1.lef
@@ -16,50 +16,46 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 12.960 3.570 ;
-        RECT 0.580 2.990 0.870 3.090 ;
-        RECT 0.580 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.870 2.990 ;
-        RECT 0.580 2.760 0.870 2.820 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
-        RECT 6.100 2.990 6.390 3.090 ;
-        RECT 6.100 2.820 6.160 2.990 ;
-        RECT 6.330 2.820 6.390 2.990 ;
-        RECT 6.100 2.760 6.390 2.820 ;
-        RECT 8.980 2.990 9.270 3.090 ;
-        RECT 8.980 2.820 9.040 2.990 ;
-        RECT 9.210 2.820 9.270 2.990 ;
-        RECT 8.980 2.760 9.270 2.820 ;
-        RECT 11.860 2.990 12.150 3.090 ;
-        RECT 11.860 2.820 11.920 2.990 ;
-        RECT 12.090 2.820 12.150 2.990 ;
-        RECT 11.860 2.760 12.150 2.820 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
+        RECT 6.100 2.970 6.390 3.090 ;
+        RECT 6.100 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.390 2.970 ;
+        RECT 6.100 2.740 6.390 2.800 ;
+        RECT 8.980 2.970 9.270 3.090 ;
+        RECT 8.980 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.270 2.970 ;
+        RECT 8.980 2.740 9.270 2.800 ;
+        RECT 11.860 2.970 12.150 3.090 ;
+        RECT 11.860 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.150 2.970 ;
+        RECT 11.860 2.740 12.150 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 12.960 3.570 ;
-        RECT 0.560 2.990 0.890 3.090 ;
-        RECT 0.560 2.820 0.640 2.990 ;
-        RECT 0.810 2.820 0.890 2.990 ;
-        RECT 0.560 2.740 0.890 2.820 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
-        RECT 6.080 2.990 6.410 3.090 ;
-        RECT 6.080 2.820 6.160 2.990 ;
-        RECT 6.330 2.820 6.410 2.990 ;
-        RECT 6.080 2.740 6.410 2.820 ;
-        RECT 8.960 2.990 9.290 3.090 ;
-        RECT 8.960 2.820 9.040 2.990 ;
-        RECT 9.210 2.820 9.290 2.990 ;
-        RECT 8.960 2.740 9.290 2.820 ;
-        RECT 11.840 2.990 12.170 3.090 ;
-        RECT 11.840 2.820 11.920 2.990 ;
-        RECT 12.090 2.820 12.170 2.990 ;
-        RECT 11.840 2.740 12.170 2.820 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
+        RECT 6.080 2.970 6.410 3.090 ;
+        RECT 6.080 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.410 2.970 ;
+        RECT 6.080 2.720 6.410 2.800 ;
+        RECT 8.960 2.970 9.290 3.090 ;
+        RECT 8.960 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.290 2.970 ;
+        RECT 8.960 2.720 9.290 2.800 ;
+        RECT 11.840 2.970 12.170 3.090 ;
+        RECT 11.840 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.170 2.970 ;
+        RECT 11.840 2.720 12.170 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -68,50 +64,35 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 0.510 0.870 0.570 ;
-        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 6.100 0.510 6.390 0.570 ;
-        RECT 6.100 0.340 6.160 0.510 ;
-        RECT 6.330 0.340 6.390 0.510 ;
-        RECT 6.100 0.240 6.390 0.340 ;
-        RECT 8.980 0.510 9.270 0.570 ;
-        RECT 8.980 0.340 9.040 0.510 ;
-        RECT 9.210 0.340 9.270 0.510 ;
-        RECT 8.980 0.240 9.270 0.340 ;
-        RECT 11.860 0.510 12.150 0.570 ;
-        RECT 11.860 0.340 11.920 0.510 ;
-        RECT 12.090 0.340 12.150 0.510 ;
-        RECT 11.860 0.240 12.150 0.340 ;
+        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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 6.100 0.670 6.390 0.730 ;
+        RECT 6.100 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.390 0.670 ;
+        RECT 6.100 0.440 6.390 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 ;
+        RECT 11.860 0.670 12.150 0.730 ;
+        RECT 11.860 0.500 11.920 0.670 ;
+        RECT 12.090 0.500 12.150 0.670 ;
+        RECT 11.860 0.440 12.150 0.500 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 9.050 0.240 9.190 0.440 ;
+        RECT 11.930 0.240 12.070 0.440 ;
         RECT 0.000 -0.240 12.960 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 0.560 0.510 0.890 0.590 ;
-        RECT 0.560 0.340 0.640 0.510 ;
-        RECT 0.810 0.340 0.890 0.510 ;
-        RECT 0.560 0.240 0.890 0.340 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
-        RECT 6.080 0.510 6.410 0.590 ;
-        RECT 6.080 0.340 6.160 0.510 ;
-        RECT 6.330 0.340 6.410 0.510 ;
-        RECT 6.080 0.240 6.410 0.340 ;
-        RECT 8.960 0.510 9.290 0.590 ;
-        RECT 8.960 0.340 9.040 0.510 ;
-        RECT 9.210 0.340 9.290 0.510 ;
-        RECT 8.960 0.240 9.290 0.340 ;
-        RECT 11.840 0.510 12.170 0.590 ;
-        RECT 11.840 0.340 11.920 0.510 ;
-        RECT 12.090 0.340 12.170 0.510 ;
-        RECT 11.840 0.240 12.170 0.340 ;
         RECT 0.000 -0.240 12.960 0.240 ;
     END
   END VGND
@@ -121,7 +102,9 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 10.420 0.440 10.710 0.730 ;
+        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 ;
     END
   END Y
   PIN A
@@ -136,30 +119,30 @@
         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
   OBS
       LAYER li1 ;
+        RECT 3.200 2.970 3.530 3.050 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
         RECT 1.760 2.430 2.090 2.510 ;
         RECT 1.760 2.260 1.840 2.430 ;
         RECT 2.010 2.260 2.090 2.430 ;
+        RECT 1.780 2.180 2.090 2.260 ;
         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 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 4.640 2.180 4.970 2.260 ;
+        RECT 7.540 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 ;
@@ -169,19 +152,19 @@
         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 2.010 4.470 2.090 ;
+        RECT 5.600 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 ;
-        RECT 7.040 2.010 7.350 2.090 ;
-        RECT 8.480 2.010 8.810 2.090 ;
+        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 ;
@@ -189,82 +172,98 @@
         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 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 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 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 2.970 0.920 3.050 1.080 ;
         RECT 4.160 1.080 4.490 1.160 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
         RECT 4.160 0.910 4.240 1.080 ;
-        RECT 4.410 0.920 4.490 1.080 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
         RECT 5.600 1.080 5.930 1.160 ;
-        RECT 4.410 0.910 4.470 0.920 ;
-        RECT 4.160 0.830 4.470 0.910 ;
         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 5.850 0.920 5.930 1.080 ;
         RECT 7.040 1.080 7.370 1.160 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.600 0.830 5.910 0.910 ;
         RECT 7.040 0.910 7.120 1.080 ;
         RECT 7.290 0.920 7.370 1.080 ;
         RECT 8.480 1.080 8.810 1.160 ;
         RECT 7.290 0.910 7.350 0.920 ;
         RECT 7.040 0.830 7.350 0.910 ;
         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 8.730 0.920 8.810 1.080 ;
         RECT 9.920 1.080 10.250 1.160 ;
+        RECT 8.730 0.910 8.790 0.920 ;
+        RECT 8.480 0.830 8.790 0.910 ;
         RECT 9.920 0.910 10.000 1.080 ;
         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 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 10.480 0.750 10.650 1.310 ;
         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 ;
-        RECT 11.360 0.830 11.690 0.910 ;
+        RECT 11.610 0.920 11.690 1.080 ;
+        RECT 11.610 0.910 11.670 0.920 ;
+        RECT 11.360 0.830 11.670 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 1.780 0.670 2.090 0.750 ;
         RECT 1.780 0.660 1.840 0.670 ;
+        RECT 0.560 0.420 0.890 0.500 ;
         RECT 1.760 0.500 1.840 0.660 ;
         RECT 2.010 0.500 2.090 0.670 ;
         RECT 1.760 0.420 2.090 0.500 ;
-        RECT 4.640 0.670 4.970 0.750 ;
-        RECT 4.640 0.500 4.720 0.670 ;
+        RECT 3.200 0.670 3.530 0.750 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 4.660 0.670 4.970 0.750 ;
+        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 4.640 0.500 4.720 0.660 ;
         RECT 4.890 0.500 4.970 0.670 ;
         RECT 4.640 0.420 4.970 0.500 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 6.080 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
         RECT 7.520 0.670 7.850 0.750 ;
         RECT 7.520 0.500 7.600 0.670 ;
         RECT 7.770 0.500 7.850 0.670 ;
         RECT 7.520 0.420 7.850 0.500 ;
+        RECT 8.960 0.670 9.290 0.750 ;
+        RECT 8.960 0.500 9.040 0.670 ;
+        RECT 9.210 0.500 9.290 0.670 ;
+        RECT 8.960 0.420 9.290 0.500 ;
         RECT 10.400 0.670 10.730 0.750 ;
         RECT 10.400 0.500 10.480 0.670 ;
         RECT 10.650 0.500 10.730 0.670 ;
         RECT 10.400 0.420 10.730 0.500 ;
+        RECT 11.840 0.670 12.170 0.750 ;
+        RECT 11.840 0.500 11.920 0.670 ;
+        RECT 12.090 0.500 12.170 0.670 ;
+        RECT 11.840 0.420 12.170 0.500 ;
       LAYER met1 ;
-        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 4.250 2.680 5.830 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 ;
@@ -273,18 +272,6 @@
         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 ;
@@ -293,56 +280,58 @@
         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 0.730 4.870 1.860 ;
-        RECT 7.060 1.840 7.120 1.860 ;
+        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 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 0.910 7.120 1.080 ;
+        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.290 0.910 7.350 1.080 ;
         RECT 7.060 0.850 7.350 0.910 ;
-        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 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 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 11.380 1.840 11.440 1.860 ;
+        RECT 11.380 2.010 11.670 2.070 ;
+        RECT 11.380 1.840 11.440 2.010 ;
         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 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 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 0.910 11.440 1.080 ;
+        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.850 10.230 0.910 ;
+        RECT 11.380 0.910 11.440 0.920 ;
         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 d3da44a..4a8eb08 100644
--- a/cells/lef/CLKBUF1.lef.beforemagic
+++ b/cells/lef/CLKBUF1.lef.beforemagic
@@ -38,7 +38,9 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        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 ;
     END
   END Y
 
@@ -50,9 +52,7 @@
      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 ;
@@ -65,73 +65,47 @@
   OBS
     LAYER locali ;
       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 ( 0 3.245 ) ( 6.155 3.415 ) ;
+      RECT ( 6.325 3.245 ) ( 12.96 3.415 ) ;
+      RECT ( 0 3.215 ) ( 12.96 3.245 ) ;
+      RECT ( 0 3.09 ) ( 3.025 3.215 ) ;
+      RECT ( 3.695 3.09 ) ( 12.96 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.045 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
+      RECT ( 6.075 2.965 ) ( 6.405 3.09 ) ;
+      RECT ( 6.075 2.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.405 2.965 ) ;
+      RECT ( 6.075 2.715 ) ( 6.405 2.795 ) ;
+      RECT ( 8.955 2.965 ) ( 9.285 3.09 ) ;
+      RECT ( 8.955 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.285 2.965 ) ;
+      RECT ( 8.955 2.715 ) ( 9.285 2.795 ) ;
+      RECT ( 11.835 2.965 ) ( 12.165 3.09 ) ;
+      RECT ( 11.835 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.165 2.965 ) ;
+      RECT ( 11.835 2.715 ) ( 12.165 2.795 ) ;
       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.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.255 ) ( 4.715 2.425 ) ;
       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.515 2.26 ) ( 7.595 2.425 ) ;
+      RECT ( 4.635 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 7.535 2.255 ) ( 7.595 2.26 ) ;
       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 ( 7.535 2.175 ) ( 7.845 2.255 ) ;
       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 ) ;
@@ -143,20 +117,20 @@
       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 2.01 ) ( 4.465 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 ( 4.405 2.005 ) ( 4.465 2.01 ) ;
       RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.005 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
       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 2.01 ) ( 7.365 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.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 ) ;
@@ -164,159 +138,109 @@
       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 ( 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 ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 5.675 1.155 ) ( 5.845 1.76 ) ;
+      RECT ( 8.555 1.155 ) ( 8.725 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 ( 2.965 0.92 ) ( 3.045 1.075 ) ;
       RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
       RECT ( 4.155 0.905 ) ( 4.235 1.075 ) ;
-      RECT ( 4.405 0.92 ) ( 4.485 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 ( 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 ( 5.845 0.92 ) ( 5.925 1.075 ) ;
       RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.595 0.825 ) ( 5.905 0.905 ) ;
       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 ( 8.725 0.92 ) ( 8.805 1.075 ) ;
       RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 0.92 ) ;
+      RECT ( 8.475 0.825 ) ( 8.785 0.905 ) ;
       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 ( 10.475 0.75 ) ( 10.645 1.31 ) ;
       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 ( 11.605 0.92 ) ( 11.685 1.075 ) ;
+      RECT ( 11.605 0.905 ) ( 11.665 0.92 ) ;
+      RECT ( 11.355 0.825 ) ( 11.665 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 ( 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 ( 0.555 0.42 ) ( 0.885 0.5 ) ;
       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 ( 3.195 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.655 ) ;
       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 ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      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 ( 7.515 0.67 ) ( 7.845 0.75 ) ;
       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 ( 8.955 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 10.395 0.67 ) ( 10.725 0.75 ) ;
       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 ( 11.835 0.67 ) ( 12.165 0.75 ) ;
+      RECT ( 11.835 0.5 ) ( 11.915 0.67 ) ;
+      RECT ( 12.085 0.5 ) ( 12.165 0.67 ) ;
+      RECT ( 11.835 0.42 ) ( 12.165 0.5 ) ;
       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.085 ) ( 6.155 0.085 ) ;
+      RECT ( 6.325 -0.085 ) ( 12.96 0.085 ) ;
       RECT ( 0 -0.24 ) ( 12.96 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 6.155 3.415 ) ;
+      RECT ( 6.325 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 ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
       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 ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 6.095 2.965 ) ( 6.385 3.09 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
       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 ) ;
@@ -333,18 +257,12 @@
       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.675 ) ( 5.83 2.815 ) ;
+      RECT ( 6.095 2.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.385 2.965 ) ;
+      RECT ( 8.975 2.965 ) ( 9.265 3.09 ) ;
+      RECT ( 6.095 2.735 ) ( 6.385 2.795 ) ;
       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 ) ;
@@ -357,30 +275,6 @@
       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 ) ;
@@ -389,123 +283,116 @@
       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 ( 4.73 1.06 ) ( 4.87 2.195 ) ;
+      RECT ( 5.69 2.07 ) ( 5.83 2.675 ) ;
+      RECT ( 7.13 2.675 ) ( 8.71 2.815 ) ;
+      RECT ( 8.975 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.265 2.965 ) ;
+      RECT ( 8.975 2.735 ) ( 9.265 2.795 ) ;
+      RECT ( 11.855 2.965 ) ( 12.145 3.09 ) ;
+      RECT ( 11.855 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.145 2.965 ) ;
+      RECT ( 11.855 2.735 ) ( 12.145 2.795 ) ;
+      RECT ( 7.13 2.07 ) ( 7.27 2.675 ) ;
+      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 ( 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 ( 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.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.055 1.06 ) ( 7.115 1.075 ) ;
+      RECT ( 4.73 0.92 ) ( 7.115 1.06 ) ;
+      RECT ( 4.73 0.73 ) ( 4.87 0.92 ) ;
+      RECT ( 7.055 0.905 ) ( 7.115 0.92 ) ;
       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 ( 7.61 1.06 ) ( 7.75 2.195 ) ;
+      RECT ( 8.57 2.07 ) ( 8.71 2.675 ) ;
+      RECT ( 10.415 2.425 ) ( 10.705 2.485 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.425 ) ;
+      RECT ( 10.645 2.255 ) ( 10.705 2.425 ) ;
+      RECT ( 10.415 2.195 ) ( 10.705 2.255 ) ;
+      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 ( 9.935 2.01 ) ( 10.225 2.07 ) ;
+      RECT ( 9.935 1.84 ) ( 9.995 2.01 ) ;
+      RECT ( 10.165 1.84 ) ( 10.225 2.01 ) ;
       RECT ( 9.935 1.78 ) ( 10.225 1.84 ) ;
-      RECT ( 11.375 1.84 ) ( 11.435 1.855 ) ;
+      RECT ( 10.01 1.135 ) ( 10.15 1.78 ) ;
+      RECT ( 10.49 1.54 ) ( 10.63 2.195 ) ;
+      RECT ( 11.375 2.01 ) ( 11.665 2.07 ) ;
+      RECT ( 11.375 1.84 ) ( 11.435 2.01 ) ;
       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 ( 10.415 1.48 ) ( 10.705 1.54 ) ;
+      RECT ( 10.415 1.31 ) ( 10.475 1.48 ) ;
+      RECT ( 10.645 1.31 ) ( 10.705 1.48 ) ;
+      RECT ( 10.415 1.25 ) ( 10.705 1.31 ) ;
       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 ( 9.935 1.06 ) ( 9.995 1.075 ) ;
+      RECT ( 7.61 0.92 ) ( 9.995 1.06 ) ;
+      RECT ( 7.61 0.73 ) ( 7.75 0.92 ) ;
+      RECT ( 9.935 0.905 ) ( 9.995 0.92 ) ;
+      RECT ( 10.165 1.06 ) ( 10.225 1.075 ) ;
       RECT ( 11.375 1.075 ) ( 11.665 1.135 ) ;
-      RECT ( 11.375 0.905 ) ( 11.435 1.075 ) ;
+      RECT ( 11.375 1.06 ) ( 11.435 1.075 ) ;
+      RECT ( 10.165 0.92 ) ( 11.435 1.06 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 0.92 ) ;
+      RECT ( 9.935 0.845 ) ( 10.225 0.905 ) ;
+      RECT ( 11.375 0.905 ) ( 11.435 0.92 ) ;
       RECT ( 11.605 0.905 ) ( 11.665 1.075 ) ;
       RECT ( 11.375 0.845 ) ( 11.665 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 ( 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 ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
       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 ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.67 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 7.535 0.67 ) ( 7.825 0.73 ) ;
       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 ( 8.975 0.67 ) ( 9.265 0.73 ) ;
+      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 ( 11.855 0.67 ) ( 12.145 0.73 ) ;
+      RECT ( 11.855 0.5 ) ( 11.915 0.67 ) ;
+      RECT ( 12.085 0.5 ) ( 12.145 0.67 ) ;
+      RECT ( 11.855 0.44 ) ( 12.145 0.5 ) ;
+      RECT ( 0.65 0.24 ) ( 0.79 0.44 ) ;
+      RECT ( 3.29 0.24 ) ( 3.43 0.44 ) ;
+      RECT ( 6.17 0.24 ) ( 6.31 0.44 ) ;
+      RECT ( 9.05 0.24 ) ( 9.19 0.44 ) ;
+      RECT ( 11.93 0.24 ) ( 12.07 0.44 ) ;
       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.085 ) ( 6.155 0.085 ) ;
+      RECT ( 6.325 -0.085 ) ( 12.96 0.085 ) ;
       RECT ( 0 -0.24 ) ( 12.96 -0.085 ) ;
 
   end
diff --git a/cells/lef/CLKBUF1.lef.temp b/cells/lef/CLKBUF1.lef.temp
index 9be703c..89d0d9e 100644
--- a/cells/lef/CLKBUF1.lef.temp
+++ b/cells/lef/CLKBUF1.lef.temp
@@ -38,7 +38,9 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        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 ;
     END
   END Y
 
@@ -50,9 +52,7 @@
      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/CLKBUF2.lef b/cells/lef/CLKBUF2.lef
new file mode 100644
index 0000000..6e0078e
--- /dev/null
+++ b/cells/lef/CLKBUF2.lef
@@ -0,0 +1,534 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO CLKBUF2
+  CLASS CORE ;
+  FOREIGN CLKBUF2 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 18.720 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 18.720 3.570 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
+        RECT 6.100 2.970 6.390 3.090 ;
+        RECT 6.100 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.390 2.970 ;
+        RECT 6.100 2.740 6.390 2.800 ;
+        RECT 8.980 2.970 9.270 3.090 ;
+        RECT 8.980 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.270 2.970 ;
+        RECT 8.980 2.740 9.270 2.800 ;
+        RECT 11.860 2.970 12.150 3.090 ;
+        RECT 11.860 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.150 2.970 ;
+        RECT 11.860 2.740 12.150 2.800 ;
+        RECT 14.740 2.970 15.030 3.090 ;
+        RECT 14.740 2.800 14.800 2.970 ;
+        RECT 14.970 2.800 15.030 2.970 ;
+        RECT 14.740 2.740 15.030 2.800 ;
+        RECT 17.620 2.970 17.910 3.090 ;
+        RECT 17.620 2.800 17.680 2.970 ;
+        RECT 17.850 2.800 17.910 2.970 ;
+        RECT 17.620 2.740 17.910 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 18.720 3.570 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
+        RECT 6.080 2.970 6.410 3.090 ;
+        RECT 6.080 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.410 2.970 ;
+        RECT 6.080 2.720 6.410 2.800 ;
+        RECT 8.960 2.970 9.290 3.090 ;
+        RECT 8.960 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.290 2.970 ;
+        RECT 8.960 2.720 9.290 2.800 ;
+        RECT 11.840 2.970 12.170 3.090 ;
+        RECT 11.840 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.170 2.970 ;
+        RECT 11.840 2.720 12.170 2.800 ;
+        RECT 14.720 2.970 15.050 3.090 ;
+        RECT 14.720 2.800 14.800 2.970 ;
+        RECT 14.970 2.800 15.050 2.970 ;
+        RECT 14.720 2.720 15.050 2.800 ;
+        RECT 17.600 2.970 17.930 3.090 ;
+        RECT 17.600 2.800 17.680 2.970 ;
+        RECT 17.850 2.800 17.930 2.970 ;
+        RECT 17.600 2.720 17.930 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 6.100 0.670 6.390 0.730 ;
+        RECT 6.100 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.390 0.670 ;
+        RECT 6.100 0.440 6.390 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 ;
+        RECT 11.860 0.670 12.150 0.730 ;
+        RECT 11.860 0.500 11.920 0.670 ;
+        RECT 12.090 0.500 12.150 0.670 ;
+        RECT 11.860 0.440 12.150 0.500 ;
+        RECT 14.740 0.670 15.030 0.730 ;
+        RECT 14.740 0.500 14.800 0.670 ;
+        RECT 14.970 0.500 15.030 0.670 ;
+        RECT 14.740 0.440 15.030 0.500 ;
+        RECT 17.620 0.670 17.910 0.730 ;
+        RECT 17.620 0.500 17.680 0.670 ;
+        RECT 17.850 0.500 17.910 0.670 ;
+        RECT 17.620 0.440 17.910 0.500 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 9.050 0.240 9.190 0.440 ;
+        RECT 11.930 0.240 12.070 0.440 ;
+        RECT 14.810 0.240 14.950 0.440 ;
+        RECT 17.690 0.240 17.830 0.440 ;
+        RECT 0.000 -0.240 18.720 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 -0.240 18.720 0.240 ;
+    END
+  END VGND
+  PIN Y
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 16.180 0.440 16.470 0.730 ;
+    END
+  END Y
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.370 2.680 2.950 2.820 ;
+        RECT 1.370 2.070 1.510 2.680 ;
+        RECT 2.810 2.070 2.950 2.680 ;
+        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 1.300 0.850 1.590 1.140 ;
+    END
+  END A
+  OBS
+      LAYER li1 ;
+        RECT 3.200 2.970 3.530 3.050 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
+        RECT 1.760 2.430 2.090 2.510 ;
+        RECT 1.760 2.260 1.840 2.430 ;
+        RECT 2.010 2.260 2.090 2.430 ;
+        RECT 1.780 2.180 2.090 2.260 ;
+        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 4.640 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.540 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 10.420 2.180 10.730 2.260 ;
+        RECT 11.440 2.090 11.610 2.660 ;
+        RECT 13.280 2.430 13.610 2.510 ;
+        RECT 13.280 2.260 13.360 2.430 ;
+        RECT 13.530 2.260 13.610 2.430 ;
+        RECT 13.300 2.180 13.610 2.260 ;
+        RECT 14.320 2.090 14.490 2.660 ;
+        RECT 16.160 2.430 16.490 2.510 ;
+        RECT 16.160 2.260 16.240 2.430 ;
+        RECT 16.410 2.260 16.490 2.430 ;
+        RECT 16.160 2.180 16.490 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.470 2.090 ;
+        RECT 5.600 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 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 9.920 2.010 10.250 2.090 ;
+        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 12.800 2.010 13.130 2.090 ;
+        RECT 12.800 1.840 12.880 2.010 ;
+        RECT 13.050 1.840 13.130 2.010 ;
+        RECT 12.800 1.760 13.130 1.840 ;
+        RECT 14.240 2.010 14.570 2.090 ;
+        RECT 14.240 1.840 14.320 2.010 ;
+        RECT 14.490 1.840 14.570 2.010 ;
+        RECT 14.240 1.760 14.570 1.840 ;
+        RECT 15.680 2.010 15.990 2.090 ;
+        RECT 15.680 1.840 15.760 2.010 ;
+        RECT 15.930 1.840 16.010 2.010 ;
+        RECT 15.680 1.760 16.010 1.840 ;
+        RECT 2.800 1.160 2.970 1.760 ;
+        RECT 5.680 1.620 5.850 1.760 ;
+        RECT 8.560 1.620 8.730 1.760 ;
+        RECT 11.440 1.620 11.610 1.760 ;
+        RECT 14.320 1.620 14.490 1.760 ;
+        RECT 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        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 5.600 1.080 5.930 1.160 ;
+        RECT 4.410 0.910 4.470 0.920 ;
+        RECT 4.160 0.830 4.470 0.910 ;
+        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.920 7.370 1.080 ;
+        RECT 8.480 1.080 8.810 1.160 ;
+        RECT 7.290 0.910 7.350 0.920 ;
+        RECT 7.040 0.830 7.350 0.910 ;
+        RECT 8.480 0.910 8.560 1.080 ;
+        RECT 8.730 0.920 8.810 1.080 ;
+        RECT 9.920 1.080 10.250 1.160 ;
+        RECT 8.730 0.910 8.790 0.920 ;
+        RECT 8.480 0.830 8.790 0.910 ;
+        RECT 9.920 0.910 10.000 1.080 ;
+        RECT 10.170 0.920 10.250 1.080 ;
+        RECT 11.360 1.080 11.690 1.160 ;
+        RECT 10.170 0.910 10.230 0.920 ;
+        RECT 9.920 0.830 10.230 0.910 ;
+        RECT 11.360 0.910 11.440 1.080 ;
+        RECT 11.610 0.910 11.690 1.080 ;
+        RECT 11.360 0.830 11.690 0.910 ;
+        RECT 12.800 1.080 13.130 1.160 ;
+        RECT 12.800 0.910 12.880 1.080 ;
+        RECT 13.050 0.920 13.130 1.080 ;
+        RECT 14.240 1.080 14.570 1.160 ;
+        RECT 13.050 0.910 13.110 0.920 ;
+        RECT 12.800 0.830 13.110 0.910 ;
+        RECT 14.240 0.910 14.320 1.080 ;
+        RECT 14.490 0.920 14.570 1.080 ;
+        RECT 15.680 1.080 16.010 1.160 ;
+        RECT 14.490 0.910 14.550 0.920 ;
+        RECT 14.240 0.830 14.550 0.910 ;
+        RECT 15.680 0.910 15.760 1.080 ;
+        RECT 15.930 0.920 16.010 1.080 ;
+        RECT 15.930 0.910 15.990 0.920 ;
+        RECT 15.680 0.830 15.990 0.910 ;
+        RECT 16.240 0.750 16.410 2.180 ;
+        RECT 17.120 2.010 17.450 2.090 ;
+        RECT 17.120 1.840 17.200 2.010 ;
+        RECT 17.370 1.840 17.450 2.010 ;
+        RECT 17.120 1.760 17.450 1.840 ;
+        RECT 17.120 1.080 17.450 1.160 ;
+        RECT 17.120 0.910 17.200 1.080 ;
+        RECT 17.370 0.910 17.450 1.080 ;
+        RECT 17.120 0.830 17.450 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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 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 6.100 0.670 6.410 0.750 ;
+        RECT 6.100 0.660 6.160 0.670 ;
+        RECT 4.640 0.420 4.970 0.500 ;
+        RECT 6.080 0.500 6.160 0.660 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+        RECT 7.520 0.670 7.850 0.750 ;
+        RECT 7.520 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.850 0.670 ;
+        RECT 7.520 0.420 7.850 0.500 ;
+        RECT 8.960 0.670 9.290 0.750 ;
+        RECT 8.960 0.500 9.040 0.670 ;
+        RECT 9.210 0.500 9.290 0.670 ;
+        RECT 8.960 0.420 9.290 0.500 ;
+        RECT 10.400 0.670 10.730 0.750 ;
+        RECT 10.400 0.500 10.480 0.670 ;
+        RECT 10.650 0.500 10.730 0.670 ;
+        RECT 11.860 0.670 12.170 0.750 ;
+        RECT 11.860 0.660 11.920 0.670 ;
+        RECT 10.400 0.420 10.730 0.500 ;
+        RECT 11.840 0.500 11.920 0.660 ;
+        RECT 12.090 0.500 12.170 0.670 ;
+        RECT 11.840 0.420 12.170 0.500 ;
+        RECT 13.280 0.670 13.610 0.750 ;
+        RECT 13.280 0.500 13.360 0.670 ;
+        RECT 13.530 0.500 13.610 0.670 ;
+        RECT 13.280 0.420 13.610 0.500 ;
+        RECT 14.720 0.670 15.050 0.750 ;
+        RECT 14.720 0.500 14.800 0.670 ;
+        RECT 14.970 0.500 15.050 0.670 ;
+        RECT 14.720 0.420 15.050 0.500 ;
+        RECT 16.160 0.670 16.490 0.750 ;
+        RECT 16.160 0.500 16.240 0.670 ;
+        RECT 16.410 0.500 16.490 0.670 ;
+        RECT 17.620 0.670 17.930 0.750 ;
+        RECT 17.620 0.660 17.680 0.670 ;
+        RECT 16.160 0.420 16.490 0.500 ;
+        RECT 17.600 0.500 17.680 0.660 ;
+        RECT 17.850 0.500 17.930 0.670 ;
+        RECT 17.600 0.420 17.930 0.500 ;
+      LAYER met1 ;
+        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 ;
+        RECT 4.660 2.200 4.950 2.260 ;
+        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.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 11.380 2.830 11.670 2.890 ;
+        RECT 11.380 2.820 11.440 2.830 ;
+        RECT 8.500 2.600 8.790 2.660 ;
+        RECT 10.010 2.680 11.440 2.820 ;
+        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 ;
+        RECT 1.850 0.920 4.240 1.060 ;
+        RECT 1.850 0.730 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 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 10.010 2.070 10.150 2.680 ;
+        RECT 11.380 2.660 11.440 2.680 ;
+        RECT 11.610 2.660 11.670 2.830 ;
+        RECT 14.260 2.830 14.550 2.890 ;
+        RECT 14.260 2.820 14.320 2.830 ;
+        RECT 11.380 2.600 11.670 2.660 ;
+        RECT 12.890 2.680 14.320 2.820 ;
+        RECT 10.420 2.430 10.710 2.490 ;
+        RECT 10.420 2.260 10.480 2.430 ;
+        RECT 10.650 2.260 10.710 2.430 ;
+        RECT 10.420 2.200 10.710 2.260 ;
+        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 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 0.730 7.750 1.860 ;
+        RECT 9.940 1.840 10.000 1.860 ;
+        RECT 10.170 1.840 10.230 2.010 ;
+        RECT 9.940 1.780 10.230 1.840 ;
+        RECT 10.490 2.000 10.630 2.200 ;
+        RECT 12.890 2.070 13.030 2.680 ;
+        RECT 14.260 2.660 14.320 2.680 ;
+        RECT 14.490 2.660 14.550 2.830 ;
+        RECT 14.260 2.600 14.550 2.660 ;
+        RECT 13.300 2.430 13.590 2.490 ;
+        RECT 13.300 2.260 13.360 2.430 ;
+        RECT 13.530 2.260 13.590 2.430 ;
+        RECT 13.300 2.200 13.590 2.260 ;
+        RECT 12.820 2.010 13.110 2.070 ;
+        RECT 12.820 2.000 12.880 2.010 ;
+        RECT 10.490 1.860 12.880 2.000 ;
+        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 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 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 10.490 0.730 10.630 1.860 ;
+        RECT 12.820 1.840 12.880 1.860 ;
+        RECT 13.050 1.840 13.110 2.010 ;
+        RECT 12.820 1.780 13.110 1.840 ;
+        RECT 13.370 2.000 13.510 2.200 ;
+        RECT 15.700 2.010 15.990 2.070 ;
+        RECT 15.700 2.000 15.760 2.010 ;
+        RECT 13.370 1.860 15.760 2.000 ;
+        RECT 11.380 1.620 11.670 1.680 ;
+        RECT 11.380 1.450 11.440 1.620 ;
+        RECT 11.610 1.450 11.670 1.620 ;
+        RECT 11.380 1.390 11.670 1.450 ;
+        RECT 11.450 1.140 11.590 1.390 ;
+        RECT 12.890 1.140 13.030 1.780 ;
+        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 12.820 1.080 13.110 1.140 ;
+        RECT 12.820 0.910 12.880 1.080 ;
+        RECT 13.050 0.910 13.110 1.080 ;
+        RECT 12.820 0.850 13.110 0.910 ;
+        RECT 13.370 0.730 13.510 1.860 ;
+        RECT 15.700 1.840 15.760 1.860 ;
+        RECT 15.930 2.000 15.990 2.010 ;
+        RECT 17.140 2.010 17.430 2.070 ;
+        RECT 17.140 2.000 17.200 2.010 ;
+        RECT 15.930 1.860 17.200 2.000 ;
+        RECT 15.930 1.840 15.990 1.860 ;
+        RECT 15.700 1.780 15.990 1.840 ;
+        RECT 17.140 1.840 17.200 1.860 ;
+        RECT 17.370 1.840 17.430 2.010 ;
+        RECT 17.140 1.780 17.430 1.840 ;
+        RECT 14.260 1.620 14.550 1.680 ;
+        RECT 14.260 1.450 14.320 1.620 ;
+        RECT 14.490 1.450 14.550 1.620 ;
+        RECT 14.260 1.390 14.550 1.450 ;
+        RECT 14.330 1.140 14.470 1.390 ;
+        RECT 15.770 1.140 15.910 1.780 ;
+        RECT 17.210 1.140 17.350 1.780 ;
+        RECT 14.260 1.080 14.550 1.140 ;
+        RECT 14.260 0.910 14.320 1.080 ;
+        RECT 14.490 0.910 14.550 1.080 ;
+        RECT 14.260 0.850 14.550 0.910 ;
+        RECT 15.700 1.080 15.990 1.140 ;
+        RECT 15.700 0.910 15.760 1.080 ;
+        RECT 15.930 0.910 15.990 1.080 ;
+        RECT 15.700 0.850 15.990 0.910 ;
+        RECT 17.140 1.080 17.430 1.140 ;
+        RECT 17.140 0.910 17.200 1.080 ;
+        RECT 17.370 0.910 17.430 1.080 ;
+        RECT 17.140 0.850 17.430 0.910 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 4.660 0.670 4.950 0.730 ;
+        RECT 4.660 0.500 4.720 0.670 ;
+        RECT 4.890 0.500 4.950 0.670 ;
+        RECT 4.660 0.440 4.950 0.500 ;
+        RECT 7.540 0.670 7.830 0.730 ;
+        RECT 7.540 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.830 0.670 ;
+        RECT 7.540 0.440 7.830 0.500 ;
+        RECT 10.420 0.670 10.710 0.730 ;
+        RECT 10.420 0.500 10.480 0.670 ;
+        RECT 10.650 0.500 10.710 0.670 ;
+        RECT 10.420 0.440 10.710 0.500 ;
+        RECT 13.300 0.670 13.590 0.730 ;
+        RECT 13.300 0.500 13.360 0.670 ;
+        RECT 13.530 0.500 13.590 0.670 ;
+        RECT 13.300 0.440 13.590 0.500 ;
+  END
+END CLKBUF2
+END LIBRARY
+
diff --git a/cells/lef/CLKBUF2.lef.beforemagic b/cells/lef/CLKBUF2.lef.beforemagic
new file mode 100644
index 0000000..b80556a
--- /dev/null
+++ b/cells/lef/CLKBUF2.lef.beforemagic
@@ -0,0 +1,578 @@
+MACRO CLKBUF2
+ CLASS CORE ;
+ FOREIGN CLKBUF2 0 0 ;
+ SIZE 18.72 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN Y
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 16.17500000 0.44000000 16.46500000 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 1.37000000 1.13500000 1.51000000 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 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
+        RECT 1.37000000 2.67500000 2.95000000 2.81500000 ;
+    END
+  END A
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 18.72 3.57 ) ;
+      RECT ( 0 3.245 ) ( 9.035 3.415 ) ;
+      RECT ( 9.205 3.245 ) ( 18.72 3.415 ) ;
+      RECT ( 0 3.215 ) ( 18.72 3.245 ) ;
+      RECT ( 0 3.09 ) ( 3.025 3.215 ) ;
+      RECT ( 3.695 3.09 ) ( 18.72 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.045 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 6.075 2.965 ) ( 6.405 3.09 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
+      RECT ( 6.075 2.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.405 2.965 ) ;
+      RECT ( 8.955 2.965 ) ( 9.285 3.09 ) ;
+      RECT ( 6.075 2.715 ) ( 6.405 2.795 ) ;
+      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 ( 1.775 2.175 ) ( 2.085 2.255 ) ;
+      RECT ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.635 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 5.675 2.09 ) ( 5.845 2.66 ) ;
+      RECT ( 8.955 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.285 2.965 ) ;
+      RECT ( 11.835 2.965 ) ( 12.165 3.09 ) ;
+      RECT ( 8.955 2.715 ) ( 9.285 2.795 ) ;
+      RECT ( 7.515 2.425 ) ( 7.845 2.505 ) ;
+      RECT ( 7.515 2.26 ) ( 7.595 2.425 ) ;
+      RECT ( 7.535 2.255 ) ( 7.595 2.26 ) ;
+      RECT ( 7.765 2.255 ) ( 7.845 2.425 ) ;
+      RECT ( 7.535 2.175 ) ( 7.845 2.255 ) ;
+      RECT ( 8.555 2.09 ) ( 8.725 2.66 ) ;
+      RECT ( 11.835 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.165 2.965 ) ;
+      RECT ( 14.715 2.965 ) ( 15.045 3.09 ) ;
+      RECT ( 11.835 2.715 ) ( 12.165 2.795 ) ;
+      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 ( 11.435 2.09 ) ( 11.605 2.66 ) ;
+      RECT ( 14.715 2.795 ) ( 14.795 2.965 ) ;
+      RECT ( 14.965 2.795 ) ( 15.045 2.965 ) ;
+      RECT ( 14.715 2.715 ) ( 15.045 2.795 ) ;
+      RECT ( 17.595 2.965 ) ( 17.925 3.09 ) ;
+      RECT ( 17.595 2.795 ) ( 17.675 2.965 ) ;
+      RECT ( 17.845 2.795 ) ( 17.925 2.965 ) ;
+      RECT ( 17.595 2.715 ) ( 17.925 2.795 ) ;
+      RECT ( 13.275 2.425 ) ( 13.605 2.505 ) ;
+      RECT ( 13.275 2.26 ) ( 13.355 2.425 ) ;
+      RECT ( 13.295 2.255 ) ( 13.355 2.26 ) ;
+      RECT ( 13.525 2.255 ) ( 13.605 2.425 ) ;
+      RECT ( 13.295 2.175 ) ( 13.605 2.255 ) ;
+      RECT ( 14.315 2.09 ) ( 14.485 2.66 ) ;
+      RECT ( 16.155 2.425 ) ( 16.485 2.505 ) ;
+      RECT ( 16.155 2.255 ) ( 16.235 2.425 ) ;
+      RECT ( 16.405 2.255 ) ( 16.485 2.425 ) ;
+      RECT ( 16.155 2.175 ) ( 16.485 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.465 2.09 ) ;
+      RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
+      RECT ( 4.405 2.005 ) ( 4.465 2.01 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.005 ) ;
+      RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
+      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 ( 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 ( 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 ( 12.795 2.01 ) ( 13.125 2.09 ) ;
+      RECT ( 12.795 1.84 ) ( 12.875 2.01 ) ;
+      RECT ( 13.045 1.84 ) ( 13.125 2.01 ) ;
+      RECT ( 12.795 1.76 ) ( 13.125 1.84 ) ;
+      RECT ( 14.235 2.01 ) ( 14.565 2.09 ) ;
+      RECT ( 14.235 1.84 ) ( 14.315 2.01 ) ;
+      RECT ( 14.485 1.84 ) ( 14.565 2.01 ) ;
+      RECT ( 14.235 1.76 ) ( 14.565 1.84 ) ;
+      RECT ( 15.675 2.01 ) ( 15.985 2.09 ) ;
+      RECT ( 15.675 1.84 ) ( 15.755 2.01 ) ;
+      RECT ( 15.925 2.005 ) ( 15.985 2.01 ) ;
+      RECT ( 15.925 1.84 ) ( 16.005 2.005 ) ;
+      RECT ( 15.675 1.76 ) ( 16.005 1.84 ) ;
+      RECT ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 5.675 1.615 ) ( 5.845 1.76 ) ;
+      RECT ( 8.555 1.615 ) ( 8.725 1.76 ) ;
+      RECT ( 11.435 1.615 ) ( 11.605 1.76 ) ;
+      RECT ( 14.315 1.615 ) ( 14.485 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      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.92 ) ( 8.805 1.075 ) ;
+      RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 0.92 ) ;
+      RECT ( 8.475 0.825 ) ( 8.785 0.905 ) ;
+      RECT ( 9.915 0.905 ) ( 9.995 1.075 ) ;
+      RECT ( 10.165 0.92 ) ( 10.245 1.075 ) ;
+      RECT ( 11.355 1.075 ) ( 11.685 1.155 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 0.92 ) ;
+      RECT ( 9.915 0.825 ) ( 10.225 0.905 ) ;
+      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 ( 12.795 1.075 ) ( 13.125 1.155 ) ;
+      RECT ( 12.795 0.905 ) ( 12.875 1.075 ) ;
+      RECT ( 13.045 0.92 ) ( 13.125 1.075 ) ;
+      RECT ( 14.235 1.075 ) ( 14.565 1.155 ) ;
+      RECT ( 13.045 0.905 ) ( 13.105 0.92 ) ;
+      RECT ( 12.795 0.825 ) ( 13.105 0.905 ) ;
+      RECT ( 14.235 0.905 ) ( 14.315 1.075 ) ;
+      RECT ( 14.485 0.92 ) ( 14.565 1.075 ) ;
+      RECT ( 15.675 1.075 ) ( 16.005 1.155 ) ;
+      RECT ( 14.485 0.905 ) ( 14.545 0.92 ) ;
+      RECT ( 14.235 0.825 ) ( 14.545 0.905 ) ;
+      RECT ( 15.675 0.905 ) ( 15.755 1.075 ) ;
+      RECT ( 15.925 0.92 ) ( 16.005 1.075 ) ;
+      RECT ( 15.925 0.905 ) ( 15.985 0.92 ) ;
+      RECT ( 15.675 0.825 ) ( 15.985 0.905 ) ;
+      RECT ( 16.235 0.75 ) ( 16.405 2.175 ) ;
+      RECT ( 17.115 2.01 ) ( 17.445 2.09 ) ;
+      RECT ( 17.115 1.84 ) ( 17.195 2.01 ) ;
+      RECT ( 17.365 1.84 ) ( 17.445 2.01 ) ;
+      RECT ( 17.115 1.76 ) ( 17.445 1.84 ) ;
+      RECT ( 17.115 1.075 ) ( 17.445 1.155 ) ;
+      RECT ( 17.115 0.905 ) ( 17.195 1.075 ) ;
+      RECT ( 17.365 0.905 ) ( 17.445 1.075 ) ;
+      RECT ( 17.115 0.825 ) ( 17.445 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.635 0.5 ) ( 4.715 0.67 ) ;
+      RECT ( 4.885 0.5 ) ( 4.965 0.67 ) ;
+      RECT ( 6.095 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 4.635 0.42 ) ( 4.965 0.5 ) ;
+      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 ( 7.515 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 0.67 ) ;
+      RECT ( 7.515 0.42 ) ( 7.845 0.5 ) ;
+      RECT ( 8.955 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 10.395 0.67 ) ( 10.725 0.75 ) ;
+      RECT ( 10.395 0.5 ) ( 10.475 0.67 ) ;
+      RECT ( 10.645 0.5 ) ( 10.725 0.67 ) ;
+      RECT ( 11.855 0.67 ) ( 12.165 0.75 ) ;
+      RECT ( 11.855 0.655 ) ( 11.915 0.67 ) ;
+      RECT ( 10.395 0.42 ) ( 10.725 0.5 ) ;
+      RECT ( 11.835 0.5 ) ( 11.915 0.655 ) ;
+      RECT ( 12.085 0.5 ) ( 12.165 0.67 ) ;
+      RECT ( 11.835 0.42 ) ( 12.165 0.5 ) ;
+      RECT ( 13.275 0.67 ) ( 13.605 0.75 ) ;
+      RECT ( 13.275 0.5 ) ( 13.355 0.67 ) ;
+      RECT ( 13.525 0.5 ) ( 13.605 0.67 ) ;
+      RECT ( 13.275 0.42 ) ( 13.605 0.5 ) ;
+      RECT ( 14.715 0.67 ) ( 15.045 0.75 ) ;
+      RECT ( 14.715 0.5 ) ( 14.795 0.67 ) ;
+      RECT ( 14.965 0.5 ) ( 15.045 0.67 ) ;
+      RECT ( 14.715 0.42 ) ( 15.045 0.5 ) ;
+      RECT ( 16.155 0.67 ) ( 16.485 0.75 ) ;
+      RECT ( 16.155 0.5 ) ( 16.235 0.67 ) ;
+      RECT ( 16.405 0.5 ) ( 16.485 0.67 ) ;
+      RECT ( 17.615 0.67 ) ( 17.925 0.75 ) ;
+      RECT ( 17.615 0.655 ) ( 17.675 0.67 ) ;
+      RECT ( 16.155 0.42 ) ( 16.485 0.5 ) ;
+      RECT ( 17.595 0.5 ) ( 17.675 0.655 ) ;
+      RECT ( 17.845 0.5 ) ( 17.925 0.67 ) ;
+      RECT ( 17.595 0.42 ) ( 17.925 0.5 ) ;
+      RECT ( 0 0.085 ) ( 18.72 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 18.72 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 18.72 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 18.72 3.57 ) ;
+      RECT ( 0 3.245 ) ( 9.035 3.415 ) ;
+      RECT ( 9.205 3.245 ) ( 18.72 3.415 ) ;
+      RECT ( 0 3.09 ) ( 18.72 3.245 ) ;
+      RECT ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      RECT ( 1.37 2.675 ) ( 2.95 2.815 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 6.095 2.965 ) ( 6.385 3.09 ) ;
+      RECT ( 5.615 2.83 ) ( 5.905 2.89 ) ;
+      RECT ( 5.615 2.815 ) ( 5.675 2.83 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
+      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.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.385 2.965 ) ;
+      RECT ( 8.975 2.965 ) ( 9.265 3.09 ) ;
+      RECT ( 8.495 2.83 ) ( 8.785 2.89 ) ;
+      RECT ( 8.495 2.815 ) ( 8.555 2.83 ) ;
+      RECT ( 6.095 2.735 ) ( 6.385 2.795 ) ;
+      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.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.265 2.965 ) ;
+      RECT ( 11.855 2.965 ) ( 12.145 3.09 ) ;
+      RECT ( 11.375 2.83 ) ( 11.665 2.89 ) ;
+      RECT ( 11.375 2.815 ) ( 11.435 2.83 ) ;
+      RECT ( 8.975 2.735 ) ( 9.265 2.795 ) ;
+      RECT ( 8.495 2.6 ) ( 8.785 2.66 ) ;
+      RECT ( 10.01 2.675 ) ( 11.435 2.815 ) ;
+      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 ( 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.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 ( 10.01 2.07 ) ( 10.15 2.675 ) ;
+      RECT ( 11.375 2.66 ) ( 11.435 2.675 ) ;
+      RECT ( 11.605 2.66 ) ( 11.665 2.83 ) ;
+      RECT ( 11.855 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.145 2.965 ) ;
+      RECT ( 14.735 2.965 ) ( 15.025 3.09 ) ;
+      RECT ( 14.255 2.83 ) ( 14.545 2.89 ) ;
+      RECT ( 14.255 2.815 ) ( 14.315 2.83 ) ;
+      RECT ( 11.855 2.735 ) ( 12.145 2.795 ) ;
+      RECT ( 11.375 2.6 ) ( 11.665 2.66 ) ;
+      RECT ( 12.89 2.675 ) ( 14.315 2.815 ) ;
+      RECT ( 10.415 2.425 ) ( 10.705 2.485 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.425 ) ;
+      RECT ( 10.645 2.255 ) ( 10.705 2.425 ) ;
+      RECT ( 10.415 2.195 ) ( 10.705 2.255 ) ;
+      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.84 ) ( 10.225 2.01 ) ;
+      RECT ( 9.935 1.78 ) ( 10.225 1.84 ) ;
+      RECT ( 10.49 1.995 ) ( 10.63 2.195 ) ;
+      RECT ( 12.89 2.07 ) ( 13.03 2.675 ) ;
+      RECT ( 14.255 2.66 ) ( 14.315 2.675 ) ;
+      RECT ( 14.485 2.66 ) ( 14.545 2.83 ) ;
+      RECT ( 14.735 2.795 ) ( 14.795 2.965 ) ;
+      RECT ( 14.965 2.795 ) ( 15.025 2.965 ) ;
+      RECT ( 14.735 2.735 ) ( 15.025 2.795 ) ;
+      RECT ( 17.615 2.965 ) ( 17.905 3.09 ) ;
+      RECT ( 17.615 2.795 ) ( 17.675 2.965 ) ;
+      RECT ( 17.845 2.795 ) ( 17.905 2.965 ) ;
+      RECT ( 17.615 2.735 ) ( 17.905 2.795 ) ;
+      RECT ( 14.255 2.6 ) ( 14.545 2.66 ) ;
+      RECT ( 13.295 2.425 ) ( 13.585 2.485 ) ;
+      RECT ( 13.295 2.255 ) ( 13.355 2.425 ) ;
+      RECT ( 13.525 2.255 ) ( 13.585 2.425 ) ;
+      RECT ( 13.295 2.195 ) ( 13.585 2.255 ) ;
+      RECT ( 12.815 2.01 ) ( 13.105 2.07 ) ;
+      RECT ( 12.815 1.995 ) ( 12.875 2.01 ) ;
+      RECT ( 10.49 1.855 ) ( 12.875 1.995 ) ;
+      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 ( 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 ( 10.49 0.73 ) ( 10.63 1.855 ) ;
+      RECT ( 12.815 1.84 ) ( 12.875 1.855 ) ;
+      RECT ( 13.045 1.84 ) ( 13.105 2.01 ) ;
+      RECT ( 12.815 1.78 ) ( 13.105 1.84 ) ;
+      RECT ( 13.37 1.995 ) ( 13.51 2.195 ) ;
+      RECT ( 15.695 2.01 ) ( 15.985 2.07 ) ;
+      RECT ( 15.695 1.995 ) ( 15.755 2.01 ) ;
+      RECT ( 13.37 1.855 ) ( 15.755 1.995 ) ;
+      RECT ( 11.375 1.615 ) ( 11.665 1.675 ) ;
+      RECT ( 11.375 1.445 ) ( 11.435 1.615 ) ;
+      RECT ( 11.605 1.445 ) ( 11.665 1.615 ) ;
+      RECT ( 11.375 1.385 ) ( 11.665 1.445 ) ;
+      RECT ( 11.45 1.135 ) ( 11.59 1.385 ) ;
+      RECT ( 12.89 1.135 ) ( 13.03 1.78 ) ;
+      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 ( 12.815 1.075 ) ( 13.105 1.135 ) ;
+      RECT ( 12.815 0.905 ) ( 12.875 1.075 ) ;
+      RECT ( 13.045 0.905 ) ( 13.105 1.075 ) ;
+      RECT ( 12.815 0.845 ) ( 13.105 0.905 ) ;
+      RECT ( 13.37 0.73 ) ( 13.51 1.855 ) ;
+      RECT ( 15.695 1.84 ) ( 15.755 1.855 ) ;
+      RECT ( 15.925 1.995 ) ( 15.985 2.01 ) ;
+      RECT ( 17.135 2.01 ) ( 17.425 2.07 ) ;
+      RECT ( 17.135 1.995 ) ( 17.195 2.01 ) ;
+      RECT ( 15.925 1.855 ) ( 17.195 1.995 ) ;
+      RECT ( 15.925 1.84 ) ( 15.985 1.855 ) ;
+      RECT ( 15.695 1.78 ) ( 15.985 1.84 ) ;
+      RECT ( 17.135 1.84 ) ( 17.195 1.855 ) ;
+      RECT ( 17.365 1.84 ) ( 17.425 2.01 ) ;
+      RECT ( 17.135 1.78 ) ( 17.425 1.84 ) ;
+      RECT ( 14.255 1.615 ) ( 14.545 1.675 ) ;
+      RECT ( 14.255 1.445 ) ( 14.315 1.615 ) ;
+      RECT ( 14.485 1.445 ) ( 14.545 1.615 ) ;
+      RECT ( 14.255 1.385 ) ( 14.545 1.445 ) ;
+      RECT ( 14.33 1.135 ) ( 14.47 1.385 ) ;
+      RECT ( 15.77 1.135 ) ( 15.91 1.78 ) ;
+      RECT ( 17.21 1.135 ) ( 17.35 1.78 ) ;
+      RECT ( 14.255 1.075 ) ( 14.545 1.135 ) ;
+      RECT ( 14.255 0.905 ) ( 14.315 1.075 ) ;
+      RECT ( 14.485 0.905 ) ( 14.545 1.075 ) ;
+      RECT ( 14.255 0.845 ) ( 14.545 0.905 ) ;
+      RECT ( 15.695 1.075 ) ( 15.985 1.135 ) ;
+      RECT ( 15.695 0.905 ) ( 15.755 1.075 ) ;
+      RECT ( 15.925 0.905 ) ( 15.985 1.075 ) ;
+      RECT ( 15.695 0.845 ) ( 15.985 0.905 ) ;
+      RECT ( 17.135 1.075 ) ( 17.425 1.135 ) ;
+      RECT ( 17.135 0.905 ) ( 17.195 1.075 ) ;
+      RECT ( 17.365 0.905 ) ( 17.425 1.075 ) ;
+      RECT ( 17.135 0.845 ) ( 17.425 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      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 ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.67 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 7.535 0.67 ) ( 7.825 0.73 ) ;
+      RECT ( 7.535 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.825 0.67 ) ;
+      RECT ( 7.535 0.44 ) ( 7.825 0.5 ) ;
+      RECT ( 8.975 0.67 ) ( 9.265 0.73 ) ;
+      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 ( 10.415 0.67 ) ( 10.705 0.73 ) ;
+      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.67 ) ( 12.145 0.73 ) ;
+      RECT ( 11.855 0.5 ) ( 11.915 0.67 ) ;
+      RECT ( 12.085 0.5 ) ( 12.145 0.67 ) ;
+      RECT ( 11.855 0.44 ) ( 12.145 0.5 ) ;
+      RECT ( 13.295 0.67 ) ( 13.585 0.73 ) ;
+      RECT ( 13.295 0.5 ) ( 13.355 0.67 ) ;
+      RECT ( 13.525 0.5 ) ( 13.585 0.67 ) ;
+      RECT ( 13.295 0.44 ) ( 13.585 0.5 ) ;
+      RECT ( 14.735 0.67 ) ( 15.025 0.73 ) ;
+      RECT ( 14.735 0.5 ) ( 14.795 0.67 ) ;
+      RECT ( 14.965 0.5 ) ( 15.025 0.67 ) ;
+      RECT ( 14.735 0.44 ) ( 15.025 0.5 ) ;
+      RECT ( 16.175 0.67 ) ( 16.465 0.73 ) ;
+      RECT ( 16.175 0.5 ) ( 16.235 0.67 ) ;
+      RECT ( 16.405 0.5 ) ( 16.465 0.67 ) ;
+      RECT ( 16.175 0.44 ) ( 16.465 0.5 ) ;
+      RECT ( 17.615 0.67 ) ( 17.905 0.73 ) ;
+      RECT ( 17.615 0.5 ) ( 17.675 0.67 ) ;
+      RECT ( 17.845 0.5 ) ( 17.905 0.67 ) ;
+      RECT ( 17.615 0.44 ) ( 17.905 0.5 ) ;
+      RECT ( 0.65 0.24 ) ( 0.79 0.44 ) ;
+      RECT ( 3.29 0.24 ) ( 3.43 0.44 ) ;
+      RECT ( 6.17 0.24 ) ( 6.31 0.44 ) ;
+      RECT ( 9.05 0.24 ) ( 9.19 0.44 ) ;
+      RECT ( 11.93 0.24 ) ( 12.07 0.44 ) ;
+      RECT ( 14.81 0.24 ) ( 14.95 0.44 ) ;
+      RECT ( 17.69 0.24 ) ( 17.83 0.44 ) ;
+      RECT ( 0 0.085 ) ( 18.72 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 18.72 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 18.72 -0.085 ) ;
+
+  end
+END CLKBUF2
diff --git a/cells/lef/CLKBUF2.lef.temp b/cells/lef/CLKBUF2.lef.temp
new file mode 100644
index 0000000..5a7a6d7
--- /dev/null
+++ b/cells/lef/CLKBUF2.lef.temp
@@ -0,0 +1,62 @@
+MACRO CLKBUF2
+ CLASS CORE ;
+ FOREIGN CLKBUF2 0 0 ;
+ SIZE 18.72 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 18.72000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+    END
+  END GND
+
+  PIN Y
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 16.17500000 0.44000000 16.46500000 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 1.37000000 1.13500000 1.51000000 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 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
+        RECT 1.37000000 2.67500000 2.95000000 2.81500000 ;
+    END
+  END A
+
+END CLKBUF2
diff --git a/cells/lef/HAX1.lef b/cells/lef/HAX1.lef
new file mode 100644
index 0000000..29f3862
--- /dev/null
+++ b/cells/lef/HAX1.lef
@@ -0,0 +1,352 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO HAX1
+  CLASS CORE ;
+  FOREIGN HAX1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 15.840 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 15.840 3.570 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 11.860 2.970 12.150 3.090 ;
+        RECT 11.860 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.150 2.970 ;
+        RECT 11.860 2.740 12.150 2.800 ;
+        RECT 13.540 2.970 13.830 3.090 ;
+        RECT 13.540 2.800 13.600 2.970 ;
+        RECT 13.770 2.800 13.830 2.970 ;
+        RECT 13.540 2.740 13.830 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 15.840 3.570 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
+        RECT 4.640 2.970 4.970 3.090 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
+        RECT 7.760 2.970 8.090 3.090 ;
+        RECT 7.760 2.800 7.840 2.970 ;
+        RECT 8.010 2.800 8.090 2.970 ;
+        RECT 7.760 2.720 8.090 2.800 ;
+        RECT 13.520 2.970 13.850 3.090 ;
+        RECT 13.520 2.800 13.600 2.970 ;
+        RECT 13.770 2.800 13.850 2.970 ;
+        RECT 13.520 2.720 13.850 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 6.100 0.670 6.390 0.730 ;
+        RECT 6.100 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.390 0.670 ;
+        RECT 6.100 0.440 6.390 0.500 ;
+        RECT 7.780 0.670 8.070 0.730 ;
+        RECT 7.780 0.500 7.840 0.670 ;
+        RECT 8.010 0.500 8.070 0.670 ;
+        RECT 7.780 0.440 8.070 0.500 ;
+        RECT 13.540 0.670 13.830 0.730 ;
+        RECT 13.540 0.500 13.600 0.670 ;
+        RECT 13.770 0.500 13.830 0.670 ;
+        RECT 13.540 0.440 13.830 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 7.850 0.240 7.990 0.440 ;
+        RECT 13.610 0.240 13.750 0.440 ;
+        RECT 0.000 -0.240 15.840 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 -0.240 15.840 0.240 ;
+    END
+  END VGND
+  PIN YC
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.580 2.200 0.870 2.490 ;
+        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 0.580 0.440 0.870 0.730 ;
+    END
+  END YC
+  PIN YS
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 14.740 2.200 15.030 2.490 ;
+        RECT 14.810 0.730 14.950 2.200 ;
+        RECT 14.740 0.440 15.030 0.730 ;
+    END
+  END YS
+  PIN B
+    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 B
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 5.620 1.780 5.910 2.070 ;
+        RECT 11.380 1.780 11.670 2.070 ;
+        RECT 5.690 1.140 5.830 1.780 ;
+        RECT 11.450 1.140 11.590 1.780 ;
+        RECT 5.620 1.060 5.910 1.140 ;
+        RECT 11.380 1.060 11.670 1.140 ;
+        RECT 5.620 0.920 11.670 1.060 ;
+        RECT 5.620 0.850 5.910 0.920 ;
+        RECT 11.380 0.850 11.670 0.920 ;
+    END
+  END A
+  OBS
+      LAYER li1 ;
+        RECT 11.840 2.970 12.170 3.050 ;
+        RECT 11.840 2.800 11.920 2.970 ;
+        RECT 12.090 2.800 12.170 2.970 ;
+        RECT 11.840 2.720 12.170 2.800 ;
+        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 3.440 2.430 3.770 2.510 ;
+        RECT 3.440 2.260 3.520 2.430 ;
+        RECT 3.690 2.260 3.770 2.430 ;
+        RECT 3.440 2.180 3.770 2.260 ;
+        RECT 4.240 2.090 4.410 2.660 ;
+        RECT 6.080 2.430 6.410 2.510 ;
+        RECT 6.080 2.260 6.160 2.430 ;
+        RECT 6.330 2.260 6.410 2.430 ;
+        RECT 6.100 2.180 6.410 2.260 ;
+        RECT 9.440 2.430 9.770 2.510 ;
+        RECT 9.440 2.260 9.520 2.430 ;
+        RECT 9.690 2.260 9.770 2.430 ;
+        RECT 14.720 2.430 15.050 2.510 ;
+        RECT 14.720 2.260 14.800 2.430 ;
+        RECT 14.970 2.260 15.050 2.430 ;
+        RECT 9.440 2.180 9.750 2.260 ;
+        RECT 14.740 2.180 15.050 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 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 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 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 9.920 2.010 10.250 2.090 ;
+        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 14.240 2.010 14.570 2.090 ;
+        RECT 14.240 1.840 14.320 2.010 ;
+        RECT 14.490 1.840 14.570 2.010 ;
+        RECT 14.240 1.760 14.570 1.840 ;
+        RECT 8.560 1.160 8.730 1.760 ;
+        RECT 10.000 1.160 10.170 1.760 ;
+        RECT 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        RECT 4.160 0.910 4.240 1.080 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
+        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 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 9.920 1.080 10.250 1.160 ;
+        RECT 9.920 0.920 10.000 1.080 ;
+        RECT 8.480 0.830 8.810 0.910 ;
+        RECT 9.940 0.910 10.000 0.920 ;
+        RECT 10.170 0.920 10.250 1.080 ;
+        RECT 10.170 0.910 10.230 0.920 ;
+        RECT 9.940 0.830 10.230 0.910 ;
+        RECT 10.480 0.750 10.650 1.310 ;
+        RECT 11.360 1.080 11.690 1.160 ;
+        RECT 11.360 0.910 11.440 1.080 ;
+        RECT 11.610 0.920 11.690 1.080 ;
+        RECT 14.240 1.080 14.570 1.160 ;
+        RECT 11.610 0.910 11.670 0.920 ;
+        RECT 11.360 0.830 11.670 0.910 ;
+        RECT 14.240 0.910 14.320 1.080 ;
+        RECT 14.490 0.920 14.570 1.080 ;
+        RECT 14.490 0.910 14.550 0.920 ;
+        RECT 14.240 0.830 14.550 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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.440 0.670 3.770 0.750 ;
+        RECT 3.440 0.500 3.520 0.670 ;
+        RECT 3.690 0.500 3.770 0.670 ;
+        RECT 6.100 0.670 6.410 0.750 ;
+        RECT 6.100 0.660 6.160 0.670 ;
+        RECT 3.440 0.420 3.770 0.500 ;
+        RECT 6.080 0.500 6.160 0.660 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+        RECT 7.760 0.670 8.090 0.750 ;
+        RECT 7.760 0.500 7.840 0.670 ;
+        RECT 8.010 0.500 8.090 0.670 ;
+        RECT 7.760 0.420 8.090 0.500 ;
+        RECT 9.440 0.670 9.770 0.750 ;
+        RECT 9.440 0.500 9.520 0.670 ;
+        RECT 9.690 0.500 9.770 0.670 ;
+        RECT 9.440 0.420 9.770 0.500 ;
+        RECT 10.400 0.670 10.730 0.750 ;
+        RECT 10.400 0.500 10.480 0.670 ;
+        RECT 10.650 0.500 10.730 0.670 ;
+        RECT 10.400 0.420 10.730 0.500 ;
+        RECT 11.840 0.670 12.170 0.750 ;
+        RECT 11.840 0.500 11.920 0.670 ;
+        RECT 12.090 0.500 12.170 0.670 ;
+        RECT 11.840 0.420 12.170 0.500 ;
+        RECT 13.520 0.670 13.850 0.750 ;
+        RECT 13.520 0.500 13.600 0.670 ;
+        RECT 13.770 0.500 13.850 0.670 ;
+        RECT 13.520 0.420 13.850 0.500 ;
+        RECT 14.720 0.670 15.050 0.750 ;
+        RECT 14.720 0.500 14.800 0.670 ;
+        RECT 14.970 0.500 15.050 0.670 ;
+        RECT 14.720 0.420 15.050 0.500 ;
+      LAYER met1 ;
+        RECT 4.180 2.830 4.470 2.890 ;
+        RECT 4.180 2.660 4.240 2.830 ;
+        RECT 4.410 2.820 4.470 2.830 ;
+        RECT 4.410 2.680 10.150 2.820 ;
+        RECT 4.410 2.660 4.470 2.680 ;
+        RECT 4.180 2.600 4.470 2.660 ;
+        RECT 3.460 2.430 3.750 2.490 ;
+        RECT 3.460 2.260 3.520 2.430 ;
+        RECT 3.690 2.410 3.750 2.430 ;
+        RECT 6.100 2.430 6.390 2.490 ;
+        RECT 6.100 2.410 6.160 2.430 ;
+        RECT 3.690 2.270 6.160 2.410 ;
+        RECT 3.690 2.260 3.750 2.270 ;
+        RECT 3.460 2.200 3.750 2.260 ;
+        RECT 6.100 2.260 6.160 2.270 ;
+        RECT 6.330 2.410 6.390 2.430 ;
+        RECT 9.460 2.430 9.750 2.490 ;
+        RECT 6.330 2.270 8.710 2.410 ;
+        RECT 6.330 2.260 6.390 2.270 ;
+        RECT 6.100 2.200 6.390 2.260 ;
+        RECT 1.300 2.010 1.590 2.070 ;
+        RECT 1.300 1.840 1.360 2.010 ;
+        RECT 1.530 1.840 1.590 2.010 ;
+        RECT 1.300 1.780 1.590 1.840 ;
+        RECT 1.370 1.140 1.510 1.780 ;
+        RECT 1.300 1.080 1.590 1.140 ;
+        RECT 1.300 0.910 1.360 1.080 ;
+        RECT 1.530 1.060 1.590 1.080 ;
+        RECT 3.530 1.060 3.670 2.200 ;
+        RECT 8.570 2.070 8.710 2.270 ;
+        RECT 9.460 2.260 9.520 2.430 ;
+        RECT 9.690 2.260 9.750 2.430 ;
+        RECT 9.460 2.200 9.750 2.260 ;
+        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.530 1.470 9.670 2.200 ;
+        RECT 10.010 2.070 10.150 2.680 ;
+        RECT 10.490 2.270 14.470 2.410 ;
+        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 10.490 1.540 10.630 2.270 ;
+        RECT 14.330 2.070 14.470 2.270 ;
+        RECT 14.260 2.010 14.550 2.070 ;
+        RECT 14.260 1.840 14.320 2.010 ;
+        RECT 14.490 1.840 14.550 2.010 ;
+        RECT 14.260 1.780 14.550 1.840 ;
+        RECT 10.420 1.480 10.710 1.540 ;
+        RECT 10.420 1.470 10.480 1.480 ;
+        RECT 9.530 1.330 10.480 1.470 ;
+        RECT 10.420 1.310 10.480 1.330 ;
+        RECT 10.650 1.310 10.710 1.480 ;
+        RECT 10.420 1.250 10.710 1.310 ;
+        RECT 14.330 1.140 14.470 1.780 ;
+        RECT 1.530 0.920 3.670 1.060 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.300 0.850 1.590 0.910 ;
+        RECT 3.530 0.730 3.670 0.920 ;
+        RECT 14.260 1.080 14.550 1.140 ;
+        RECT 14.260 0.910 14.320 1.080 ;
+        RECT 14.490 0.910 14.550 1.080 ;
+        RECT 14.260 0.850 14.550 0.910 ;
+        RECT 3.460 0.670 3.750 0.730 ;
+        RECT 3.460 0.500 3.520 0.670 ;
+        RECT 3.690 0.500 3.750 0.670 ;
+        RECT 3.460 0.440 3.750 0.500 ;
+        RECT 9.460 0.670 9.750 0.730 ;
+        RECT 9.460 0.500 9.520 0.670 ;
+        RECT 9.690 0.660 9.750 0.670 ;
+        RECT 11.860 0.670 12.150 0.730 ;
+        RECT 11.860 0.660 11.920 0.670 ;
+        RECT 9.690 0.520 11.920 0.660 ;
+        RECT 9.690 0.500 9.750 0.520 ;
+        RECT 9.460 0.440 9.750 0.500 ;
+        RECT 11.860 0.500 11.920 0.520 ;
+        RECT 12.090 0.500 12.150 0.670 ;
+        RECT 11.860 0.440 12.150 0.500 ;
+  END
+END HAX1
+END LIBRARY
+
diff --git a/cells/lef/HAX1.lef.beforemagic b/cells/lef/HAX1.lef.beforemagic
new file mode 100644
index 0000000..41b652d
--- /dev/null
+++ b/cells/lef/HAX1.lef.beforemagic
@@ -0,0 +1,425 @@
+MACRO HAX1
+ CLASS CORE ;
+ FOREIGN HAX1 0 0 ;
+ SIZE 15.84 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+    END
+  END VGND
+
+  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 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 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
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 11.37500000 0.84500000 11.66500000 0.92000000 ;
+        RECT 5.61500000 0.92000000 11.66500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 11.37500000 1.06000000 11.66500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
+    END
+  END A
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 15.84 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 15.84 3.415 ) ;
+      RECT ( 0 3.215 ) ( 15.84 3.245 ) ;
+      RECT ( 0 3.09 ) ( 11.665 3.215 ) ;
+      RECT ( 12.335 3.09 ) ( 15.84 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.09 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
+      RECT ( 7.755 2.965 ) ( 8.085 3.09 ) ;
+      RECT ( 7.755 2.795 ) ( 7.835 2.965 ) ;
+      RECT ( 8.005 2.795 ) ( 8.085 2.965 ) ;
+      RECT ( 7.755 2.715 ) ( 8.085 2.795 ) ;
+      RECT ( 11.835 2.965 ) ( 12.165 3.045 ) ;
+      RECT ( 11.835 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.165 2.965 ) ;
+      RECT ( 11.835 2.715 ) ( 12.165 2.795 ) ;
+      RECT ( 13.515 2.965 ) ( 13.845 3.09 ) ;
+      RECT ( 13.515 2.795 ) ( 13.595 2.965 ) ;
+      RECT ( 13.765 2.795 ) ( 13.845 2.965 ) ;
+      RECT ( 13.515 2.715 ) ( 13.845 2.795 ) ;
+      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.435 2.425 ) ( 3.765 2.505 ) ;
+      RECT ( 3.435 2.255 ) ( 3.515 2.425 ) ;
+      RECT ( 3.685 2.255 ) ( 3.765 2.425 ) ;
+      RECT ( 3.435 2.175 ) ( 3.765 2.255 ) ;
+      RECT ( 4.235 2.09 ) ( 4.405 2.66 ) ;
+      RECT ( 6.075 2.425 ) ( 6.405 2.505 ) ;
+      RECT ( 6.075 2.26 ) ( 6.155 2.425 ) ;
+      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 ( 9.435 2.425 ) ( 9.765 2.505 ) ;
+      RECT ( 9.435 2.255 ) ( 9.515 2.425 ) ;
+      RECT ( 9.685 2.26 ) ( 9.765 2.425 ) ;
+      RECT ( 14.715 2.425 ) ( 15.045 2.505 ) ;
+      RECT ( 14.715 2.26 ) ( 14.795 2.425 ) ;
+      RECT ( 9.685 2.255 ) ( 9.745 2.26 ) ;
+      RECT ( 9.435 2.175 ) ( 9.745 2.255 ) ;
+      RECT ( 14.735 2.255 ) ( 14.795 2.26 ) ;
+      RECT ( 14.965 2.255 ) ( 15.045 2.425 ) ;
+      RECT ( 14.735 2.175 ) ( 15.045 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 ( 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 ( 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 ( 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 ( 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 ( 14.235 2.01 ) ( 14.565 2.09 ) ;
+      RECT ( 14.235 1.84 ) ( 14.315 2.01 ) ;
+      RECT ( 14.485 1.84 ) ( 14.565 2.01 ) ;
+      RECT ( 14.235 1.76 ) ( 14.565 1.84 ) ;
+      RECT ( 8.555 1.155 ) ( 8.725 1.76 ) ;
+      RECT ( 9.995 1.155 ) ( 10.165 1.76 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      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.905 ) ( 5.925 1.075 ) ;
+      RECT ( 5.595 0.825 ) ( 5.925 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 ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 9.915 0.92 ) ( 9.995 1.075 ) ;
+      RECT ( 8.475 0.825 ) ( 8.805 0.905 ) ;
+      RECT ( 9.935 0.905 ) ( 9.995 0.92 ) ;
+      RECT ( 10.165 0.92 ) ( 10.245 1.075 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 0.92 ) ;
+      RECT ( 9.935 0.825 ) ( 10.225 0.905 ) ;
+      RECT ( 10.475 0.75 ) ( 10.645 1.31 ) ;
+      RECT ( 11.355 1.075 ) ( 11.685 1.155 ) ;
+      RECT ( 11.355 0.905 ) ( 11.435 1.075 ) ;
+      RECT ( 11.605 0.92 ) ( 11.685 1.075 ) ;
+      RECT ( 14.235 1.075 ) ( 14.565 1.155 ) ;
+      RECT ( 11.605 0.905 ) ( 11.665 0.92 ) ;
+      RECT ( 11.355 0.825 ) ( 11.665 0.905 ) ;
+      RECT ( 14.235 0.905 ) ( 14.315 1.075 ) ;
+      RECT ( 14.485 0.92 ) ( 14.565 1.075 ) ;
+      RECT ( 14.485 0.905 ) ( 14.545 0.92 ) ;
+      RECT ( 14.235 0.825 ) ( 14.545 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.435 0.67 ) ( 3.765 0.75 ) ;
+      RECT ( 3.435 0.5 ) ( 3.515 0.67 ) ;
+      RECT ( 3.685 0.5 ) ( 3.765 0.67 ) ;
+      RECT ( 6.095 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 3.435 0.42 ) ( 3.765 0.5 ) ;
+      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 ( 7.755 0.67 ) ( 8.085 0.75 ) ;
+      RECT ( 7.755 0.5 ) ( 7.835 0.67 ) ;
+      RECT ( 8.005 0.5 ) ( 8.085 0.67 ) ;
+      RECT ( 7.755 0.42 ) ( 8.085 0.5 ) ;
+      RECT ( 9.435 0.67 ) ( 9.765 0.75 ) ;
+      RECT ( 9.435 0.5 ) ( 9.515 0.67 ) ;
+      RECT ( 9.685 0.5 ) ( 9.765 0.67 ) ;
+      RECT ( 9.435 0.42 ) ( 9.765 0.5 ) ;
+      RECT ( 10.395 0.67 ) ( 10.725 0.75 ) ;
+      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.67 ) ( 12.165 0.75 ) ;
+      RECT ( 11.835 0.5 ) ( 11.915 0.67 ) ;
+      RECT ( 12.085 0.5 ) ( 12.165 0.67 ) ;
+      RECT ( 11.835 0.42 ) ( 12.165 0.5 ) ;
+      RECT ( 13.515 0.67 ) ( 13.845 0.75 ) ;
+      RECT ( 13.515 0.5 ) ( 13.595 0.67 ) ;
+      RECT ( 13.765 0.5 ) ( 13.845 0.67 ) ;
+      RECT ( 13.515 0.42 ) ( 13.845 0.5 ) ;
+      RECT ( 14.715 0.67 ) ( 15.045 0.75 ) ;
+      RECT ( 14.715 0.5 ) ( 14.795 0.67 ) ;
+      RECT ( 14.965 0.5 ) ( 15.045 0.67 ) ;
+      RECT ( 14.715 0.42 ) ( 15.045 0.5 ) ;
+      RECT ( 0 0.085 ) ( 15.84 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 15.84 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 15.84 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 15.84 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 15.84 3.415 ) ;
+      RECT ( 0 3.09 ) ( 15.84 3.245 ) ;
+      RECT ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 11.855 2.965 ) ( 12.145 3.09 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 4.175 2.83 ) ( 4.465 2.89 ) ;
+      RECT ( 4.175 2.66 ) ( 4.235 2.83 ) ;
+      RECT ( 4.405 2.815 ) ( 4.465 2.83 ) ;
+      RECT ( 4.405 2.675 ) ( 10.15 2.815 ) ;
+      RECT ( 11.855 2.795 ) ( 11.915 2.965 ) ;
+      RECT ( 12.085 2.795 ) ( 12.145 2.965 ) ;
+      RECT ( 11.855 2.735 ) ( 12.145 2.795 ) ;
+      RECT ( 13.535 2.965 ) ( 13.825 3.09 ) ;
+      RECT ( 13.535 2.795 ) ( 13.595 2.965 ) ;
+      RECT ( 13.765 2.795 ) ( 13.825 2.965 ) ;
+      RECT ( 13.535 2.735 ) ( 13.825 2.795 ) ;
+      RECT ( 4.405 2.66 ) ( 4.465 2.675 ) ;
+      RECT ( 4.175 2.6 ) ( 4.465 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 ( 0.575 2.195 ) ( 0.865 2.255 ) ;
+      RECT ( 3.455 2.425 ) ( 3.745 2.485 ) ;
+      RECT ( 3.455 2.255 ) ( 3.515 2.425 ) ;
+      RECT ( 3.685 2.41 ) ( 3.745 2.425 ) ;
+      RECT ( 6.095 2.425 ) ( 6.385 2.485 ) ;
+      RECT ( 6.095 2.41 ) ( 6.155 2.425 ) ;
+      RECT ( 3.685 2.27 ) ( 6.155 2.41 ) ;
+      RECT ( 3.685 2.255 ) ( 3.745 2.27 ) ;
+      RECT ( 3.455 2.195 ) ( 3.745 2.255 ) ;
+      RECT ( 6.095 2.255 ) ( 6.155 2.27 ) ;
+      RECT ( 6.325 2.41 ) ( 6.385 2.425 ) ;
+      RECT ( 9.455 2.425 ) ( 9.745 2.485 ) ;
+      RECT ( 6.325 2.27 ) ( 8.71 2.41 ) ;
+      RECT ( 6.325 2.255 ) ( 6.385 2.27 ) ;
+      RECT ( 6.095 2.195 ) ( 6.385 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 ( 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 1.06 ) ( 1.585 1.075 ) ;
+      RECT ( 3.53 1.06 ) ( 3.67 2.195 ) ;
+      RECT ( 8.57 2.07 ) ( 8.71 2.27 ) ;
+      RECT ( 9.455 2.255 ) ( 9.515 2.425 ) ;
+      RECT ( 9.685 2.255 ) ( 9.745 2.425 ) ;
+      RECT ( 9.455 2.195 ) ( 9.745 2.255 ) ;
+      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 ( 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 ( 4.25 1.135 ) ( 4.39 1.78 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      RECT ( 9.53 1.465 ) ( 9.67 2.195 ) ;
+      RECT ( 10.01 2.07 ) ( 10.15 2.675 ) ;
+      RECT ( 14.735 2.425 ) ( 15.025 2.485 ) ;
+      RECT ( 10.49 2.27 ) ( 14.47 2.41 ) ;
+      RECT ( 9.935 2.01 ) ( 10.225 2.07 ) ;
+      RECT ( 9.935 1.84 ) ( 9.995 2.01 ) ;
+      RECT ( 10.165 1.84 ) ( 10.225 2.01 ) ;
+      RECT ( 9.935 1.78 ) ( 10.225 1.84 ) ;
+      RECT ( 10.49 1.54 ) ( 10.63 2.27 ) ;
+      RECT ( 14.33 2.07 ) ( 14.47 2.27 ) ;
+      RECT ( 14.735 2.255 ) ( 14.795 2.425 ) ;
+      RECT ( 14.965 2.255 ) ( 15.025 2.425 ) ;
+      RECT ( 14.735 2.195 ) ( 15.025 2.255 ) ;
+      RECT ( 11.375 2.01 ) ( 11.665 2.07 ) ;
+      RECT ( 11.375 1.84 ) ( 11.435 2.01 ) ;
+      RECT ( 11.605 1.84 ) ( 11.665 2.01 ) ;
+      RECT ( 11.375 1.78 ) ( 11.665 1.84 ) ;
+      RECT ( 14.255 2.01 ) ( 14.545 2.07 ) ;
+      RECT ( 14.255 1.84 ) ( 14.315 2.01 ) ;
+      RECT ( 14.485 1.84 ) ( 14.545 2.01 ) ;
+      RECT ( 14.255 1.78 ) ( 14.545 1.84 ) ;
+      RECT ( 10.415 1.48 ) ( 10.705 1.54 ) ;
+      RECT ( 10.415 1.465 ) ( 10.475 1.48 ) ;
+      RECT ( 9.53 1.325 ) ( 10.475 1.465 ) ;
+      RECT ( 10.415 1.31 ) ( 10.475 1.325 ) ;
+      RECT ( 10.645 1.31 ) ( 10.705 1.48 ) ;
+      RECT ( 10.415 1.25 ) ( 10.705 1.31 ) ;
+      RECT ( 11.45 1.135 ) ( 11.59 1.78 ) ;
+      RECT ( 14.33 1.135 ) ( 14.47 1.78 ) ;
+      RECT ( 1.525 0.92 ) ( 3.67 1.06 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
+      RECT ( 3.53 0.73 ) ( 3.67 0.92 ) ;
+      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 ( 11.375 1.075 ) ( 11.665 1.135 ) ;
+      RECT ( 11.375 1.06 ) ( 11.435 1.075 ) ;
+      RECT ( 5.845 0.92 ) ( 11.435 1.06 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.615 0.845 ) ( 5.905 0.905 ) ;
+      RECT ( 11.375 0.905 ) ( 11.435 0.92 ) ;
+      RECT ( 11.605 0.905 ) ( 11.665 1.075 ) ;
+      RECT ( 11.375 0.845 ) ( 11.665 0.905 ) ;
+      RECT ( 14.255 1.075 ) ( 14.545 1.135 ) ;
+      RECT ( 14.255 0.905 ) ( 14.315 1.075 ) ;
+      RECT ( 14.485 0.905 ) ( 14.545 1.075 ) ;
+      RECT ( 14.255 0.845 ) ( 14.545 0.905 ) ;
+      RECT ( 14.81 0.73 ) ( 14.95 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 ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 3.455 0.67 ) ( 3.745 0.73 ) ;
+      RECT ( 3.455 0.5 ) ( 3.515 0.67 ) ;
+      RECT ( 3.685 0.5 ) ( 3.745 0.67 ) ;
+      RECT ( 3.455 0.44 ) ( 3.745 0.5 ) ;
+      RECT ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.5 ) ( 6.155 0.67 ) ;
+      RECT ( 6.325 0.5 ) ( 6.385 0.67 ) ;
+      RECT ( 6.095 0.44 ) ( 6.385 0.5 ) ;
+      RECT ( 7.775 0.67 ) ( 8.065 0.73 ) ;
+      RECT ( 7.775 0.5 ) ( 7.835 0.67 ) ;
+      RECT ( 8.005 0.5 ) ( 8.065 0.67 ) ;
+      RECT ( 7.775 0.44 ) ( 8.065 0.5 ) ;
+      RECT ( 9.455 0.67 ) ( 9.745 0.73 ) ;
+      RECT ( 9.455 0.5 ) ( 9.515 0.67 ) ;
+      RECT ( 9.685 0.655 ) ( 9.745 0.67 ) ;
+      RECT ( 11.855 0.67 ) ( 12.145 0.73 ) ;
+      RECT ( 11.855 0.655 ) ( 11.915 0.67 ) ;
+      RECT ( 9.685 0.515 ) ( 11.915 0.655 ) ;
+      RECT ( 9.685 0.5 ) ( 9.745 0.515 ) ;
+      RECT ( 9.455 0.44 ) ( 9.745 0.5 ) ;
+      RECT ( 11.855 0.5 ) ( 11.915 0.515 ) ;
+      RECT ( 12.085 0.5 ) ( 12.145 0.67 ) ;
+      RECT ( 11.855 0.44 ) ( 12.145 0.5 ) ;
+      RECT ( 13.535 0.67 ) ( 13.825 0.73 ) ;
+      RECT ( 13.535 0.5 ) ( 13.595 0.67 ) ;
+      RECT ( 13.765 0.5 ) ( 13.825 0.67 ) ;
+      RECT ( 13.535 0.44 ) ( 13.825 0.5 ) ;
+      RECT ( 14.735 0.67 ) ( 15.025 0.73 ) ;
+      RECT ( 14.735 0.5 ) ( 14.795 0.67 ) ;
+      RECT ( 14.965 0.5 ) ( 15.025 0.67 ) ;
+      RECT ( 14.735 0.44 ) ( 15.025 0.5 ) ;
+      RECT ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 6.17 0.24 ) ( 6.31 0.44 ) ;
+      RECT ( 7.85 0.24 ) ( 7.99 0.44 ) ;
+      RECT ( 13.61 0.24 ) ( 13.75 0.44 ) ;
+      RECT ( 0 0.085 ) ( 15.84 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 7.835 0.085 ) ;
+      RECT ( 8.005 -0.085 ) ( 15.84 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 15.84 -0.085 ) ;
+
+  end
+END HAX1
diff --git a/cells/lef/HAX1.lef.temp b/cells/lef/HAX1.lef.temp
new file mode 100644
index 0000000..6d99b7e
--- /dev/null
+++ b/cells/lef/HAX1.lef.temp
@@ -0,0 +1,92 @@
+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 li1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+    END
+  END GND
+
+  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 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 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
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 11.37500000 0.84500000 11.66500000 0.92000000 ;
+        RECT 5.61500000 0.92000000 11.66500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 11.37500000 1.06000000 11.66500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
+    END
+  END A
+
+END HAX1
diff --git a/cells/lef/INV.lef b/cells/lef/INV.lef
index c4ff98d..d1c27bc 100644
--- a/cells/lef/INV.lef
+++ b/cells/lef/INV.lef
@@ -16,6 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -24,6 +36,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 0.000 -0.240 2.880 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
   END VGND
@@ -51,14 +72,27 @@
   END A
   OBS
       LAYER li1 ;
-        RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.760 2.740 2.090 3.090 ;
-        RECT 0.560 2.180 0.890 2.510 ;
-        RECT 1.280 1.760 1.610 2.090 ;
-        RECT 1.280 0.830 1.610 1.160 ;
-        RECT 0.560 0.420 0.890 0.750 ;
-        RECT 1.760 0.240 2.090 0.590 ;
-        RECT 0.000 -0.240 2.880 0.240 ;
+        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 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 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
   END
 END INV
 END LIBRARY
diff --git a/cells/lef/INV.lef.beforemagic b/cells/lef/INV.lef.beforemagic
index 53f242b..b0e3fca 100644
--- a/cells/lef/INV.lef.beforemagic
+++ b/cells/lef/INV.lef.beforemagic
@@ -59,17 +59,76 @@
 
 
   OBS
-    LAYER li1 ;
-      RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      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 ;
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      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 ( 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 ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      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 ( 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 ( 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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
 
   end
 END INV
diff --git a/cells/lef/INVX1.lef b/cells/lef/INVX1.lef
index c033b16..7882429 100644
--- a/cells/lef/INVX1.lef
+++ b/cells/lef/INVX1.lef
@@ -16,6 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -24,6 +36,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 0.000 -0.240 2.880 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
   END VGND
@@ -51,14 +72,27 @@
   END A
   OBS
       LAYER li1 ;
-        RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.760 2.740 2.090 3.090 ;
-        RECT 0.560 2.180 0.890 2.510 ;
-        RECT 1.280 1.760 1.610 2.090 ;
-        RECT 1.280 0.830 1.610 1.160 ;
-        RECT 0.560 0.420 0.890 0.750 ;
-        RECT 1.760 0.240 2.090 0.590 ;
-        RECT 0.000 -0.240 2.880 0.240 ;
+        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 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 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
   END
 END INVX1
 END LIBRARY
diff --git a/cells/lef/INVX1.lef.beforemagic b/cells/lef/INVX1.lef.beforemagic
index 7189061..a93cb39 100644
--- a/cells/lef/INVX1.lef.beforemagic
+++ b/cells/lef/INVX1.lef.beforemagic
@@ -59,17 +59,76 @@
 
 
   OBS
-    LAYER li1 ;
-      RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      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 ;
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      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 ( 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 ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      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 ( 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 ( 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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
 
   end
 END INVX1
diff --git a/cells/lef/INVX2.lef b/cells/lef/INVX2.lef
index b92c1ea..6d608c3 100644
--- a/cells/lef/INVX2.lef
+++ b/cells/lef/INVX2.lef
@@ -16,6 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 2.880 3.570 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -24,6 +36,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 0.000 -0.240 2.880 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
   END VGND
@@ -51,14 +72,27 @@
   END A
   OBS
       LAYER li1 ;
-        RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.760 2.740 2.090 3.090 ;
-        RECT 0.560 2.180 0.890 2.510 ;
-        RECT 1.280 1.760 1.610 2.090 ;
-        RECT 1.280 0.830 1.610 1.160 ;
-        RECT 0.560 0.420 0.890 0.750 ;
-        RECT 1.760 0.240 2.090 0.590 ;
-        RECT 0.000 -0.240 2.880 0.240 ;
+        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 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 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 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 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
   END
 END INVX2
 END LIBRARY
diff --git a/cells/lef/INVX2.lef.beforemagic b/cells/lef/INVX2.lef.beforemagic
index 9d100a4..0ce2fac 100644
--- a/cells/lef/INVX2.lef.beforemagic
+++ b/cells/lef/INVX2.lef.beforemagic
@@ -59,17 +59,76 @@
 
 
   OBS
-    LAYER li1 ;
-      RECT ( 0 -0.24 ) ( 2.88 0.24 ) ;
-      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 ;
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      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 ( 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 ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 2.88 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 2.88 3.415 ) ;
+      RECT ( 0 3.09 ) ( 2.88 3.245 ) ;
+      RECT ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      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 ( 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 ( 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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 0 0.085 ) ( 2.88 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 2.88 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 2.88 -0.085 ) ;
 
   end
 END INVX2
diff --git a/cells/lef/INVX4.lef b/cells/lef/INVX4.lef
index 8aca2de..e3c4a54 100644
--- a/cells/lef/INVX4.lef
+++ b/cells/lef/INVX4.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 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 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 4.320 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 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -36,18 +36,15 @@
     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 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 4.320 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 0.000 -0.240 4.320 0.240 ;
     END
   END VGND
@@ -57,14 +54,14 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 2.410 0.870 2.490 ;
+        RECT 0.820 2.410 1.110 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 0.820 2.270 3.510 2.410 ;
+        RECT 0.820 2.200 1.110 2.270 ;
         RECT 3.220 2.200 3.510 2.270 ;
-        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 0.890 0.730 1.030 2.200 ;
         RECT 3.290 0.730 3.430 2.200 ;
-        RECT 0.580 0.440 0.870 0.730 ;
+        RECT 0.820 0.440 1.110 0.730 ;
         RECT 3.220 0.440 3.510 0.730 ;
     END
   END Y
@@ -87,13 +84,13 @@
   END A
   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 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.110 2.260 ;
         RECT 3.200 2.180 3.530 2.260 ;
         RECT 1.280 2.010 1.610 2.090 ;
         RECT 1.280 1.840 1.360 2.010 ;
@@ -104,18 +101,24 @@
         RECT 2.970 1.840 3.050 2.010 ;
         RECT 2.720 1.760 3.050 1.840 ;
         RECT 1.280 1.080 1.610 1.160 ;
-        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.280 0.920 1.360 1.080 ;
+        RECT 1.300 0.910 1.360 0.920 ;
         RECT 1.530 0.910 1.610 1.080 ;
-        RECT 1.280 0.830 1.610 0.910 ;
+        RECT 1.300 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.920 3.050 1.080 ;
         RECT 2.970 0.910 3.030 0.920 ;
         RECT 2.720 0.830 3.030 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 0.800 0.670 1.130 0.750 ;
+        RECT 0.800 0.500 0.880 0.670 ;
+        RECT 1.050 0.500 1.130 0.670 ;
+        RECT 1.780 0.670 2.090 0.750 ;
+        RECT 1.780 0.660 1.840 0.670 ;
+        RECT 0.800 0.420 1.130 0.500 ;
+        RECT 1.760 0.500 1.840 0.660 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
         RECT 3.200 0.670 3.530 0.750 ;
         RECT 3.200 0.500 3.280 0.670 ;
         RECT 3.450 0.500 3.530 0.670 ;
diff --git a/cells/lef/INVX4.lef.beforemagic b/cells/lef/INVX4.lef.beforemagic
index 6af5fd7..819d5d0 100644
--- a/cells/lef/INVX4.lef.beforemagic
+++ b/cells/lef/INVX4.lef.beforemagic
@@ -38,14 +38,14 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 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 ;
     END
   END Y
@@ -73,26 +73,19 @@
   OBS
     LAYER locali ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      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 ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
       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 ) ;
@@ -106,67 +99,53 @@
       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.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.275 0.825 ) ( 1.605 0.905 ) ;
+      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.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 ( 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 ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      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 ( 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 ( 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 ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      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.995 ) ( 1.585 2.01 ) ;
@@ -189,29 +168,22 @@
       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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
       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 ( 1.85 0.24 ) ( 1.99 0.44 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
diff --git a/cells/lef/INVX4.lef.temp b/cells/lef/INVX4.lef.temp
index 2f0a182..fbfb333 100644
--- a/cells/lef/INVX4.lef.temp
+++ b/cells/lef/INVX4.lef.temp
@@ -38,14 +38,14 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 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 ;
     END
   END Y
diff --git a/cells/lef/INVX8.lef b/cells/lef/INVX8.lef
index 5764cca..66a9140 100644
--- a/cells/lef/INVX8.lef
+++ b/cells/lef/INVX8.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 7.200 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 ;
-        RECT 4.660 2.990 4.950 3.090 ;
-        RECT 4.660 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.950 2.990 ;
-        RECT 4.660 2.760 4.950 2.820 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 4.660 2.970 4.950 3.090 ;
+        RECT 4.660 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.950 2.970 ;
+        RECT 4.660 2.740 4.950 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 7.200 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 4.640 2.990 4.970 3.090 ;
-        RECT 4.640 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.970 2.990 ;
-        RECT 4.640 2.740 4.970 2.820 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,18 +40,20 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
+        RECT 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 7.200 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 4.640 0.510 4.970 0.590 ;
-        RECT 4.640 0.340 4.720 0.510 ;
-        RECT 4.890 0.340 4.970 0.510 ;
-        RECT 4.640 0.240 4.970 0.340 ;
+        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 4.640 0.420 4.970 0.500 ;
+        RECT 4.720 0.240 4.890 0.420 ;
         RECT 0.000 -0.240 7.200 0.240 ;
     END
   END VGND
@@ -88,27 +86,31 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        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.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.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 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 ;
+        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 ;
     END
   END A
   OBS
       LAYER li1 ;
+        RECT 4.640 2.970 4.970 3.050 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
         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 ;
@@ -139,33 +141,39 @@
         RECT 5.600 1.760 5.930 1.840 ;
         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 1.530 0.920 1.610 1.080 ;
         RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
         RECT 2.720 0.910 2.800 1.080 ;
         RECT 2.970 0.910 3.050 1.080 ;
         RECT 4.160 1.080 4.490 1.160 ;
         RECT 4.160 0.920 4.240 1.080 ;
         RECT 2.720 0.830 3.050 0.910 ;
         RECT 4.180 0.910 4.240 0.920 ;
-        RECT 4.410 0.910 4.490 1.080 ;
-        RECT 4.180 0.830 4.490 0.910 ;
+        RECT 4.410 0.920 4.490 1.080 ;
         RECT 5.600 1.080 5.930 1.160 ;
+        RECT 4.410 0.910 4.470 0.920 ;
+        RECT 4.180 0.830 4.470 0.910 ;
         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 5.850 0.920 5.930 1.080 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.600 0.830 5.910 0.910 ;
         RECT 0.800 0.670 1.110 0.750 ;
         RECT 0.800 0.500 0.880 0.670 ;
         RECT 1.050 0.660 1.110 0.670 ;
-        RECT 3.680 0.670 4.010 0.750 ;
+        RECT 1.760 0.670 2.090 0.750 ;
         RECT 1.050 0.500 1.130 0.660 ;
         RECT 0.800 0.420 1.130 0.500 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.680 0.670 4.010 0.750 ;
         RECT 3.680 0.500 3.760 0.670 ;
         RECT 3.930 0.500 4.010 0.670 ;
-        RECT 6.100 0.670 6.410 0.750 ;
-        RECT 6.100 0.660 6.160 0.670 ;
         RECT 3.680 0.420 4.010 0.500 ;
-        RECT 6.080 0.500 6.160 0.660 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 6.080 0.500 6.160 0.670 ;
         RECT 6.330 0.500 6.410 0.670 ;
         RECT 6.080 0.420 6.410 0.500 ;
   END
diff --git a/cells/lef/INVX8.lef.beforemagic b/cells/lef/INVX8.lef.beforemagic
index 4aa822d..5603c50 100644
--- a/cells/lef/INVX8.lef.beforemagic
+++ b/cells/lef/INVX8.lef.beforemagic
@@ -63,23 +63,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        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.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.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 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 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 ;
     END
   END A
 
@@ -87,31 +87,19 @@
   OBS
     LAYER locali ;
       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 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.215 ) ( 7.2 3.245 ) ;
+      RECT ( 0 3.09 ) ( 4.465 3.215 ) ;
+      RECT ( 5.135 3.09 ) ( 7.2 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.045 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
       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 ) ;
@@ -145,88 +133,63 @@
       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 ( 1.525 0.92 ) ( 1.605 1.075 ) ;
       RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
       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 ( 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.175 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 ( 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 ( 3.675 0.67 ) ( 4.005 0.75 ) ;
+      RECT ( 1.755 0.67 ) ( 2.085 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 ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.675 0.67 ) ( 4.005 0.75 ) ;
       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 ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      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 ( 4.635 0.24 ) ( 4.965 0.34 ) ;
+      RECT ( 4.715 0.24 ) ( 4.885 0.42 ) ;
       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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
       RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 4.655 2.965 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.945 2.965 ) ;
+      RECT ( 4.655 2.735 ) ( 4.945 2.795 ) ;
       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 ) ;
@@ -248,18 +211,27 @@
       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 ( 1.525 1.995 ) ( 1.585 2.01 ) ;
       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 ( 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.995 ) ( 3.025 2.01 ) ;
       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.175 1.995 ) ( 4.235 2.01 ) ;
+      RECT ( 2.965 1.855 ) ( 4.235 1.995 ) ;
+      RECT ( 2.965 1.84 ) ( 3.025 1.855 ) ;
+      RECT ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.175 1.84 ) ( 4.235 1.855 ) ;
+      RECT ( 4.405 1.995 ) ( 4.465 2.01 ) ;
       RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
-      RECT ( 5.615 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.615 1.995 ) ( 5.675 2.01 ) ;
+      RECT ( 4.405 1.855 ) ( 5.675 1.995 ) ;
+      RECT ( 4.405 1.84 ) ( 4.465 1.855 ) ;
+      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.37 1.135 ) ( 1.51 1.78 ) ;
@@ -268,27 +240,18 @@
       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.525 0.905 ) ( 1.585 1.075 ) ;
       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 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 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 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 0.905 ) ( 5.675 0.92 ) ;
+      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.17 0.73 ) ( 6.31 2.195 ) ;
@@ -296,6 +259,10 @@
       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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 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 ) ;
@@ -307,23 +274,10 @@
       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 ( 1.85 0.24 ) ( 1.99 0.44 ) ;
       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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
       RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
 
   end
diff --git a/cells/lef/INVX8.lef.temp b/cells/lef/INVX8.lef.temp
index c90617a..9b925e6 100644
--- a/cells/lef/INVX8.lef.temp
+++ b/cells/lef/INVX8.lef.temp
@@ -63,23 +63,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        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.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.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 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 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 ;
     END
   END A
 
diff --git a/cells/lef/MARTIN1989.lef b/cells/lef/MARTIN1989.lef
new file mode 100644
index 0000000..56c5f33
--- /dev/null
+++ b/cells/lef/MARTIN1989.lef
@@ -0,0 +1,184 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO MARTIN1989
+  CLASS CORE ;
+  FOREIGN MARTIN1989 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+        RECT 4.660 2.970 4.950 3.090 ;
+        RECT 4.660 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.950 2.970 ;
+        RECT 4.660 2.740 4.950 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        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 0.650 0.240 0.790 0.440 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 4.660 0.670 4.970 0.750 ;
+        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 4.640 0.500 4.720 0.660 ;
+        RECT 4.890 0.500 4.970 0.670 ;
+        RECT 4.640 0.420 4.970 0.500 ;
+        RECT 4.720 0.240 4.890 0.420 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+  END VGND
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 6.100 2.200 6.390 2.490 ;
+        RECT 4.180 0.850 4.470 1.140 ;
+        RECT 4.250 0.660 4.390 0.850 ;
+        RECT 6.170 0.730 6.310 2.200 ;
+        RECT 6.100 0.660 6.390 0.730 ;
+        RECT 4.250 0.520 6.390 0.660 ;
+        RECT 6.100 0.440 6.390 0.520 ;
+    END
+  END C
+  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 ;
+    SHAPE ABUTMENT ;
+    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
+  OBS
+      LAYER li1 ;
+        RECT 4.640 2.970 4.970 3.050 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
+        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 6.080 2.430 6.410 2.510 ;
+        RECT 6.080 2.260 6.160 2.430 ;
+        RECT 6.330 2.260 6.410 2.430 ;
+        RECT 3.220 2.180 3.530 2.260 ;
+        RECT 6.100 2.180 6.410 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 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 4.240 1.160 4.410 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.920 3.050 1.080 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
+        RECT 4.160 0.910 4.240 1.080 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
+        RECT 5.600 1.080 5.930 1.160 ;
+        RECT 5.600 0.910 5.680 1.080 ;
+        RECT 5.850 0.920 5.930 1.080 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.600 0.830 5.910 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 3.200 0.670 3.530 0.750 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 6.080 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+      LAYER met1 ;
+        RECT 3.220 2.430 3.510 2.490 ;
+        RECT 3.220 2.260 3.280 2.430 ;
+        RECT 3.450 2.260 3.510 2.430 ;
+        RECT 3.220 2.200 3.510 2.260 ;
+        RECT 3.290 2.000 3.430 2.200 ;
+        RECT 5.620 2.010 5.910 2.070 ;
+        RECT 5.620 2.000 5.680 2.010 ;
+        RECT 3.290 1.860 5.680 2.000 ;
+        RECT 3.290 0.730 3.430 1.860 ;
+        RECT 5.620 1.840 5.680 1.860 ;
+        RECT 5.850 1.840 5.910 2.010 ;
+        RECT 5.620 1.780 5.910 1.840 ;
+        RECT 5.690 1.140 5.830 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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+  END
+END MARTIN1989
+END LIBRARY
+
diff --git a/cells/lef/MARTIN1989.lef.beforemagic b/cells/lef/MARTIN1989.lef.beforemagic
new file mode 100644
index 0000000..0f66421
--- /dev/null
+++ b/cells/lef/MARTIN1989.lef.beforemagic
@@ -0,0 +1,240 @@
+MACRO MARTIN1989
+ CLASS CORE ;
+ FOREIGN MARTIN1989 0 0 ;
+ SIZE 7.2 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+        RECT 4.25000000 0.51500000 6.38500000 0.65500000 ;
+        RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  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 ;
+   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
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.215 ) ( 7.2 3.245 ) ;
+      RECT ( 0 3.09 ) ( 4.465 3.215 ) ;
+      RECT ( 5.135 3.09 ) ( 7.2 3.215 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.045 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.26 ) ( 3.275 2.425 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.26 ) ;
+      RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
+      RECT ( 6.075 2.425 ) ( 6.405 2.505 ) ;
+      RECT ( 6.075 2.26 ) ( 6.155 2.425 ) ;
+      RECT ( 3.215 2.175 ) ( 3.525 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.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 ( 4.235 1.155 ) ( 4.405 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 ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      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.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.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.195 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      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 ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      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 ( 4.715 0.24 ) ( 4.885 0.42 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      RECT ( 4.655 2.965 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.945 2.965 ) ;
+      RECT ( 4.655 2.735 ) ( 4.945 2.795 ) ;
+      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 ( 6.095 2.425 ) ( 6.385 2.485 ) ;
+      RECT ( 6.095 2.255 ) ( 6.155 2.425 ) ;
+      RECT ( 6.325 2.255 ) ( 6.385 2.425 ) ;
+      RECT ( 6.095 2.195 ) ( 6.385 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 ( 3.29 1.995 ) ( 3.43 2.195 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.995 ) ( 5.675 2.01 ) ;
+      RECT ( 3.29 1.855 ) ( 5.675 1.995 ) ;
+      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 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 ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      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 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 ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.67 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 4.25 0.655 ) ( 4.39 0.845 ) ;
+      RECT ( 6.17 0.73 ) ( 6.31 2.195 ) ;
+      RECT ( 6.095 0.67 ) ( 6.385 0.73 ) ;
+      RECT ( 6.095 0.655 ) ( 6.155 0.67 ) ;
+      RECT ( 4.25 0.515 ) ( 6.155 0.655 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 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.65 0.24 ) ( 0.79 0.44 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+
+  end
+END MARTIN1989
diff --git a/cells/lef/MARTIN1989.lef.temp b/cells/lef/MARTIN1989.lef.temp
new file mode 100644
index 0000000..4764b56
--- /dev/null
+++ b/cells/lef/MARTIN1989.lef.temp
@@ -0,0 +1,77 @@
+MACRO MARTIN1989
+ CLASS CORE ;
+ FOREIGN MARTIN1989 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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+        RECT 4.25000000 0.51500000 6.38500000 0.65500000 ;
+        RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  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 ;
+   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
+
+END MARTIN1989
diff --git a/cells/lef/MUX2X1.lef b/cells/lef/MUX2X1.lef
index 66bb32b..43b832d 100644
--- a/cells/lef/MUX2X1.lef
+++ b/cells/lef/MUX2X1.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 8.640 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 ;
-        RECT 7.540 2.990 7.830 3.090 ;
-        RECT 7.540 2.820 7.600 2.990 ;
-        RECT 7.770 2.820 7.830 2.990 ;
-        RECT 7.540 2.760 7.830 2.820 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 7.540 2.970 7.830 3.090 ;
+        RECT 7.540 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.830 2.970 ;
+        RECT 7.540 2.740 7.830 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 8.640 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 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,26 +40,20 @@
     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 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 7.540 0.670 7.830 0.730 ;
+        RECT 7.540 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.830 0.670 ;
+        RECT 7.540 0.440 7.830 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 7.610 0.240 7.750 0.440 ;
         RECT 0.000 -0.240 8.640 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 8.640 0.240 ;
     END
   END VGND
@@ -73,39 +63,9 @@
     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 5.140 0.660 5.430 0.730 ;
-        RECT 6.170 0.660 6.310 2.270 ;
-        RECT 5.140 0.520 6.310 0.660 ;
-        RECT 5.140 0.440 5.430 0.520 ;
+        RECT 4.660 1.780 4.950 2.490 ;
     END
   END Y
-  PIN S
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 1.300 1.390 1.590 1.680 ;
-        RECT 1.370 1.140 1.510 1.390 ;
-        RECT 1.300 1.060 1.590 1.140 ;
-        RECT 3.220 1.060 3.510 1.140 ;
-        RECT 1.300 0.920 3.510 1.060 ;
-        RECT 1.300 0.850 1.590 0.920 ;
-        RECT 3.220 0.850 3.510 0.920 ;
-    END
-  END S
-  PIN A
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    PORT
-      LAYER met1 ;
-        RECT 2.740 1.250 3.030 1.540 ;
-    END
-  END A
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -117,17 +77,48 @@
         RECT 7.060 0.850 7.350 1.140 ;
     END
   END B
+  PIN S
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 5.620 2.000 5.910 2.070 ;
+        RECT 5.620 1.860 6.310 2.000 ;
+        RECT 5.620 1.780 5.910 1.860 ;
+        RECT 1.300 1.060 1.590 1.140 ;
+        RECT 4.180 1.060 4.470 1.140 ;
+        RECT 1.300 0.920 4.470 1.060 ;
+        RECT 1.300 0.850 1.590 0.920 ;
+        RECT 4.180 0.850 4.470 0.920 ;
+        RECT 4.250 0.660 4.390 0.850 ;
+        RECT 6.170 0.660 6.310 1.860 ;
+        RECT 4.250 0.520 6.310 0.660 ;
+    END
+  END S
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.250 3.030 1.540 ;
+    END
+  END A
   OBS
       LAYER li1 ;
+        RECT 7.520 2.970 7.850 3.050 ;
+        RECT 7.520 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.850 2.970 ;
+        RECT 7.520 2.720 7.850 2.800 ;
         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 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 0.560 2.180 0.890 2.260 ;
-        RECT 1.360 2.090 1.530 2.260 ;
-        RECT 5.120 2.180 5.450 2.260 ;
+        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 4.640 2.180 4.970 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 ;
@@ -136,61 +127,66 @@
         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 5.620 2.010 5.930 2.090 ;
+        RECT 4.160 2.010 4.470 2.090 ;
+        RECT 5.600 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 1.840 5.680 2.010 ;
         RECT 5.850 1.840 5.930 2.010 ;
+        RECT 4.160 1.760 4.490 1.840 ;
+        RECT 1.360 1.160 1.530 1.760 ;
+        RECT 2.800 1.480 2.970 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.920 1.610 1.080 ;
+        RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        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 1.840 ;
         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 1.360 1.620 1.530 1.760 ;
-        RECT 2.800 1.480 2.970 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 ;
-        RECT 1.280 0.830 1.610 0.910 ;
-        RECT 2.720 1.080 3.050 1.160 ;
-        RECT 4.160 1.080 4.490 1.160 ;
-        RECT 2.720 0.910 2.800 1.080 ;
-        RECT 2.970 0.910 3.050 1.080 ;
-        RECT 3.450 0.910 4.240 1.080 ;
-        RECT 4.410 0.910 4.490 1.080 ;
         RECT 5.600 1.080 5.930 1.160 ;
-        RECT 5.600 0.920 5.680 1.080 ;
-        RECT 2.720 0.830 3.050 0.910 ;
-        RECT 4.160 0.830 4.490 0.910 ;
-        RECT 5.620 0.910 5.680 0.920 ;
+        RECT 5.600 0.910 5.680 1.080 ;
         RECT 5.850 0.910 5.930 1.080 ;
-        RECT 5.620 0.830 5.930 0.910 ;
+        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 7.290 0.920 7.370 1.080 ;
+        RECT 7.290 0.910 7.350 0.920 ;
+        RECT 7.040 0.830 7.350 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 5.120 0.670 5.450 0.750 ;
-        RECT 5.120 0.500 5.200 0.670 ;
-        RECT 5.370 0.500 5.450 0.670 ;
-        RECT 5.120 0.420 5.450 0.500 ;
+        RECT 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 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 4.640 0.420 4.970 0.500 ;
+        RECT 7.520 0.670 7.850 0.750 ;
+        RECT 7.520 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.850 0.670 ;
+        RECT 7.520 0.420 7.850 0.500 ;
       LAYER met1 ;
         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 0.580 2.200 0.870 2.260 ;
-        RECT 1.300 2.430 1.590 2.490 ;
-        RECT 1.300 2.260 1.360 2.430 ;
-        RECT 1.530 2.410 1.590 2.430 ;
-        RECT 1.530 2.270 4.870 2.410 ;
-        RECT 1.530 2.260 1.590 2.270 ;
-        RECT 1.300 2.200 1.590 2.260 ;
         RECT 0.650 2.000 0.790 2.200 ;
         RECT 4.180 2.010 4.470 2.070 ;
         RECT 4.180 2.000 4.240 2.010 ;
@@ -198,19 +194,12 @@
         RECT 0.650 0.730 0.790 1.860 ;
         RECT 4.180 1.840 4.240 1.860 ;
         RECT 4.410 1.840 4.470 2.010 ;
-        RECT 4.730 2.000 4.870 2.270 ;
-        RECT 5.620 2.010 5.910 2.070 ;
-        RECT 5.620 2.000 5.680 2.010 ;
-        RECT 4.730 1.860 5.680 2.000 ;
         RECT 4.180 1.780 4.470 1.840 ;
-        RECT 5.620 1.840 5.680 1.860 ;
-        RECT 5.850 1.840 5.910 2.010 ;
-        RECT 5.620 1.780 5.910 1.840 ;
-        RECT 4.250 1.060 4.390 1.780 ;
+        RECT 4.250 1.600 4.390 1.780 ;
+        RECT 4.250 1.460 5.830 1.600 ;
+        RECT 5.690 1.140 5.830 1.460 ;
         RECT 5.620 1.080 5.910 1.140 ;
-        RECT 5.620 1.060 5.680 1.080 ;
-        RECT 4.250 0.920 5.680 1.060 ;
-        RECT 5.620 0.910 5.680 0.920 ;
+        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 0.580 0.670 0.870 0.730 ;
diff --git a/cells/lef/MUX2X1.lef.beforemagic b/cells/lef/MUX2X1.lef.beforemagic
index 4ccc250..8ff2a3a 100644
--- a/cells/lef/MUX2X1.lef.beforemagic
+++ b/cells/lef/MUX2X1.lef.beforemagic
@@ -38,44 +38,10 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-        RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
-        RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 4.65500000 1.78000000 4.94500000 2.48500000 ;
     END
   END Y
 
-  PIN S
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 3.21500000 0.84500000 3.50500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.50500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 3.21500000 1.06000000 3.50500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
-    END
-  END S
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,47 +55,63 @@
     END
   END B
 
+  PIN S
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+        RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+    END
+  END S
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+    END
+  END A
+
 
   OBS
     LAYER locali ;
       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 3.245 ) ( 7.595 3.415 ) ;
+      RECT ( 7.765 3.245 ) ( 8.64 3.415 ) ;
+      RECT ( 0 3.215 ) ( 8.64 3.245 ) ;
+      RECT ( 0 3.09 ) ( 7.345 3.215 ) ;
+      RECT ( 8.015 3.09 ) ( 8.64 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 7.515 2.965 ) ( 7.845 3.045 ) ;
+      RECT ( 7.515 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.845 2.965 ) ;
+      RECT ( 7.515 2.715 ) ( 7.845 2.795 ) ;
       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 ( 4.635 2.425 ) ( 4.965 2.505 ) ;
+      RECT ( 4.635 2.255 ) ( 4.715 2.425 ) ;
+      RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
+      RECT ( 4.635 2.18 ) ( 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 ) ;
@@ -138,121 +120,85 @@
       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 2.01 ) ( 4.465 2.09 ) ;
+      RECT ( 5.595 2.01 ) ( 5.925 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 ( 1.355 1.155 ) ( 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.92 ) ( 1.605 1.075 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      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 1.84 ) ;
+      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 ( 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.595 0.905 ) ( 5.675 1.075 ) ;
       RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
-      RECT ( 5.615 0.825 ) ( 5.925 0.905 ) ;
+      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 ( 7.285 0.92 ) ( 7.365 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.345 0.92 ) ;
+      RECT ( 7.035 0.825 ) ( 7.345 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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 7.515 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 0.67 ) ;
+      RECT ( 7.515 0.42 ) ( 7.845 0.5 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 8.64 0.085 ) ;
       RECT ( 0 -0.24 ) ( 8.64 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 7.595 3.415 ) ;
+      RECT ( 7.765 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 7.535 2.965 ) ( 7.825 3.09 ) ;
+      RECT ( 7.535 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.825 2.965 ) ;
+      RECT ( 7.535 2.735 ) ( 7.825 2.795 ) ;
       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 ( 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 ( 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 ) ;
@@ -260,58 +206,49 @@
       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 ( 4.655 2.01 ) ( 4.945 2.255 ) ;
+      RECT ( 4.655 1.84 ) ( 4.715 2.01 ) ;
+      RECT ( 4.885 1.84 ) ( 4.945 2.01 ) ;
+      RECT ( 4.655 1.78 ) ( 4.945 1.84 ) ;
+      RECT ( 5.615 2.01 ) ( 5.905 2.07 ) ;
+      RECT ( 5.615 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 1.995 ) ( 5.905 2.01 ) ;
+      RECT ( 7.055 2.01 ) ( 7.345 2.07 ) ;
+      RECT ( 5.845 1.855 ) ( 6.31 1.995 ) ;
+      RECT ( 5.845 1.84 ) ( 5.905 1.855 ) ;
       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 ( 4.25 1.6 ) ( 4.39 1.78 ) ;
       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 ( 4.25 1.46 ) ( 5.83 1.6 ) ;
       RECT ( 2.735 1.25 ) ( 3.025 1.31 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.46 ) ;
       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 ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 4.235 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 ( 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 ( 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.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 ( 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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 4.25 0.655 ) ( 4.39 0.845 ) ;
+      RECT ( 6.17 0.655 ) ( 6.31 1.855 ) ;
       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 ) ;
@@ -320,34 +257,17 @@
       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 ( 4.25 0.515 ) ( 6.31 0.655 ) ;
+      RECT ( 7.535 0.67 ) ( 7.825 0.73 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 7.535 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.825 0.67 ) ;
+      RECT ( 7.535 0.44 ) ( 7.825 0.5 ) ;
+      RECT ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 7.61 0.24 ) ( 7.75 0.44 ) ;
       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.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 8.64 0.085 ) ;
       RECT ( 0 -0.24 ) ( 8.64 -0.085 ) ;
 
   end
diff --git a/cells/lef/MUX2X1.lef.temp b/cells/lef/MUX2X1.lef.temp
index a8ffb18..89e967d 100644
--- a/cells/lef/MUX2X1.lef.temp
+++ b/cells/lef/MUX2X1.lef.temp
@@ -38,44 +38,10 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-        RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
-        RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 4.65500000 1.78000000 4.94500000 2.48500000 ;
     END
   END Y
 
-  PIN S
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 3.21500000 0.84500000 3.50500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.50500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 3.21500000 1.06000000 3.50500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
-    END
-  END S
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,4 +55,36 @@
     END
   END B
 
+  PIN S
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+        RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+    END
+  END S
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+    END
+  END A
+
 END MUX2X1
diff --git a/cells/lef/NAND2X1.lef b/cells/lef/NAND2X1.lef
index b99b4c6..2bf7e3e 100644
--- a/cells/lef/NAND2X1.lef
+++ b/cells/lef/NAND2X1.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 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 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 4.320 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 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -36,18 +36,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
   END VGND
@@ -93,16 +90,16 @@
         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 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 3.200 2.180 3.530 2.260 ;
+        RECT 0.560 2.180 0.890 2.260 ;
+        RECT 3.220 2.180 3.530 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.030 2.090 ;
+        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 ;
@@ -117,7 +114,12 @@
         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 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
         RECT 0.560 0.420 0.890 0.500 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
   END
 END NAND2X1
 END LIBRARY
diff --git a/cells/lef/NAND2X1.lef.beforemagic b/cells/lef/NAND2X1.lef.beforemagic
index 1ea7356..7bb5e92 100644
--- a/cells/lef/NAND2X1.lef.beforemagic
+++ b/cells/lef/NAND2X1.lef.beforemagic
@@ -78,37 +78,29 @@
   OBS
     LAYER locali ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
       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.195 2.26 ) ( 3.275 2.425 ) ;
+      RECT ( 0.555 2.175 ) ( 0.885 2.255 ) ;
+      RECT ( 3.215 2.255 ) ( 3.275 2.26 ) ;
       RECT ( 3.445 2.255 ) ( 3.525 2.425 ) ;
-      RECT ( 3.195 2.175 ) ( 3.525 2.255 ) ;
+      RECT ( 3.215 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 2.01 ) ( 3.045 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.965 1.84 ) ( 3.045 2.01 ) ;
       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 ) ;
@@ -121,40 +113,25 @@
       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.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
       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 ) ;
@@ -189,21 +166,14 @@
       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 ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      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 ( 3.29 0.24 ) ( 3.43 0.44 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 4.32 0.085 ) ;
       RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
 
   end
diff --git a/cells/lef/NAND3X1.lef b/cells/lef/NAND3X1.lef
index 2c54211..125d8a8 100644
--- a/cells/lef/NAND3X1.lef
+++ b/cells/lef/NAND3X1.lef
@@ -16,26 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 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 ;
-        RECT 4.660 2.990 4.950 3.090 ;
-        RECT 4.660 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.950 2.990 ;
-        RECT 4.660 2.760 4.950 2.820 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 4.660 2.970 4.950 3.090 ;
+        RECT 4.660 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.950 2.970 ;
+        RECT 4.660 2.740 4.950 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 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 4.640 2.990 4.970 3.090 ;
-        RECT 4.640 2.820 4.720 2.990 ;
-        RECT 4.890 2.820 4.970 2.990 ;
-        RECT 4.640 2.740 4.970 2.820 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -44,18 +40,15 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 4.660 0.510 4.950 0.570 ;
-        RECT 4.660 0.340 4.720 0.510 ;
-        RECT 4.890 0.340 4.950 0.510 ;
-        RECT 4.660 0.240 4.950 0.340 ;
+        RECT 4.660 0.670 4.950 0.730 ;
+        RECT 4.660 0.500 4.720 0.670 ;
+        RECT 4.890 0.500 4.950 0.670 ;
+        RECT 4.660 0.440 4.950 0.500 ;
+        RECT 4.730 0.240 4.870 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 4.640 0.510 4.970 0.590 ;
-        RECT 4.640 0.340 4.720 0.510 ;
-        RECT 4.890 0.340 4.970 0.510 ;
-        RECT 4.640 0.240 4.970 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -74,17 +67,6 @@
         RECT 0.580 0.440 0.870 0.730 ;
     END
   END Y
-  PIN C
-    DIRECTION INOUT ;
-    USE SIGNAL ;
-    SHAPE ABUTMENT ;
-    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 C
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -107,8 +89,23 @@
         RECT 4.180 0.850 4.470 1.140 ;
     END
   END A
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    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 C
   OBS
       LAYER li1 ;
+        RECT 4.640 2.970 4.970 3.050 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
         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 ;
@@ -139,12 +136,17 @@
         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.910 4.490 1.080 ;
-        RECT 4.160 0.830 4.490 0.910 ;
+        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 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 4.640 0.420 4.970 0.500 ;
   END
 END NAND3X1
 END LIBRARY
diff --git a/cells/lef/NAND3X1.lef.beforemagic b/cells/lef/NAND3X1.lef.beforemagic
index 88e3ca8..4a8efdf 100644
--- a/cells/lef/NAND3X1.lef.beforemagic
+++ b/cells/lef/NAND3X1.lef.beforemagic
@@ -48,19 +48,6 @@
     END
   END Y
 
-  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 ;
@@ -87,32 +74,36 @@
     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
+
 
   OBS
     LAYER locali ;
       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 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.215 ) ( 5.76 3.245 ) ;
+      RECT ( 0 3.09 ) ( 4.465 3.215 ) ;
+      RECT ( 5.135 3.09 ) ( 5.76 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.045 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
       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 ) ;
@@ -144,55 +135,34 @@
       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 ( 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 ( 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 ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 4.655 2.965 ) ( 4.945 3.09 ) ;
+      RECT ( 4.655 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.945 2.965 ) ;
+      RECT ( 4.655 2.735 ) ( 4.945 2.795 ) ;
       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 ) ;
@@ -236,24 +206,14 @@
       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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      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 ( 4.73 0.24 ) ( 4.87 0.44 ) ;
       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.085 ) ( 4.715 0.085 ) ;
+      RECT ( 4.885 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/NAND3X1.lef.temp b/cells/lef/NAND3X1.lef.temp
index b6ba99b..71c45ce 100644
--- a/cells/lef/NAND3X1.lef.temp
+++ b/cells/lef/NAND3X1.lef.temp
@@ -48,19 +48,6 @@
     END
   END Y
 
-  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 ;
@@ -87,4 +74,17 @@
     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
+
 END NAND3X1
diff --git a/cells/lef/NOR2X1.lef b/cells/lef/NOR2X1.lef
new file mode 100644
index 0000000..34303b8
--- /dev/null
+++ b/cells/lef/NOR2X1.lef
@@ -0,0 +1,124 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO NOR2X1
+  CLASS CORE ;
+  FOREIGN NOR2X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 4.320 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 4.320 3.570 ;
+        RECT 0.580 2.970 0.870 3.090 ;
+        RECT 0.580 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.870 2.970 ;
+        RECT 0.580 2.740 0.870 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 4.320 3.570 ;
+        RECT 0.560 2.970 0.890 3.090 ;
+        RECT 0.560 2.800 0.640 2.970 ;
+        RECT 0.810 2.800 0.890 2.970 ;
+        RECT 0.560 2.720 0.890 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 4.320 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 1.760 0.670 2.090 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 1.840 0.240 2.010 0.420 ;
+        RECT 0.000 -0.240 4.320 0.240 ;
+    END
+  END VGND
+  PIN Y
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 3.220 2.200 3.510 2.490 ;
+        RECT 3.290 0.730 3.430 2.200 ;
+        RECT 0.820 0.660 1.110 0.730 ;
+        RECT 3.220 0.660 3.510 0.730 ;
+        RECT 0.820 0.520 3.510 0.660 ;
+        RECT 0.820 0.440 1.110 0.520 ;
+        RECT 3.220 0.440 3.510 0.520 ;
+    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 ;
+    SHAPE ABUTMENT ;
+    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
+  OBS
+      LAYER li1 ;
+        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 3.220 2.180 3.530 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 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 2.720 1.080 3.050 1.160 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        RECT 2.720 0.910 2.800 1.080 ;
+        RECT 2.970 0.920 3.050 1.080 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
+        RECT 0.800 0.670 1.110 0.750 ;
+        RECT 0.800 0.500 0.880 0.670 ;
+        RECT 1.050 0.660 1.110 0.670 ;
+        RECT 3.200 0.670 3.530 0.750 ;
+        RECT 1.050 0.500 1.130 0.660 ;
+        RECT 0.800 0.420 1.130 0.500 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+  END
+END NOR2X1
+END LIBRARY
+
diff --git a/cells/lef/NOR2X1.lef.beforemagic b/cells/lef/NOR2X1.lef.beforemagic
new file mode 100644
index 0000000..06cfe22
--- /dev/null
+++ b/cells/lef/NOR2X1.lef.beforemagic
@@ -0,0 +1,178 @@
+MACRO NOR2X1
+ CLASS CORE ;
+ FOREIGN NOR2X1 0 0 ;
+ SIZE 4.32 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   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 VPWR
+
+  PIN VGND
+   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 VGND
+
+  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 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 ;
+   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
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 0.555 2.965 ) ( 0.885 3.09 ) ;
+      RECT ( 0.555 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.885 2.965 ) ;
+      RECT ( 0.555 2.715 ) ( 0.885 2.795 ) ;
+      RECT ( 3.195 2.425 ) ( 3.525 2.505 ) ;
+      RECT ( 3.195 2.26 ) ( 3.275 2.425 ) ;
+      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 ( 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 ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 2.715 1.075 ) ( 3.045 1.155 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      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.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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.655 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.195 0.67 ) ( 3.525 0.75 ) ;
+      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.835 0.24 ) ( 2.005 0.42 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 4.32 3.57 ) ;
+      RECT ( 0 3.245 ) ( 0.635 3.415 ) ;
+      RECT ( 0.805 3.245 ) ( 4.32 3.415 ) ;
+      RECT ( 0 3.09 ) ( 4.32 3.245 ) ;
+      RECT ( 0.575 2.965 ) ( 0.865 3.09 ) ;
+      RECT ( 0.575 2.795 ) ( 0.635 2.965 ) ;
+      RECT ( 0.805 2.795 ) ( 0.865 2.965 ) ;
+      RECT ( 0.575 2.735 ) ( 0.865 2.795 ) ;
+      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 ( 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 ( 3.29 0.73 ) ( 3.43 2.195 ) ;
+      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 ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 0.67 ) ;
+      RECT ( 1.045 0.515 ) ( 3.275 0.655 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.515 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.515 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 0.5 ) ;
+      RECT ( 0 0.085 ) ( 4.32 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 4.32 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 4.32 -0.085 ) ;
+
+  end
+END NOR2X1
diff --git a/cells/lef/NOR2X1.lef.temp b/cells/lef/NOR2X1.lef.temp
new file mode 100644
index 0000000..9cee592
--- /dev/null
+++ b/cells/lef/NOR2X1.lef.temp
@@ -0,0 +1,77 @@
+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 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 ;
+   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
+
+END NOR2X1
diff --git a/cells/lef/OAI21X1.lef b/cells/lef/OAI21X1.lef
new file mode 100644
index 0000000..7a76557
--- /dev/null
+++ b/cells/lef/OAI21X1.lef
@@ -0,0 +1,163 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO OAI21X1
+  CLASS CORE ;
+  FOREIGN OAI21X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 5.760 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 5.760 3.570 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 5.760 3.570 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 5.760 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 3.200 0.670 3.530 0.750 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 3.280 0.240 3.450 0.420 ;
+        RECT 0.000 -0.240 5.760 0.240 ;
+    END
+  END VGND
+  PIN Y
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.580 2.410 0.870 2.490 ;
+        RECT 4.660 2.410 4.950 2.490 ;
+        RECT 0.580 2.270 4.950 2.410 ;
+        RECT 0.580 2.200 0.870 2.270 ;
+        RECT 4.660 2.200 4.950 2.270 ;
+        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 0.580 0.440 0.870 0.730 ;
+    END
+  END Y
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    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 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
+  PIN B
+    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 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 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 0.560 2.180 0.890 2.260 ;
+        RECT 4.660 2.180 4.970 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 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.920 3.050 1.080 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
+        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 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 2.240 0.670 2.550 0.750 ;
+        RECT 2.240 0.500 2.320 0.670 ;
+        RECT 2.490 0.660 2.550 0.670 ;
+        RECT 4.640 0.670 4.970 0.750 ;
+        RECT 2.490 0.500 2.570 0.660 ;
+        RECT 2.240 0.420 2.570 0.500 ;
+        RECT 4.640 0.500 4.720 0.670 ;
+        RECT 4.890 0.500 4.970 0.670 ;
+        RECT 4.640 0.420 4.970 0.500 ;
+      LAYER met1 ;
+        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.660 0.670 4.950 0.730 ;
+        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 2.490 0.520 4.720 0.660 ;
+        RECT 2.490 0.500 2.550 0.520 ;
+        RECT 2.260 0.440 2.550 0.500 ;
+        RECT 4.660 0.500 4.720 0.520 ;
+        RECT 4.890 0.500 4.950 0.670 ;
+        RECT 4.660 0.440 4.950 0.500 ;
+  END
+END OAI21X1
+END LIBRARY
+
diff --git a/cells/lef/OAI21X1.lef.beforemagic b/cells/lef/OAI21X1.lef.beforemagic
new file mode 100644
index 0000000..62301f6
--- /dev/null
+++ b/cells/lef/OAI21X1.lef.beforemagic
@@ -0,0 +1,227 @@
+MACRO OAI21X1
+ CLASS CORE ;
+ FOREIGN OAI21X1 0 0 ;
+ SIZE 5.76 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   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 VPWR
+
+  PIN VGND
+   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 VGND
+
+  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 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 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 ;
+   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 ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      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.92 ) ( 3.045 1.075 ) ;
+      RECT ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      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 ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 2.235 0.67 ) ( 2.545 0.75 ) ;
+      RECT ( 2.235 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.655 ) ( 2.545 0.67 ) ;
+      RECT ( 3.195 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 2.485 0.5 ) ( 2.565 0.655 ) ;
+      RECT ( 2.235 0.42 ) ( 2.565 0.5 ) ;
+      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 ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 3.275 0.24 ) ( 3.445 0.42 ) ;
+      RECT ( 0 0.085 ) ( 5.76 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 5.76 3.57 ) ;
+      RECT ( 0 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 5.76 3.415 ) ;
+      RECT ( 0 3.09 ) ( 5.76 3.245 ) ;
+      RECT ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      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.655 2.425 ) ( 4.945 2.485 ) ;
+      RECT ( 4.655 2.41 ) ( 4.715 2.425 ) ;
+      RECT ( 0.805 2.27 ) ( 4.715 2.41 ) ;
+      RECT ( 0.805 2.255 ) ( 0.865 2.27 ) ;
+      RECT ( 0.575 2.195 ) ( 0.865 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.5 ) ( 0.865 0.67 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 2.255 0.67 ) ( 2.545 0.73 ) ;
+      RECT ( 2.255 0.5 ) ( 2.315 0.67 ) ;
+      RECT ( 2.485 0.655 ) ( 2.545 0.67 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
+      RECT ( 4.655 0.655 ) ( 4.715 0.67 ) ;
+      RECT ( 2.485 0.515 ) ( 4.715 0.655 ) ;
+      RECT ( 2.485 0.5 ) ( 2.545 0.515 ) ;
+      RECT ( 2.255 0.44 ) ( 2.545 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 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
+
+  end
+END OAI21X1
diff --git a/cells/lef/OAI21X1.lef.temp b/cells/lef/OAI21X1.lef.temp
new file mode 100644
index 0000000..64c1217
--- /dev/null
+++ b/cells/lef/OAI21X1.lef.temp
@@ -0,0 +1,90 @@
+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 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 POWER ;
+   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 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 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 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 ;
+   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
+
+END OAI21X1
diff --git a/cells/lef/OAI22X1.lef b/cells/lef/OAI22X1.lef
new file mode 100644
index 0000000..d7d8720
--- /dev/null
+++ b/cells/lef/OAI22X1.lef
@@ -0,0 +1,196 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO OAI22X1
+  CLASS CORE ;
+  FOREIGN OAI22X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 3.200 2.970 3.530 3.090 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 1.780 0.670 2.090 0.750 ;
+        RECT 1.780 0.660 1.840 0.670 ;
+        RECT 1.760 0.500 1.840 0.660 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 1.840 0.240 2.010 0.420 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+  END VGND
+  PIN Y
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.820 2.410 1.110 2.490 ;
+        RECT 6.100 2.410 6.390 2.490 ;
+        RECT 0.820 2.270 6.390 2.410 ;
+        RECT 0.820 2.200 1.110 2.270 ;
+        RECT 5.210 1.140 5.350 2.270 ;
+        RECT 6.100 2.200 6.390 2.270 ;
+        RECT 5.140 0.850 5.430 1.140 ;
+    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 B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    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 B
+  PIN D
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 5.620 1.780 5.910 2.070 ;
+        RECT 5.690 1.140 5.830 1.780 ;
+        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
+  OBS
+      LAYER li1 ;
+        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 6.080 2.430 6.410 2.510 ;
+        RECT 6.080 2.260 6.160 2.430 ;
+        RECT 6.330 2.260 6.410 2.430 ;
+        RECT 0.800 2.180 1.110 2.260 ;
+        RECT 6.080 2.180 6.410 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 5.600 2.010 5.910 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 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 ;
+        RECT 1.530 0.910 1.610 1.080 ;
+        RECT 1.300 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 4.160 1.080 4.490 1.160 ;
+        RECT 4.160 0.920 4.240 1.080 ;
+        RECT 2.720 0.830 3.050 0.910 ;
+        RECT 4.180 0.910 4.240 0.920 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 5.600 1.080 5.930 1.160 ;
+        RECT 5.600 0.910 5.680 1.080 ;
+        RECT 5.850 0.920 5.930 1.080 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 4.180 0.830 4.490 0.910 ;
+        RECT 5.200 0.750 5.370 0.910 ;
+        RECT 5.600 0.830 5.910 0.910 ;
+        RECT 0.800 0.670 1.130 0.750 ;
+        RECT 0.800 0.500 0.880 0.670 ;
+        RECT 1.050 0.500 1.130 0.670 ;
+        RECT 0.800 0.420 1.130 0.500 ;
+        RECT 3.680 0.670 4.010 0.750 ;
+        RECT 3.680 0.500 3.760 0.670 ;
+        RECT 3.930 0.500 4.010 0.670 ;
+        RECT 3.680 0.420 4.010 0.500 ;
+        RECT 5.120 0.670 5.430 0.750 ;
+        RECT 5.120 0.500 5.200 0.670 ;
+        RECT 5.370 0.660 5.430 0.670 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 5.370 0.500 5.450 0.660 ;
+        RECT 5.120 0.420 5.450 0.500 ;
+        RECT 6.080 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+      LAYER met1 ;
+        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 3.700 0.670 3.990 0.730 ;
+        RECT 3.700 0.660 3.760 0.670 ;
+        RECT 1.050 0.520 3.760 0.660 ;
+        RECT 1.050 0.500 1.110 0.520 ;
+        RECT 0.820 0.440 1.110 0.500 ;
+        RECT 3.700 0.500 3.760 0.520 ;
+        RECT 3.930 0.660 3.990 0.670 ;
+        RECT 6.100 0.670 6.390 0.730 ;
+        RECT 6.100 0.660 6.160 0.670 ;
+        RECT 3.930 0.520 6.160 0.660 ;
+        RECT 3.930 0.500 3.990 0.520 ;
+        RECT 3.700 0.440 3.990 0.500 ;
+        RECT 6.100 0.500 6.160 0.520 ;
+        RECT 6.330 0.500 6.390 0.670 ;
+        RECT 6.100 0.440 6.390 0.500 ;
+  END
+END OAI22X1
+END LIBRARY
+
diff --git a/cells/lef/OAI22X1.lef.beforemagic b/cells/lef/OAI22X1.lef.beforemagic
new file mode 100644
index 0000000..e1a182c
--- /dev/null
+++ b/cells/lef/OAI22X1.lef.beforemagic
@@ -0,0 +1,272 @@
+MACRO OAI22X1
+ CLASS CORE ;
+ FOREIGN OAI22X1 0 0 ;
+ SIZE 7.2 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END VGND
+
+  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 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
+
+  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
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
+      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 ( 6.075 2.425 ) ( 6.405 2.505 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.26 ) ;
+      RECT ( 0.795 2.175 ) ( 1.105 2.255 ) ;
+      RECT ( 6.075 2.255 ) ( 6.155 2.425 ) ;
+      RECT ( 6.325 2.255 ) ( 6.405 2.425 ) ;
+      RECT ( 6.075 2.175 ) ( 6.405 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.905 2.09 ) ;
+      RECT ( 5.595 1.84 ) ( 5.675 2.01 ) ;
+      RECT ( 5.845 2.005 ) ( 5.905 2.01 ) ;
+      RECT ( 5.845 1.84 ) ( 5.925 2.005 ) ;
+      RECT ( 5.595 1.76 ) ( 5.925 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 ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 5.595 1.075 ) ( 5.925 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.195 0.75 ) ( 5.365 0.905 ) ;
+      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.125 0.75 ) ;
+      RECT ( 0.795 0.5 ) ( 0.875 0.67 ) ;
+      RECT ( 1.045 0.5 ) ( 1.125 0.67 ) ;
+      RECT ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
+      RECT ( 0.795 0.42 ) ( 1.125 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.675 0.67 ) ( 4.005 0.75 ) ;
+      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 ( 5.115 0.67 ) ( 5.425 0.75 ) ;
+      RECT ( 5.115 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.655 ) ( 5.425 0.67 ) ;
+      RECT ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 5.365 0.5 ) ( 5.445 0.655 ) ;
+      RECT ( 5.115 0.42 ) ( 5.445 0.5 ) ;
+      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 ( 1.835 0.24 ) ( 2.005 0.42 ) ;
+      RECT ( 0 0.085 ) ( 7.2 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 7.2 3.57 ) ;
+      RECT ( 0 3.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 3.245 ) ( 7.2 3.415 ) ;
+      RECT ( 0 3.09 ) ( 7.2 3.245 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
+      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 ( 6.095 2.425 ) ( 6.385 2.485 ) ;
+      RECT ( 6.095 2.41 ) ( 6.155 2.425 ) ;
+      RECT ( 1.045 2.27 ) ( 6.155 2.41 ) ;
+      RECT ( 1.045 2.255 ) ( 1.105 2.27 ) ;
+      RECT ( 0.815 2.195 ) ( 1.105 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 ( 5.21 1.135 ) ( 5.35 2.27 ) ;
+      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 ( 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 ( 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.135 1.075 ) ( 5.425 1.135 ) ;
+      RECT ( 5.135 0.905 ) ( 5.195 1.075 ) ;
+      RECT ( 5.365 0.905 ) ( 5.425 1.075 ) ;
+      RECT ( 5.135 0.845 ) ( 5.425 0.905 ) ;
+      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 ( 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 ( 3.695 0.67 ) ( 3.985 0.73 ) ;
+      RECT ( 3.695 0.655 ) ( 3.755 0.67 ) ;
+      RECT ( 1.045 0.515 ) ( 3.755 0.655 ) ;
+      RECT ( 1.045 0.5 ) ( 1.105 0.515 ) ;
+      RECT ( 0.815 0.44 ) ( 1.105 0.5 ) ;
+      RECT ( 3.695 0.5 ) ( 3.755 0.515 ) ;
+      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 ) ( 1.835 0.085 ) ;
+      RECT ( 2.005 -0.085 ) ( 7.2 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 7.2 -0.085 ) ;
+
+  end
+END OAI22X1
diff --git a/cells/lef/OAI22X1.lef.temp b/cells/lef/OAI22X1.lef.temp
new file mode 100644
index 0000000..8cc7fb5
--- /dev/null
+++ b/cells/lef/OAI22X1.lef.temp
@@ -0,0 +1,103 @@
+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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       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 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
+
+  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
+
+END OAI22X1
diff --git a/cells/lef/OR2X1.lef b/cells/lef/OR2X1.lef
index d6b4899..57f1ba8 100644
--- a/cells/lef/OR2X1.lef
+++ b/cells/lef/OR2X1.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
+        RECT 3.200 2.970 3.530 3.090 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -36,26 +36,20 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 0.510 0.870 0.570 ;
-        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.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 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 0.560 0.510 0.890 0.590 ;
-        RECT 0.560 0.340 0.640 0.510 ;
-        RECT 0.810 0.340 0.890 0.510 ;
-        RECT 0.560 0.240 0.890 0.340 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -70,17 +64,6 @@
         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 1.780 1.590 2.070 ;
-        RECT 1.370 1.540 1.510 1.780 ;
-        RECT 1.300 1.250 1.590 1.540 ;
-    END
-  END A
   PIN B
     DIRECTION INOUT ;
     USE SIGNAL ;
@@ -88,8 +71,19 @@
     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 ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 1.300 1.780 1.590 2.070 ;
+    END
+  END A
   OBS
       LAYER li1 ;
         RECT 0.800 2.430 1.130 2.510 ;
@@ -99,7 +93,7 @@
         RECT 4.640 2.260 4.720 2.430 ;
         RECT 4.890 2.260 4.970 2.430 ;
         RECT 0.800 2.180 1.110 2.260 ;
-        RECT 4.660 2.180 4.970 2.260 ;
+        RECT 4.640 2.180 4.970 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 ;
@@ -108,12 +102,12 @@
         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 2.010 4.470 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 1.360 1.160 1.530 1.310 ;
-        RECT 2.800 1.160 2.970 1.760 ;
+        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 ;
@@ -125,15 +119,24 @@
         RECT 2.740 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.910 4.490 1.080 ;
-        RECT 4.160 0.830 4.490 0.910 ;
+        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 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 2.240 0.670 2.570 0.750 ;
         RECT 2.240 0.500 2.320 0.670 ;
         RECT 2.490 0.500 2.570 0.670 ;
-        RECT 4.660 0.670 4.970 0.750 ;
-        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
         RECT 2.240 0.420 2.570 0.500 ;
-        RECT 4.640 0.500 4.720 0.660 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 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 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
diff --git a/cells/lef/OR2X1.lef.beforemagic b/cells/lef/OR2X1.lef.beforemagic
index 1714de1..c94b856 100644
--- a/cells/lef/OR2X1.lef.beforemagic
+++ b/cells/lef/OR2X1.lef.beforemagic
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    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 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,42 +51,43 @@
     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 ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+    END
+  END A
+
 
   OBS
     LAYER locali ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.195 2.965 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
       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.635 2.255 ) ( 4.715 2.425 ) ;
       RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
-      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 4.635 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 ) ;
@@ -108,12 +96,13 @@
       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 2.01 ) ( 4.465 2.09 ) ;
       RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
-      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.405 2.005 ) ( 4.465 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.005 ) ;
       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.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 ) ;
@@ -125,60 +114,39 @@
       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 ( 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 ( 0.555 0.42 ) ( 0.885 0.5 ) ;
       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 ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
       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 ) ;
@@ -200,11 +168,11 @@
       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.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.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 ) ;
@@ -214,36 +182,27 @@
       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.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 ( 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 ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      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 ( 4.655 0.67 ) ( 4.945 0.73 ) ;
       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.65 0.24 ) ( 0.79 0.44 ) ;
+      RECT ( 3.29 0.24 ) ( 3.43 0.44 ) ;
       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.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/OR2X1.lef.temp b/cells/lef/OR2X1.lef.temp
index 621b59d..48f8134 100644
--- a/cells/lef/OR2X1.lef.temp
+++ b/cells/lef/OR2X1.lef.temp
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    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 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,8 +51,21 @@
     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 ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+    END
+  END A
+
 END OR2X1
diff --git a/cells/lef/OR2X2.lef b/cells/lef/OR2X2.lef
index d7f49e3..ef47f4e 100644
--- a/cells/lef/OR2X2.lef
+++ b/cells/lef/OR2X2.lef
@@ -16,18 +16,18 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.220 2.990 3.510 3.090 ;
-        RECT 3.220 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.510 2.990 ;
-        RECT 3.220 2.760 3.510 2.820 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
     END
     PORT
       LAYER li1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.200 2.990 3.530 3.090 ;
-        RECT 3.200 2.820 3.280 2.990 ;
-        RECT 3.450 2.820 3.530 2.990 ;
-        RECT 3.200 2.740 3.530 2.820 ;
+        RECT 3.200 2.970 3.530 3.090 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -36,26 +36,21 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 0.580 0.510 0.870 0.570 ;
-        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.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 0.650 0.240 0.790 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
       LAYER li1 ;
-        RECT 0.560 0.510 0.890 0.590 ;
-        RECT 0.560 0.340 0.640 0.510 ;
-        RECT 0.810 0.340 0.890 0.510 ;
-        RECT 0.560 0.240 0.890 0.340 ;
-        RECT 3.200 0.510 3.530 0.590 ;
-        RECT 3.200 0.340 3.280 0.510 ;
-        RECT 3.450 0.340 3.530 0.510 ;
-        RECT 3.200 0.240 3.530 0.340 ;
+        RECT 3.220 0.670 3.530 0.750 ;
+        RECT 3.220 0.660 3.280 0.670 ;
+        RECT 3.200 0.500 3.280 0.660 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 3.280 0.240 3.450 0.420 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
   END VGND
@@ -77,6 +72,8 @@
     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 ;
     END
   END A
   PIN B
@@ -86,8 +83,6 @@
     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
@@ -99,7 +94,7 @@
         RECT 4.640 2.260 4.720 2.430 ;
         RECT 4.890 2.260 4.970 2.430 ;
         RECT 0.800 2.180 1.110 2.260 ;
-        RECT 4.660 2.180 4.970 2.260 ;
+        RECT 4.640 2.180 4.970 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 ;
@@ -108,12 +103,12 @@
         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 2.010 4.470 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 1.360 1.160 1.530 1.760 ;
-        RECT 2.800 1.160 2.970 1.310 ;
+        RECT 1.360 1.160 1.530 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 ;
@@ -125,15 +120,19 @@
         RECT 2.740 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.910 4.490 1.080 ;
-        RECT 4.160 0.830 4.490 0.910 ;
+        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 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 2.240 0.670 2.570 0.750 ;
         RECT 2.240 0.500 2.320 0.670 ;
         RECT 2.490 0.500 2.570 0.670 ;
-        RECT 4.660 0.670 4.970 0.750 ;
-        RECT 4.660 0.660 4.720 0.670 ;
         RECT 2.240 0.420 2.570 0.500 ;
-        RECT 4.640 0.500 4.720 0.660 ;
+        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 4.640 0.420 4.970 0.500 ;
       LAYER met1 ;
diff --git a/cells/lef/OR2X2.lef.beforemagic b/cells/lef/OR2X2.lef.beforemagic
index a098e7f..3c69b54 100644
--- a/cells/lef/OR2X2.lef.beforemagic
+++ b/cells/lef/OR2X2.lef.beforemagic
@@ -51,6 +51,8 @@
     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 ;
     END
   END A
@@ -62,8 +64,6 @@
     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
@@ -72,34 +72,22 @@
   OBS
     LAYER locali ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.195 2.965 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
       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.635 2.255 ) ( 4.715 2.425 ) ;
       RECT ( 4.885 2.255 ) ( 4.965 2.425 ) ;
-      RECT ( 4.655 2.175 ) ( 4.965 2.255 ) ;
+      RECT ( 4.635 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 ) ;
@@ -108,12 +96,13 @@
       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 2.01 ) ( 4.465 2.09 ) ;
       RECT ( 4.155 1.84 ) ( 4.235 2.01 ) ;
-      RECT ( 4.405 1.84 ) ( 4.485 2.01 ) ;
+      RECT ( 4.405 2.005 ) ( 4.465 2.01 ) ;
+      RECT ( 4.405 1.84 ) ( 4.485 2.005 ) ;
       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.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 ) ;
@@ -125,60 +114,40 @@
       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 ( 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 ( 0.555 0.42 ) ( 0.885 0.5 ) ;
       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 ( 3.215 0.67 ) ( 3.525 0.75 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 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 ( 3.195 0.5 ) ( 3.275 0.655 ) ;
+      RECT ( 3.445 0.5 ) ( 3.525 0.67 ) ;
+      RECT ( 3.195 0.42 ) ( 3.525 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      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 ( 3.195 0.24 ) ( 3.525 0.34 ) ;
+      RECT ( 3.275 0.24 ) ( 3.445 0.42 ) ;
       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.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
     LAYER metal1 ;
       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.245 ) ( 3.275 3.415 ) ;
+      RECT ( 3.445 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 ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
       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 ) ;
@@ -200,11 +169,11 @@
       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 ( 1.37 1.54 ) ( 1.51 1.78 ) ;
+      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 ) ;
@@ -214,36 +183,22 @@
       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.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 ( 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.67 ) ( 4.945 0.73 ) ;
       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.65 0.24 ) ( 0.79 0.44 ) ;
       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.085 ) ( 0.635 0.085 ) ;
+      RECT ( 0.805 -0.085 ) ( 5.76 0.085 ) ;
       RECT ( 0 -0.24 ) ( 5.76 -0.085 ) ;
 
   end
diff --git a/cells/lef/OR2X2.lef.temp b/cells/lef/OR2X2.lef.temp
index 28c3d77..1b90d02 100644
--- a/cells/lef/OR2X2.lef.temp
+++ b/cells/lef/OR2X2.lef.temp
@@ -51,6 +51,8 @@
     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 ;
     END
   END A
@@ -62,8 +64,6 @@
     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
diff --git a/cells/lef/SUTHERLAND1989.lef b/cells/lef/SUTHERLAND1989.lef
new file mode 100644
index 0000000..d7fca67
--- /dev/null
+++ b/cells/lef/SUTHERLAND1989.lef
@@ -0,0 +1,266 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO SUTHERLAND1989
+  CLASS CORE ;
+  FOREIGN SUTHERLAND1989 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 3.220 2.970 3.510 3.090 ;
+        RECT 3.220 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.510 2.970 ;
+        RECT 3.220 2.740 3.510 2.800 ;
+        RECT 6.100 2.970 6.390 3.090 ;
+        RECT 6.100 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.390 2.970 ;
+        RECT 6.100 2.740 6.390 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 3.200 2.970 3.530 3.090 ;
+        RECT 3.200 2.800 3.280 2.970 ;
+        RECT 3.450 2.800 3.530 2.970 ;
+        RECT 3.200 2.720 3.530 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 3.220 0.670 3.510 0.730 ;
+        RECT 3.220 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.510 0.670 ;
+        RECT 3.220 0.440 3.510 0.500 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 6.080 0.670 6.410 0.750 ;
+        RECT 6.080 0.500 6.160 0.670 ;
+        RECT 6.330 0.500 6.410 0.670 ;
+        RECT 6.080 0.420 6.410 0.500 ;
+        RECT 6.160 0.240 6.330 0.420 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+  END VGND
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 7.780 1.060 8.070 1.140 ;
+        RECT 9.940 1.060 10.230 1.140 ;
+        RECT 7.780 0.920 10.230 1.060 ;
+        RECT 7.780 0.850 8.070 0.920 ;
+        RECT 9.940 0.850 10.230 0.920 ;
+    END
+  END C
+  PIN B
+    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 5.620 1.780 5.910 1.860 ;
+        RECT 1.370 1.140 1.510 1.780 ;
+        RECT 5.690 1.140 5.830 1.780 ;
+        RECT 1.300 0.850 1.590 1.140 ;
+        RECT 5.620 0.850 5.910 1.140 ;
+    END
+  END B
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.060 3.030 1.140 ;
+        RECT 4.180 1.060 4.470 1.140 ;
+        RECT 2.740 0.920 4.470 1.060 ;
+        RECT 2.740 0.850 3.030 0.920 ;
+        RECT 4.180 0.850 4.470 0.920 ;
+    END
+  END A
+  OBS
+      LAYER li1 ;
+        RECT 6.080 2.970 6.410 3.050 ;
+        RECT 6.080 2.800 6.160 2.970 ;
+        RECT 6.330 2.800 6.410 2.970 ;
+        RECT 6.080 2.720 6.410 2.800 ;
+        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 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 7.760 2.430 8.090 2.510 ;
+        RECT 7.760 2.260 7.840 2.430 ;
+        RECT 8.010 2.260 8.090 2.430 ;
+        RECT 5.120 2.180 5.430 2.260 ;
+        RECT 7.760 2.180 8.090 2.260 ;
+        RECT 9.200 2.430 9.530 2.510 ;
+        RECT 9.200 2.260 9.280 2.430 ;
+        RECT 9.450 2.260 9.530 2.430 ;
+        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 9.200 2.180 9.530 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 ;
+        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 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 2.800 1.160 2.970 1.760 ;
+        RECT 4.240 1.160 4.410 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.920 3.050 1.080 ;
+        RECT 4.160 1.080 4.490 1.160 ;
+        RECT 2.970 0.910 3.030 0.920 ;
+        RECT 2.720 0.830 3.030 0.910 ;
+        RECT 4.160 0.910 4.240 1.080 ;
+        RECT 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
+        RECT 5.600 1.080 5.930 1.160 ;
+        RECT 5.600 0.910 5.680 1.080 ;
+        RECT 5.850 0.920 5.930 1.080 ;
+        RECT 7.040 1.080 7.370 1.160 ;
+        RECT 7.840 1.080 8.010 2.180 ;
+        RECT 9.920 2.010 10.250 2.090 ;
+        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 10.000 1.160 10.170 1.760 ;
+        RECT 9.920 1.080 10.250 1.160 ;
+        RECT 5.850 0.910 5.910 0.920 ;
+        RECT 5.600 0.830 5.910 0.910 ;
+        RECT 7.040 0.910 7.120 1.080 ;
+        RECT 7.290 0.910 7.370 1.080 ;
+        RECT 9.920 0.910 10.000 1.080 ;
+        RECT 10.170 0.910 10.250 1.080 ;
+        RECT 7.040 0.830 7.370 0.910 ;
+        RECT 7.840 0.750 8.010 0.910 ;
+        RECT 9.920 0.830 10.250 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 3.200 0.670 3.530 0.750 ;
+        RECT 3.200 0.500 3.280 0.670 ;
+        RECT 3.450 0.500 3.530 0.670 ;
+        RECT 3.200 0.420 3.530 0.500 ;
+        RECT 5.120 0.670 5.430 0.750 ;
+        RECT 5.120 0.500 5.200 0.670 ;
+        RECT 5.370 0.660 5.430 0.670 ;
+        RECT 7.760 0.670 8.090 0.750 ;
+        RECT 5.370 0.500 5.450 0.660 ;
+        RECT 5.120 0.420 5.450 0.500 ;
+        RECT 7.760 0.500 7.840 0.670 ;
+        RECT 8.010 0.500 8.090 0.670 ;
+        RECT 7.760 0.420 8.090 0.500 ;
+        RECT 9.200 0.670 9.530 0.750 ;
+        RECT 9.200 0.500 9.280 0.670 ;
+        RECT 9.450 0.500 9.530 0.670 ;
+        RECT 10.420 0.670 10.730 0.750 ;
+        RECT 10.420 0.660 10.480 0.670 ;
+        RECT 9.200 0.420 9.530 0.500 ;
+        RECT 10.400 0.500 10.480 0.660 ;
+        RECT 10.650 0.500 10.730 0.670 ;
+        RECT 10.400 0.420 10.730 0.500 ;
+      LAYER met1 ;
+        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 0.580 2.200 0.870 2.260 ;
+        RECT 5.140 2.430 5.430 2.490 ;
+        RECT 5.140 2.260 5.200 2.430 ;
+        RECT 5.370 2.410 5.430 2.430 ;
+        RECT 9.220 2.430 9.510 2.490 ;
+        RECT 9.220 2.410 9.280 2.430 ;
+        RECT 5.370 2.270 9.280 2.410 ;
+        RECT 5.370 2.260 5.430 2.270 ;
+        RECT 5.140 2.200 5.430 2.260 ;
+        RECT 9.220 2.260 9.280 2.270 ;
+        RECT 9.450 2.260 9.510 2.430 ;
+        RECT 9.220 2.200 9.510 2.260 ;
+        RECT 10.420 2.430 10.710 2.490 ;
+        RECT 10.420 2.260 10.480 2.430 ;
+        RECT 10.650 2.260 10.710 2.430 ;
+        RECT 10.420 2.200 10.710 2.260 ;
+        RECT 0.650 0.730 0.790 2.200 ;
+        RECT 7.060 2.010 7.350 2.070 ;
+        RECT 7.060 1.840 7.120 2.010 ;
+        RECT 7.290 2.000 7.350 2.010 ;
+        RECT 10.490 2.000 10.630 2.200 ;
+        RECT 7.290 1.860 10.630 2.000 ;
+        RECT 7.290 1.840 7.350 1.860 ;
+        RECT 7.060 1.780 7.350 1.840 ;
+        RECT 7.130 1.140 7.270 1.780 ;
+        RECT 7.060 1.080 7.350 1.140 ;
+        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 10.490 0.730 10.630 1.860 ;
+        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 5.140 0.670 5.430 0.730 ;
+        RECT 5.140 0.500 5.200 0.670 ;
+        RECT 5.370 0.660 5.430 0.670 ;
+        RECT 9.220 0.670 9.510 0.730 ;
+        RECT 9.220 0.660 9.280 0.670 ;
+        RECT 5.370 0.520 9.280 0.660 ;
+        RECT 5.370 0.500 5.430 0.520 ;
+        RECT 5.140 0.440 5.430 0.500 ;
+        RECT 9.220 0.500 9.280 0.520 ;
+        RECT 9.450 0.500 9.510 0.670 ;
+        RECT 9.220 0.440 9.510 0.500 ;
+        RECT 10.420 0.670 10.710 0.730 ;
+        RECT 10.420 0.500 10.480 0.670 ;
+        RECT 10.650 0.500 10.710 0.670 ;
+        RECT 10.420 0.440 10.710 0.500 ;
+  END
+END SUTHERLAND1989
+END LIBRARY
+
diff --git a/cells/lef/SUTHERLAND1989.lef.beforemagic b/cells/lef/SUTHERLAND1989.lef.beforemagic
new file mode 100644
index 0000000..7241011
--- /dev/null
+++ b/cells/lef/SUTHERLAND1989.lef.beforemagic
@@ -0,0 +1,331 @@
+MACRO SUTHERLAND1989
+ CLASS CORE ;
+ FOREIGN SUTHERLAND1989 0 0 ;
+ SIZE 11.52 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.77500000 0.84500000 8.06500000 0.92000000 ;
+        RECT 9.93500000 0.84500000 10.22500000 0.92000000 ;
+        RECT 7.77500000 0.92000000 10.22500000 1.06000000 ;
+        RECT 7.77500000 1.06000000 8.06500000 1.13500000 ;
+        RECT 9.93500000 1.06000000 10.22500000 1.13500000 ;
+    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 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 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 B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+    END
+  END A
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 6.155 3.415 ) ;
+      RECT ( 6.325 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.215 ) ( 11.52 3.245 ) ;
+      RECT ( 0 3.09 ) ( 5.905 3.215 ) ;
+      RECT ( 6.575 3.09 ) ( 11.52 3.215 ) ;
+      RECT ( 3.195 2.965 ) ( 3.525 3.09 ) ;
+      RECT ( 3.195 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.525 2.965 ) ;
+      RECT ( 3.195 2.715 ) ( 3.525 2.795 ) ;
+      RECT ( 6.075 2.965 ) ( 6.405 3.045 ) ;
+      RECT ( 6.075 2.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.405 2.965 ) ;
+      RECT ( 6.075 2.715 ) ( 6.405 2.795 ) ;
+      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 ( 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 ( 7.755 2.425 ) ( 8.085 2.505 ) ;
+      RECT ( 5.365 2.255 ) ( 5.425 2.26 ) ;
+      RECT ( 5.115 2.175 ) ( 5.425 2.255 ) ;
+      RECT ( 7.755 2.255 ) ( 7.835 2.425 ) ;
+      RECT ( 8.005 2.255 ) ( 8.085 2.425 ) ;
+      RECT ( 7.755 2.175 ) ( 8.085 2.255 ) ;
+      RECT ( 9.195 2.425 ) ( 9.525 2.505 ) ;
+      RECT ( 9.195 2.255 ) ( 9.275 2.425 ) ;
+      RECT ( 9.445 2.255 ) ( 9.525 2.425 ) ;
+      RECT ( 10.395 2.425 ) ( 10.725 2.505 ) ;
+      RECT ( 10.395 2.26 ) ( 10.475 2.425 ) ;
+      RECT ( 9.195 2.175 ) ( 9.525 2.255 ) ;
+      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.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 ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 4.235 1.155 ) ( 4.405 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 ( 4.155 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.715 0.825 ) ( 3.025 0.905 ) ;
+      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 ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 5.845 0.905 ) ( 5.905 0.92 ) ;
+      RECT ( 5.595 0.825 ) ( 5.905 0.905 ) ;
+      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 ( 7.835 1.075 ) ( 8.005 2.175 ) ;
+      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 ( 9.995 1.155 ) ( 10.165 1.76 ) ;
+      RECT ( 7.835 0.75 ) ( 8.005 0.905 ) ;
+      RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 9.915 0.905 ) ( 9.995 1.075 ) ;
+      RECT ( 10.165 0.905 ) ( 10.245 1.075 ) ;
+      RECT ( 9.915 0.825 ) ( 10.245 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.67 ) ( 3.525 0.75 ) ;
+      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 ( 5.115 0.67 ) ( 5.425 0.75 ) ;
+      RECT ( 5.115 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.655 ) ( 5.425 0.67 ) ;
+      RECT ( 6.075 0.67 ) ( 6.405 0.75 ) ;
+      RECT ( 5.365 0.5 ) ( 5.445 0.655 ) ;
+      RECT ( 5.115 0.42 ) ( 5.445 0.5 ) ;
+      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 ( 7.755 0.67 ) ( 8.085 0.75 ) ;
+      RECT ( 7.755 0.5 ) ( 7.835 0.67 ) ;
+      RECT ( 8.005 0.5 ) ( 8.085 0.67 ) ;
+      RECT ( 7.755 0.42 ) ( 8.085 0.5 ) ;
+      RECT ( 9.195 0.67 ) ( 9.525 0.75 ) ;
+      RECT ( 9.195 0.5 ) ( 9.275 0.67 ) ;
+      RECT ( 9.445 0.5 ) ( 9.525 0.67 ) ;
+      RECT ( 10.415 0.67 ) ( 10.725 0.75 ) ;
+      RECT ( 10.415 0.655 ) ( 10.475 0.67 ) ;
+      RECT ( 9.195 0.42 ) ( 9.525 0.5 ) ;
+      RECT ( 10.395 0.5 ) ( 10.475 0.655 ) ;
+      RECT ( 10.645 0.5 ) ( 10.725 0.67 ) ;
+      RECT ( 10.395 0.42 ) ( 10.725 0.5 ) ;
+      RECT ( 6.155 0.24 ) ( 6.325 0.42 ) ;
+      RECT ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 6.155 3.415 ) ;
+      RECT ( 6.325 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.09 ) ( 11.52 3.245 ) ;
+      RECT ( 3.215 2.965 ) ( 3.505 3.09 ) ;
+      RECT ( 3.215 2.795 ) ( 3.275 2.965 ) ;
+      RECT ( 3.445 2.795 ) ( 3.505 2.965 ) ;
+      RECT ( 3.215 2.735 ) ( 3.505 2.795 ) ;
+      RECT ( 6.095 2.965 ) ( 6.385 3.09 ) ;
+      RECT ( 6.095 2.795 ) ( 6.155 2.965 ) ;
+      RECT ( 6.325 2.795 ) ( 6.385 2.965 ) ;
+      RECT ( 6.095 2.735 ) ( 6.385 2.795 ) ;
+      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 ( 5.135 2.425 ) ( 5.425 2.485 ) ;
+      RECT ( 5.135 2.255 ) ( 5.195 2.425 ) ;
+      RECT ( 5.365 2.41 ) ( 5.425 2.425 ) ;
+      RECT ( 9.215 2.425 ) ( 9.505 2.485 ) ;
+      RECT ( 9.215 2.41 ) ( 9.275 2.425 ) ;
+      RECT ( 5.365 2.27 ) ( 9.275 2.41 ) ;
+      RECT ( 5.365 2.255 ) ( 5.425 2.27 ) ;
+      RECT ( 5.135 2.195 ) ( 5.425 2.255 ) ;
+      RECT ( 9.215 2.255 ) ( 9.275 2.27 ) ;
+      RECT ( 9.445 2.255 ) ( 9.505 2.425 ) ;
+      RECT ( 9.215 2.195 ) ( 9.505 2.255 ) ;
+      RECT ( 10.415 2.425 ) ( 10.705 2.485 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.425 ) ;
+      RECT ( 10.645 2.255 ) ( 10.705 2.425 ) ;
+      RECT ( 10.415 2.195 ) ( 10.705 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 ( 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 ( 7.055 2.01 ) ( 7.345 2.07 ) ;
+      RECT ( 7.055 1.84 ) ( 7.115 2.01 ) ;
+      RECT ( 7.285 1.995 ) ( 7.345 2.01 ) ;
+      RECT ( 10.49 1.995 ) ( 10.63 2.195 ) ;
+      RECT ( 7.285 1.855 ) ( 10.63 1.995 ) ;
+      RECT ( 7.285 1.84 ) ( 7.345 1.855 ) ;
+      RECT ( 7.055 1.78 ) ( 7.345 1.84 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.78 ) ;
+      RECT ( 7.13 1.135 ) ( 7.27 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 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 ( 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.775 1.075 ) ( 8.065 1.135 ) ;
+      RECT ( 7.775 0.905 ) ( 7.835 1.075 ) ;
+      RECT ( 8.005 1.06 ) ( 8.065 1.075 ) ;
+      RECT ( 9.935 1.075 ) ( 10.225 1.135 ) ;
+      RECT ( 9.935 1.06 ) ( 9.995 1.075 ) ;
+      RECT ( 8.005 0.92 ) ( 9.995 1.06 ) ;
+      RECT ( 8.005 0.905 ) ( 8.065 0.92 ) ;
+      RECT ( 7.775 0.845 ) ( 8.065 0.905 ) ;
+      RECT ( 9.935 0.905 ) ( 9.995 0.92 ) ;
+      RECT ( 10.165 0.905 ) ( 10.225 1.075 ) ;
+      RECT ( 9.935 0.845 ) ( 10.225 0.905 ) ;
+      RECT ( 10.49 0.73 ) ( 10.63 1.855 ) ;
+      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.67 ) ( 3.505 0.73 ) ;
+      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 ( 5.135 0.67 ) ( 5.425 0.73 ) ;
+      RECT ( 5.135 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.655 ) ( 5.425 0.67 ) ;
+      RECT ( 9.215 0.67 ) ( 9.505 0.73 ) ;
+      RECT ( 9.215 0.655 ) ( 9.275 0.67 ) ;
+      RECT ( 5.365 0.515 ) ( 9.275 0.655 ) ;
+      RECT ( 5.365 0.5 ) ( 5.425 0.515 ) ;
+      RECT ( 5.135 0.44 ) ( 5.425 0.5 ) ;
+      RECT ( 9.215 0.5 ) ( 9.275 0.515 ) ;
+      RECT ( 9.445 0.5 ) ( 9.505 0.67 ) ;
+      RECT ( 9.215 0.44 ) ( 9.505 0.5 ) ;
+      RECT ( 10.415 0.67 ) ( 10.705 0.73 ) ;
+      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 ( 3.29 0.24 ) ( 3.43 0.44 ) ;
+      RECT ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 3.275 0.085 ) ;
+      RECT ( 3.445 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+
+  end
+END SUTHERLAND1989
diff --git a/cells/lef/SUTHERLAND1989.lef.temp b/cells/lef/SUTHERLAND1989.lef.temp
new file mode 100644
index 0000000..d08151a
--- /dev/null
+++ b/cells/lef/SUTHERLAND1989.lef.temp
@@ -0,0 +1,83 @@
+MACRO SUTHERLAND1989
+ CLASS CORE ;
+ FOREIGN SUTHERLAND1989 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.77500000 0.84500000 8.06500000 0.92000000 ;
+        RECT 9.93500000 0.84500000 10.22500000 0.92000000 ;
+        RECT 7.77500000 0.92000000 10.22500000 1.06000000 ;
+        RECT 7.77500000 1.06000000 8.06500000 1.13500000 ;
+        RECT 9.93500000 1.06000000 10.22500000 1.13500000 ;
+    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 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 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 B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+    END
+  END A
+
+END SUTHERLAND1989
diff --git a/cells/lef/VANBERKEL1991.lef b/cells/lef/VANBERKEL1991.lef
new file mode 100644
index 0000000..fe5d223
--- /dev/null
+++ b/cells/lef/VANBERKEL1991.lef
@@ -0,0 +1,295 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO VANBERKEL1991
+  CLASS CORE ;
+  FOREIGN VANBERKEL1991 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y R90 ;
+  SITE unit ;
+  PIN VPWR
+    DIRECTION INOUT ;
+    USE POWER ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 8.980 2.970 9.270 3.090 ;
+        RECT 8.980 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.270 2.970 ;
+        RECT 8.980 2.740 9.270 2.800 ;
+    END
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 4.640 2.970 4.970 3.090 ;
+        RECT 4.640 2.800 4.720 2.970 ;
+        RECT 4.890 2.800 4.970 2.970 ;
+        RECT 4.640 2.720 4.970 2.800 ;
+        RECT 8.960 2.970 9.290 3.090 ;
+        RECT 8.960 2.800 9.040 2.970 ;
+        RECT 9.210 2.800 9.290 2.970 ;
+        RECT 8.960 2.720 9.290 2.800 ;
+    END
+  END VPWR
+  PIN VGND
+    DIRECTION INOUT ;
+    USE GROUND ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER li1 ;
+        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 4.640 0.420 4.970 0.500 ;
+        RECT 8.960 0.670 9.290 0.750 ;
+        RECT 8.960 0.500 9.040 0.670 ;
+        RECT 9.210 0.500 9.290 0.670 ;
+        RECT 8.960 0.420 9.290 0.500 ;
+        RECT 4.720 0.240 4.890 0.420 ;
+        RECT 9.040 0.240 9.210 0.420 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+  END VGND
+  PIN C
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 7.060 2.410 7.350 2.490 ;
+        RECT 10.420 2.410 10.710 2.490 ;
+        RECT 7.060 2.270 10.710 2.410 ;
+        RECT 7.060 2.200 7.350 2.270 ;
+        RECT 10.420 2.200 10.710 2.270 ;
+        RECT 10.490 0.730 10.630 2.200 ;
+        RECT 10.420 0.440 10.710 0.730 ;
+    END
+  END C
+  PIN B
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    PORT
+      LAYER met1 ;
+        RECT 2.740 1.060 3.030 1.140 ;
+        RECT 8.500 1.060 8.790 1.140 ;
+        RECT 2.740 0.920 8.790 1.060 ;
+        RECT 2.740 0.850 3.030 0.920 ;
+        RECT 8.500 0.850 8.790 0.920 ;
+    END
+  END B
+  PIN A
+    DIRECTION INOUT ;
+    USE SIGNAL ;
+    SHAPE ABUTMENT ;
+    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 ;
+        RECT 1.370 0.660 1.510 0.850 ;
+        RECT 3.220 0.660 3.510 0.730 ;
+        RECT 1.370 0.520 3.510 0.660 ;
+        RECT 3.220 0.440 3.510 0.520 ;
+    END
+  END A
+  OBS
+      LAYER li1 ;
+        RECT 0.800 2.830 1.130 2.910 ;
+        RECT 0.800 2.660 0.880 2.830 ;
+        RECT 1.050 2.660 1.130 2.830 ;
+        RECT 0.800 2.580 1.130 2.660 ;
+        RECT 7.520 2.830 7.850 2.910 ;
+        RECT 7.520 2.660 7.600 2.830 ;
+        RECT 7.770 2.660 7.850 2.830 ;
+        RECT 7.520 2.580 7.850 2.660 ;
+        RECT 1.760 2.430 2.090 2.510 ;
+        RECT 1.760 2.260 1.840 2.430 ;
+        RECT 2.010 2.260 2.090 2.430 ;
+        RECT 1.780 2.180 2.090 2.260 ;
+        RECT 3.680 2.430 4.010 2.510 ;
+        RECT 3.680 2.260 3.760 2.430 ;
+        RECT 3.930 2.260 4.010 2.430 ;
+        RECT 6.320 2.430 6.650 2.510 ;
+        RECT 6.320 2.260 6.400 2.430 ;
+        RECT 6.570 2.260 6.650 2.430 ;
+        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 3.680 2.180 3.990 2.260 ;
+        RECT 6.320 2.180 6.650 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.840 1.890 2.010 2.180 ;
+        RECT 1.280 1.760 1.610 1.840 ;
+        RECT 1.280 1.080 1.610 1.160 ;
+        RECT 1.280 0.910 1.360 1.080 ;
+        RECT 1.530 0.920 1.610 1.080 ;
+        RECT 1.530 0.910 1.590 0.920 ;
+        RECT 1.280 0.830 1.590 0.910 ;
+        RECT 1.840 0.750 2.010 1.720 ;
+        RECT 2.320 1.480 2.490 2.120 ;
+        RECT 7.120 2.090 7.290 2.260 ;
+        RECT 10.420 2.180 10.730 2.260 ;
+        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 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 9.920 2.010 10.250 2.090 ;
+        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 2.800 1.160 2.970 1.760 ;
+        RECT 4.240 1.210 4.410 1.760 ;
+        RECT 3.280 1.160 4.410 1.210 ;
+        RECT 7.120 1.160 7.290 1.760 ;
+        RECT 8.560 1.160 8.730 1.760 ;
+        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 3.280 1.080 4.490 1.160 ;
+        RECT 3.280 1.040 4.240 1.080 ;
+        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 1.760 0.670 2.090 0.750 ;
+        RECT 3.280 0.670 3.450 1.040 ;
+        RECT 4.160 0.910 4.240 1.040 ;
+        RECT 4.410 0.920 4.490 1.080 ;
+        RECT 7.040 1.080 7.370 1.160 ;
+        RECT 4.410 0.910 4.470 0.920 ;
+        RECT 4.160 0.830 4.470 0.910 ;
+        RECT 7.040 0.910 7.120 1.080 ;
+        RECT 7.290 0.910 7.370 1.080 ;
+        RECT 8.480 1.080 8.810 1.160 ;
+        RECT 8.480 0.920 8.560 1.080 ;
+        RECT 7.040 0.830 7.370 0.910 ;
+        RECT 8.500 0.910 8.560 0.920 ;
+        RECT 8.730 0.920 8.810 1.080 ;
+        RECT 9.920 1.080 10.250 1.160 ;
+        RECT 8.730 0.910 8.790 0.920 ;
+        RECT 8.500 0.830 8.790 0.910 ;
+        RECT 9.920 0.910 10.000 1.080 ;
+        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 3.680 0.670 3.990 0.750 ;
+        RECT 1.760 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 3.680 0.500 3.760 0.670 ;
+        RECT 3.930 0.660 3.990 0.670 ;
+        RECT 6.320 0.670 6.650 0.750 ;
+        RECT 3.930 0.500 4.010 0.660 ;
+        RECT 3.680 0.420 4.010 0.500 ;
+        RECT 6.320 0.500 6.400 0.670 ;
+        RECT 6.570 0.500 6.650 0.670 ;
+        RECT 6.320 0.420 6.650 0.500 ;
+        RECT 8.000 0.670 8.330 0.750 ;
+        RECT 8.000 0.500 8.080 0.670 ;
+        RECT 8.250 0.500 8.330 0.670 ;
+        RECT 8.000 0.420 8.330 0.500 ;
+        RECT 10.400 0.670 10.730 0.750 ;
+        RECT 10.400 0.500 10.480 0.670 ;
+        RECT 10.650 0.500 10.730 0.670 ;
+        RECT 10.400 0.420 10.730 0.500 ;
+      LAYER met1 ;
+        RECT 0.820 2.830 1.110 2.890 ;
+        RECT 0.820 2.660 0.880 2.830 ;
+        RECT 1.050 2.820 1.110 2.830 ;
+        RECT 7.540 2.830 7.830 2.890 ;
+        RECT 7.540 2.820 7.600 2.830 ;
+        RECT 1.050 2.680 7.600 2.820 ;
+        RECT 1.050 2.660 1.110 2.680 ;
+        RECT 0.820 2.600 1.110 2.660 ;
+        RECT 7.540 2.660 7.600 2.680 ;
+        RECT 7.770 2.660 7.830 2.830 ;
+        RECT 7.540 2.600 7.830 2.660 ;
+        RECT 3.700 2.430 3.990 2.490 ;
+        RECT 0.650 2.350 2.470 2.410 ;
+        RECT 0.650 2.290 2.550 2.350 ;
+        RECT 0.650 2.270 2.320 2.290 ;
+        RECT 0.650 0.730 0.790 2.270 ;
+        RECT 2.260 2.120 2.320 2.270 ;
+        RECT 2.490 2.120 2.550 2.290 ;
+        RECT 3.700 2.260 3.760 2.430 ;
+        RECT 3.930 2.410 3.990 2.430 ;
+        RECT 6.340 2.430 6.630 2.490 ;
+        RECT 6.340 2.410 6.400 2.430 ;
+        RECT 3.930 2.270 6.400 2.410 ;
+        RECT 3.930 2.260 3.990 2.270 ;
+        RECT 3.700 2.200 3.990 2.260 ;
+        RECT 6.340 2.260 6.400 2.270 ;
+        RECT 6.570 2.260 6.630 2.430 ;
+        RECT 6.340 2.200 6.630 2.260 ;
+        RECT 2.260 2.060 2.550 2.120 ;
+        RECT 9.940 2.010 10.230 2.070 ;
+        RECT 1.780 1.890 2.070 1.950 ;
+        RECT 1.780 1.720 1.840 1.890 ;
+        RECT 2.010 1.870 2.070 1.890 ;
+        RECT 9.940 1.870 10.000 2.010 ;
+        RECT 2.010 1.840 10.000 1.870 ;
+        RECT 10.170 1.840 10.230 2.010 ;
+        RECT 2.010 1.780 10.230 1.840 ;
+        RECT 2.010 1.730 10.150 1.780 ;
+        RECT 2.010 1.720 2.070 1.730 ;
+        RECT 1.780 1.660 2.070 1.720 ;
+        RECT 2.260 1.480 2.550 1.540 ;
+        RECT 2.260 1.310 2.320 1.480 ;
+        RECT 2.490 1.470 2.550 1.480 ;
+        RECT 2.490 1.330 9.190 1.470 ;
+        RECT 2.490 1.310 2.550 1.330 ;
+        RECT 2.260 1.250 2.550 1.310 ;
+        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 3.700 0.670 3.990 0.730 ;
+        RECT 3.700 0.500 3.760 0.670 ;
+        RECT 3.930 0.660 3.990 0.670 ;
+        RECT 6.340 0.670 6.630 0.730 ;
+        RECT 6.340 0.660 6.400 0.670 ;
+        RECT 3.930 0.520 6.400 0.660 ;
+        RECT 3.930 0.500 3.990 0.520 ;
+        RECT 3.700 0.440 3.990 0.500 ;
+        RECT 6.340 0.500 6.400 0.520 ;
+        RECT 6.570 0.500 6.630 0.670 ;
+        RECT 6.340 0.440 6.630 0.500 ;
+        RECT 8.020 0.670 8.310 0.730 ;
+        RECT 8.020 0.500 8.080 0.670 ;
+        RECT 8.250 0.660 8.310 0.670 ;
+        RECT 9.050 0.660 9.190 1.330 ;
+        RECT 10.010 1.140 10.150 1.730 ;
+        RECT 9.940 1.080 10.230 1.140 ;
+        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 8.250 0.520 9.190 0.660 ;
+        RECT 8.250 0.500 8.310 0.520 ;
+        RECT 8.020 0.440 8.310 0.500 ;
+  END
+END VANBERKEL1991
+END LIBRARY
+
diff --git a/cells/lef/VANBERKEL1991.lef.beforemagic b/cells/lef/VANBERKEL1991.lef.beforemagic
new file mode 100644
index 0000000..d86c173
--- /dev/null
+++ b/cells/lef/VANBERKEL1991.lef.beforemagic
@@ -0,0 +1,359 @@
+MACRO VANBERKEL1991
+ CLASS CORE ;
+ FOREIGN VANBERKEL1991 0 0 ;
+ SIZE 11.52 BY 3.33 ;
+ ORIGIN 0 0 ;
+ SYMMETRY X Y R90 ;
+ SITE unit ;
+  PIN VPWR
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VPWR
+
+  PIN VGND
+   DIRECTION INOUT ;
+   USE GROUND ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END VGND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 7.05500000 2.19500000 7.34500000 2.27000000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.27000000 ;
+        RECT 7.05500000 2.27000000 10.70500000 2.41000000 ;
+        RECT 7.05500000 2.41000000 7.34500000 2.48500000 ;
+        RECT 10.41500000 2.41000000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    END
+  END B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        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
+
+
+  OBS
+    LAYER locali ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.09 ) ( 11.52 3.245 ) ;
+      RECT ( 4.635 2.965 ) ( 4.965 3.09 ) ;
+      RECT ( 0.795 2.83 ) ( 1.125 2.91 ) ;
+      RECT ( 0.795 2.66 ) ( 0.875 2.83 ) ;
+      RECT ( 1.045 2.66 ) ( 1.125 2.83 ) ;
+      RECT ( 4.635 2.795 ) ( 4.715 2.965 ) ;
+      RECT ( 4.885 2.795 ) ( 4.965 2.965 ) ;
+      RECT ( 8.955 2.965 ) ( 9.285 3.09 ) ;
+      RECT ( 4.635 2.715 ) ( 4.965 2.795 ) ;
+      RECT ( 7.515 2.83 ) ( 7.845 2.91 ) ;
+      RECT ( 0.795 2.58 ) ( 1.125 2.66 ) ;
+      RECT ( 7.515 2.66 ) ( 7.595 2.83 ) ;
+      RECT ( 7.765 2.66 ) ( 7.845 2.83 ) ;
+      RECT ( 8.955 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.285 2.965 ) ;
+      RECT ( 8.955 2.715 ) ( 9.285 2.795 ) ;
+      RECT ( 7.515 2.58 ) ( 7.845 2.66 ) ;
+      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 ( 3.675 2.425 ) ( 4.005 2.505 ) ;
+      RECT ( 1.775 2.175 ) ( 2.085 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 ( 1.835 1.885 ) ( 2.005 2.175 ) ;
+      RECT ( 1.275 1.075 ) ( 1.605 1.155 ) ;
+      RECT ( 1.275 0.905 ) ( 1.355 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 1.605 1.075 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.275 0.825 ) ( 1.585 0.905 ) ;
+      RECT ( 1.835 0.75 ) ( 2.005 1.715 ) ;
+      RECT ( 3.675 2.255 ) ( 3.755 2.425 ) ;
+      RECT ( 3.925 2.26 ) ( 4.005 2.425 ) ;
+      RECT ( 6.315 2.425 ) ( 6.645 2.505 ) ;
+      RECT ( 10.395 2.425 ) ( 10.725 2.505 ) ;
+      RECT ( 3.925 2.255 ) ( 3.985 2.26 ) ;
+      RECT ( 3.675 2.175 ) ( 3.985 2.255 ) ;
+      RECT ( 6.315 2.255 ) ( 6.395 2.425 ) ;
+      RECT ( 6.565 2.255 ) ( 6.645 2.425 ) ;
+      RECT ( 6.315 2.175 ) ( 6.645 2.255 ) ;
+      RECT ( 10.395 2.26 ) ( 10.475 2.425 ) ;
+      RECT ( 2.315 1.48 ) ( 2.485 2.12 ) ;
+      RECT ( 7.115 2.09 ) ( 7.285 2.255 ) ;
+      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 ( 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 ( 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 ( 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 ( 2.795 1.155 ) ( 2.965 1.76 ) ;
+      RECT ( 4.235 1.21 ) ( 4.405 1.76 ) ;
+      RECT ( 3.275 1.155 ) ( 4.405 1.21 ) ;
+      RECT ( 7.115 1.155 ) ( 7.285 1.76 ) ;
+      RECT ( 8.555 1.155 ) ( 8.725 1.76 ) ;
+      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 ( 3.275 1.075 ) ( 4.485 1.155 ) ;
+      RECT ( 3.275 1.04 ) ( 4.235 1.075 ) ;
+      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 ( 1.755 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 3.275 0.67 ) ( 3.445 1.04 ) ;
+      RECT ( 4.155 0.905 ) ( 4.235 1.04 ) ;
+      RECT ( 4.405 0.92 ) ( 4.485 1.075 ) ;
+      RECT ( 7.035 1.075 ) ( 7.365 1.155 ) ;
+      RECT ( 4.405 0.905 ) ( 4.465 0.92 ) ;
+      RECT ( 4.155 0.825 ) ( 4.465 0.905 ) ;
+      RECT ( 7.035 0.905 ) ( 7.115 1.075 ) ;
+      RECT ( 7.285 0.905 ) ( 7.365 1.075 ) ;
+      RECT ( 8.475 1.075 ) ( 8.805 1.155 ) ;
+      RECT ( 8.475 0.92 ) ( 8.555 1.075 ) ;
+      RECT ( 7.035 0.825 ) ( 7.365 0.905 ) ;
+      RECT ( 8.495 0.905 ) ( 8.555 0.92 ) ;
+      RECT ( 8.725 0.92 ) ( 8.805 1.075 ) ;
+      RECT ( 9.915 1.075 ) ( 10.245 1.155 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 0.92 ) ;
+      RECT ( 8.495 0.825 ) ( 8.785 0.905 ) ;
+      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 ( 3.675 0.67 ) ( 3.985 0.75 ) ;
+      RECT ( 3.675 0.5 ) ( 3.755 0.67 ) ;
+      RECT ( 3.925 0.655 ) ( 3.985 0.67 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
+      RECT ( 3.925 0.5 ) ( 4.005 0.655 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 3.675 0.42 ) ( 4.005 0.5 ) ;
+      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 ( 6.315 0.67 ) ( 6.645 0.75 ) ;
+      RECT ( 6.315 0.5 ) ( 6.395 0.67 ) ;
+      RECT ( 6.565 0.5 ) ( 6.645 0.67 ) ;
+      RECT ( 6.315 0.42 ) ( 6.645 0.5 ) ;
+      RECT ( 7.995 0.67 ) ( 8.325 0.75 ) ;
+      RECT ( 7.995 0.5 ) ( 8.075 0.67 ) ;
+      RECT ( 8.245 0.5 ) ( 8.325 0.67 ) ;
+      RECT ( 7.995 0.42 ) ( 8.325 0.5 ) ;
+      RECT ( 8.955 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.67 ) ;
+      RECT ( 9.205 0.5 ) ( 9.285 0.67 ) ;
+      RECT ( 8.955 0.42 ) ( 9.285 0.5 ) ;
+      RECT ( 10.395 0.67 ) ( 10.725 0.75 ) ;
+      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 ( 4.715 0.24 ) ( 4.885 0.42 ) ;
+      RECT ( 9.035 0.24 ) ( 9.205 0.42 ) ;
+      RECT ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 9.035 0.085 ) ;
+      RECT ( 9.205 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+    LAYER metal1 ;
+      RECT ( 0 3.415 ) ( 11.52 3.57 ) ;
+      RECT ( 0 3.245 ) ( 4.715 3.415 ) ;
+      RECT ( 4.885 3.245 ) ( 11.52 3.415 ) ;
+      RECT ( 0 3.09 ) ( 11.52 3.245 ) ;
+      RECT ( 8.975 2.965 ) ( 9.265 3.09 ) ;
+      RECT ( 0.815 2.83 ) ( 1.105 2.89 ) ;
+      RECT ( 0.815 2.66 ) ( 0.875 2.83 ) ;
+      RECT ( 1.045 2.815 ) ( 1.105 2.83 ) ;
+      RECT ( 7.535 2.83 ) ( 7.825 2.89 ) ;
+      RECT ( 7.535 2.815 ) ( 7.595 2.83 ) ;
+      RECT ( 1.045 2.675 ) ( 7.595 2.815 ) ;
+      RECT ( 1.045 2.66 ) ( 1.105 2.675 ) ;
+      RECT ( 0.815 2.6 ) ( 1.105 2.66 ) ;
+      RECT ( 7.535 2.66 ) ( 7.595 2.675 ) ;
+      RECT ( 7.765 2.66 ) ( 7.825 2.83 ) ;
+      RECT ( 8.975 2.795 ) ( 9.035 2.965 ) ;
+      RECT ( 9.205 2.795 ) ( 9.265 2.965 ) ;
+      RECT ( 8.975 2.735 ) ( 9.265 2.795 ) ;
+      RECT ( 7.535 2.6 ) ( 7.825 2.66 ) ;
+      RECT ( 3.695 2.425 ) ( 3.985 2.485 ) ;
+      RECT ( 0.65 2.35 ) ( 2.47 2.41 ) ;
+      RECT ( 0.65 2.29 ) ( 2.545 2.35 ) ;
+      RECT ( 0.65 2.27 ) ( 2.315 2.29 ) ;
+      RECT ( 0.65 0.73 ) ( 0.79 2.27 ) ;
+      RECT ( 2.255 2.12 ) ( 2.315 2.27 ) ;
+      RECT ( 2.485 2.12 ) ( 2.545 2.29 ) ;
+      RECT ( 3.695 2.255 ) ( 3.755 2.425 ) ;
+      RECT ( 3.925 2.41 ) ( 3.985 2.425 ) ;
+      RECT ( 6.335 2.425 ) ( 6.625 2.485 ) ;
+      RECT ( 6.335 2.41 ) ( 6.395 2.425 ) ;
+      RECT ( 3.925 2.27 ) ( 6.395 2.41 ) ;
+      RECT ( 3.925 2.255 ) ( 3.985 2.27 ) ;
+      RECT ( 3.695 2.195 ) ( 3.985 2.255 ) ;
+      RECT ( 6.335 2.255 ) ( 6.395 2.27 ) ;
+      RECT ( 6.565 2.255 ) ( 6.625 2.425 ) ;
+      RECT ( 6.335 2.195 ) ( 6.625 2.255 ) ;
+      RECT ( 7.055 2.425 ) ( 7.345 2.485 ) ;
+      RECT ( 7.055 2.255 ) ( 7.115 2.425 ) ;
+      RECT ( 7.285 2.41 ) ( 7.345 2.425 ) ;
+      RECT ( 10.415 2.425 ) ( 10.705 2.485 ) ;
+      RECT ( 10.415 2.41 ) ( 10.475 2.425 ) ;
+      RECT ( 7.285 2.27 ) ( 10.475 2.41 ) ;
+      RECT ( 7.285 2.255 ) ( 7.345 2.27 ) ;
+      RECT ( 7.055 2.195 ) ( 7.345 2.255 ) ;
+      RECT ( 10.415 2.255 ) ( 10.475 2.27 ) ;
+      RECT ( 10.645 2.255 ) ( 10.705 2.425 ) ;
+      RECT ( 10.415 2.195 ) ( 10.705 2.255 ) ;
+      RECT ( 1.295 2.01 ) ( 1.585 2.07 ) ;
+      RECT ( 2.255 2.06 ) ( 2.545 2.12 ) ;
+      RECT ( 1.295 1.84 ) ( 1.355 2.01 ) ;
+      RECT ( 1.525 1.84 ) ( 1.585 2.01 ) ;
+      RECT ( 9.935 2.01 ) ( 10.225 2.07 ) ;
+      RECT ( 1.295 1.78 ) ( 1.585 1.84 ) ;
+      RECT ( 1.775 1.885 ) ( 2.065 1.945 ) ;
+      RECT ( 1.37 1.135 ) ( 1.51 1.78 ) ;
+      RECT ( 1.775 1.715 ) ( 1.835 1.885 ) ;
+      RECT ( 2.005 1.87 ) ( 2.065 1.885 ) ;
+      RECT ( 9.935 1.87 ) ( 9.995 2.01 ) ;
+      RECT ( 2.005 1.84 ) ( 9.995 1.87 ) ;
+      RECT ( 10.165 1.84 ) ( 10.225 2.01 ) ;
+      RECT ( 2.005 1.78 ) ( 10.225 1.84 ) ;
+      RECT ( 2.005 1.73 ) ( 10.15 1.78 ) ;
+      RECT ( 2.005 1.715 ) ( 2.065 1.73 ) ;
+      RECT ( 1.775 1.655 ) ( 2.065 1.715 ) ;
+      RECT ( 2.255 1.48 ) ( 2.545 1.54 ) ;
+      RECT ( 2.255 1.31 ) ( 2.315 1.48 ) ;
+      RECT ( 2.485 1.465 ) ( 2.545 1.48 ) ;
+      RECT ( 2.485 1.325 ) ( 9.19 1.465 ) ;
+      RECT ( 2.485 1.31 ) ( 2.545 1.325 ) ;
+      RECT ( 2.255 1.25 ) ( 2.545 1.31 ) ;
+      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 1.06 ) ( 3.025 1.075 ) ;
+      RECT ( 8.495 1.075 ) ( 8.785 1.135 ) ;
+      RECT ( 8.495 1.06 ) ( 8.555 1.075 ) ;
+      RECT ( 2.965 0.92 ) ( 8.555 1.06 ) ;
+      RECT ( 2.965 0.905 ) ( 3.025 0.92 ) ;
+      RECT ( 2.735 0.845 ) ( 3.025 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 ( 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 ( 1.37 0.655 ) ( 1.51 0.845 ) ;
+      RECT ( 3.215 0.67 ) ( 3.505 0.73 ) ;
+      RECT ( 3.215 0.655 ) ( 3.275 0.67 ) ;
+      RECT ( 1.37 0.515 ) ( 3.275 0.655 ) ;
+      RECT ( 0.575 0.44 ) ( 0.865 0.5 ) ;
+      RECT ( 3.215 0.5 ) ( 3.275 0.515 ) ;
+      RECT ( 3.445 0.5 ) ( 3.505 0.67 ) ;
+      RECT ( 3.215 0.44 ) ( 3.505 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.335 0.67 ) ( 6.625 0.73 ) ;
+      RECT ( 6.335 0.655 ) ( 6.395 0.67 ) ;
+      RECT ( 3.925 0.515 ) ( 6.395 0.655 ) ;
+      RECT ( 3.925 0.5 ) ( 3.985 0.515 ) ;
+      RECT ( 3.695 0.44 ) ( 3.985 0.5 ) ;
+      RECT ( 6.335 0.5 ) ( 6.395 0.515 ) ;
+      RECT ( 6.565 0.5 ) ( 6.625 0.67 ) ;
+      RECT ( 6.335 0.44 ) ( 6.625 0.5 ) ;
+      RECT ( 8.015 0.67 ) ( 8.305 0.73 ) ;
+      RECT ( 8.015 0.5 ) ( 8.075 0.67 ) ;
+      RECT ( 8.245 0.655 ) ( 8.305 0.67 ) ;
+      RECT ( 9.05 0.655 ) ( 9.19 1.325 ) ;
+      RECT ( 10.01 1.135 ) ( 10.15 1.73 ) ;
+      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 ( 10.49 0.73 ) ( 10.63 2.195 ) ;
+      RECT ( 8.245 0.515 ) ( 9.19 0.655 ) ;
+      RECT ( 10.415 0.67 ) ( 10.705 0.73 ) ;
+      RECT ( 8.245 0.5 ) ( 8.305 0.515 ) ;
+      RECT ( 8.015 0.44 ) ( 8.305 0.5 ) ;
+      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 ( 0 0.085 ) ( 11.52 0.24 ) ;
+      RECT ( 0 -0.085 ) ( 9.035 0.085 ) ;
+      RECT ( 9.205 -0.085 ) ( 11.52 0.085 ) ;
+      RECT ( 0 -0.24 ) ( 11.52 -0.085 ) ;
+
+  end
+END VANBERKEL1991
diff --git a/cells/lef/VANBERKEL1991.lef.temp b/cells/lef/VANBERKEL1991.lef.temp
new file mode 100644
index 0000000..085d207
--- /dev/null
+++ b/cells/lef/VANBERKEL1991.lef.temp
@@ -0,0 +1,83 @@
+MACRO VANBERKEL1991
+ CLASS CORE ;
+ FOREIGN VANBERKEL1991 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 7.05500000 2.19500000 7.34500000 2.27000000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.27000000 ;
+        RECT 7.05500000 2.27000000 10.70500000 2.41000000 ;
+        RECT 7.05500000 2.41000000 7.34500000 2.48500000 ;
+        RECT 10.41500000 2.41000000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    END
+  END B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        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
+
+END VANBERKEL1991
diff --git a/cells/lef/XNOR2X1.lef b/cells/lef/XNOR2X1.lef
index 5a4782a..2007f94 100644
--- a/cells/lef/XNOR2X1.lef
+++ b/cells/lef/XNOR2X1.lef
@@ -16,22 +16,22 @@
     PORT
       LAYER met1 ;
         RECT 0.000 3.090 10.080 3.570 ;
-        RECT 7.540 2.990 7.830 3.090 ;
-        RECT 7.540 2.820 7.600 2.990 ;
-        RECT 7.770 2.820 7.830 2.990 ;
-        RECT 7.540 2.760 7.830 2.820 ;
+        RECT 7.540 2.970 7.830 3.090 ;
+        RECT 7.540 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.830 2.970 ;
+        RECT 7.540 2.740 7.830 2.800 ;
     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 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
+        RECT 7.520 2.970 7.850 3.090 ;
+        RECT 7.520 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.850 2.970 ;
+        RECT 7.520 2.720 7.850 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -40,26 +40,20 @@
     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 1.780 0.670 2.070 0.730 ;
+        RECT 1.780 0.500 1.840 0.670 ;
+        RECT 2.010 0.500 2.070 0.670 ;
+        RECT 1.780 0.440 2.070 0.500 ;
+        RECT 7.540 0.670 7.830 0.730 ;
+        RECT 7.540 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.830 0.670 ;
+        RECT 7.540 0.440 7.830 0.500 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 7.610 0.240 7.750 0.440 ;
         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 VGND
@@ -78,15 +72,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 B
   PIN A
@@ -96,14 +90,14 @@
     PORT
       LAYER met1 ;
         RECT 4.180 2.000 4.470 2.070 ;
-        RECT 4.180 1.860 5.350 2.000 ;
+        RECT 4.180 1.860 5.830 2.000 ;
         RECT 4.180 1.780 4.470 1.860 ;
-        RECT 5.210 1.060 5.350 1.860 ;
+        RECT 5.690 1.140 5.830 1.860 ;
         RECT 8.500 1.780 8.790 2.070 ;
         RECT 8.570 1.140 8.710 1.780 ;
         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.920 8.790 1.060 ;
         RECT 5.620 0.850 5.910 0.920 ;
         RECT 8.500 0.850 8.790 0.920 ;
     END
@@ -144,11 +138,12 @@
         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 ;
         RECT 9.210 2.260 9.290 2.430 ;
-        RECT 8.980 2.180 9.290 2.260 ;
+        RECT 8.960 2.180 9.290 2.260 ;
         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 ;
@@ -157,7 +152,7 @@
         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 2.010 8.790 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 ;
@@ -168,22 +163,32 @@
         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 7.290 0.920 7.370 1.080 ;
         RECT 8.480 1.080 8.810 1.160 ;
+        RECT 7.290 0.910 7.350 0.920 ;
+        RECT 7.040 0.830 7.350 0.910 ;
         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 1.780 0.670 2.090 0.750 ;
+        RECT 1.780 0.660 1.840 0.670 ;
         RECT 0.560 0.420 0.890 0.500 ;
+        RECT 1.760 0.500 1.840 0.660 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 1.760 0.420 2.090 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 4.640 0.420 4.970 0.500 ;
+        RECT 7.520 0.670 7.850 0.750 ;
+        RECT 7.520 0.500 7.600 0.670 ;
+        RECT 7.770 0.500 7.850 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 7.520 0.420 7.850 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 ;
@@ -198,20 +203,22 @@
         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 8.980 2.430 9.270 2.490 ;
-        RECT 8.980 2.410 9.040 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 9.040 2.410 ;
+        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.690 2.070 5.830 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 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 aadeaae..2dbb9ec 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 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 B
 
@@ -70,13 +70,13 @@
        LAYER met1 ;
         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 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.21000000 1.06000000 5.35000000 1.85500000 ;
-        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.83000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
         RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
@@ -86,37 +86,17 @@
   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.245 ) ( 7.595 3.415 ) ;
+      RECT ( 7.765 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 ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 7.515 2.965 ) ( 7.845 3.09 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 7.515 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.845 2.965 ) ;
+      RECT ( 7.515 2.715 ) ( 7.845 2.795 ) ;
       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 ) ;
@@ -152,12 +132,12 @@
       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.675 2.09 ) ( 5.845 2.255 ) ;
       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 ( 8.955 2.255 ) ( 9.035 2.425 ) ;
       RECT ( 9.205 2.255 ) ( 9.285 2.425 ) ;
-      RECT ( 8.975 2.175 ) ( 9.285 2.255 ) ;
+      RECT ( 8.955 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 ) ;
@@ -166,9 +146,10 @@
       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 2.01 ) ( 8.785 2.09 ) ;
       RECT ( 8.475 1.84 ) ( 8.555 2.01 ) ;
-      RECT ( 8.725 1.84 ) ( 8.805 2.01 ) ;
+      RECT ( 8.725 2.005 ) ( 8.785 2.01 ) ;
+      RECT ( 8.725 1.84 ) ( 8.805 2.005 ) ;
       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 ) ;
@@ -177,153 +158,115 @@
       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 ( 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 ( 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 ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
       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 ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 4.635 0.67 ) ( 4.965 0.75 ) ;
       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 ( 7.515 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 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 ( 7.515 0.42 ) ( 7.845 0.5 ) ;
       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.085 ) ( 7.595 0.085 ) ;
+      RECT ( 7.765 -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.245 ) ( 7.595 3.415 ) ;
+      RECT ( 7.765 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.535 2.965 ) ( 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.535 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.825 2.965 ) ;
+      RECT ( 7.535 2.735 ) ( 7.825 2.795 ) ;
       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 ( 5.615 2.425 ) ( 5.905 2.485 ) ;
+      RECT ( 5.615 2.41 ) ( 5.675 2.425 ) ;
       RECT ( 0.575 2.195 ) ( 0.865 2.255 ) ;
-      RECT ( 3.77 2.27 ) ( 9.035 2.41 ) ;
+      RECT ( 3.77 2.27 ) ( 5.675 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 ( 1.525 1.995 ) ( 1.585 2.01 ) ;
       RECT ( 2.735 2.01 ) ( 3.025 2.07 ) ;
-      RECT ( 2.735 1.84 ) ( 2.795 2.01 ) ;
+      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 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.525 0.905 ) ( 1.585 1.075 ) ;
       RECT ( 1.295 0.845 ) ( 1.585 0.905 ) ;
-      RECT ( 2.735 0.905 ) ( 2.795 0.92 ) ;
+      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 ( 3.77 1.06 ) ( 3.91 2.27 ) ;
-      RECT ( 5.69 2.07 ) ( 5.83 2.27 ) ;
+      RECT ( 5.615 2.255 ) ( 5.675 2.27 ) ;
+      RECT ( 5.845 2.41 ) ( 5.905 2.425 ) ;
+      RECT ( 8.975 2.425 ) ( 9.265 2.485 ) ;
+      RECT ( 8.975 2.41 ) ( 9.035 2.425 ) ;
+      RECT ( 5.845 2.27 ) ( 9.035 2.41 ) ;
+      RECT ( 5.845 2.255 ) ( 5.905 2.27 ) ;
+      RECT ( 5.615 2.195 ) ( 5.905 2.255 ) ;
       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 ( 8.495 2.01 ) ( 8.785 2.07 ) ;
+      RECT ( 4.405 1.855 ) ( 5.83 1.995 ) ;
       RECT ( 4.405 1.84 ) ( 4.465 1.855 ) ;
       RECT ( 4.175 1.78 ) ( 4.465 1.84 ) ;
+      RECT ( 5.69 1.135 ) ( 5.83 1.855 ) ;
+      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 ( 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.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 ( 8.495 1.075 ) ( 8.785 1.135 ) ;
       RECT ( 8.495 1.06 ) ( 8.555 1.075 ) ;
@@ -337,46 +280,28 @@
       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 ( 1.775 0.67 ) ( 2.065 0.73 ) ;
+      RECT ( 1.775 0.5 ) ( 1.835 0.67 ) ;
+      RECT ( 2.005 0.5 ) ( 2.065 0.67 ) ;
+      RECT ( 1.775 0.44 ) ( 2.065 0.5 ) ;
+      RECT ( 4.655 0.67 ) ( 4.945 0.73 ) ;
       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 ( 7.535 0.67 ) ( 7.825 0.73 ) ;
+      RECT ( 7.535 0.5 ) ( 7.595 0.67 ) ;
+      RECT ( 7.765 0.5 ) ( 7.825 0.67 ) ;
+      RECT ( 7.535 0.44 ) ( 7.825 0.5 ) ;
+      RECT ( 8.975 0.67 ) ( 9.265 0.73 ) ;
       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 ( 1.85 0.24 ) ( 1.99 0.44 ) ;
+      RECT ( 7.61 0.24 ) ( 7.75 0.44 ) ;
       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.085 ) ( 7.595 0.085 ) ;
+      RECT ( 7.765 -0.085 ) ( 10.08 0.085 ) ;
       RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
 
   end
diff --git a/cells/lef/XNOR2X1.lef.temp b/cells/lef/XNOR2X1.lef.temp
index 3432c26..8c25385 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 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 B
 
@@ -70,13 +70,13 @@
        LAYER met1 ;
         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 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.21000000 1.06000000 5.35000000 1.85500000 ;
-        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.83000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
         RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
diff --git a/cells/lef/XOR2X1.lef b/cells/lef/XOR2X1.lef
index a73a4fb..bdb7eb7 100644
--- a/cells/lef/XOR2X1.lef
+++ b/cells/lef/XOR2X1.lef
@@ -16,22 +16,22 @@
     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 ;
+        RECT 1.780 2.970 2.070 3.090 ;
+        RECT 1.780 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.070 2.970 ;
+        RECT 1.780 2.740 2.070 2.800 ;
+        RECT 7.540 2.970 7.830 3.090 ;
+        RECT 7.540 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.830 2.970 ;
+        RECT 7.540 2.740 7.830 2.800 ;
     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 ;
+        RECT 1.760 2.970 2.090 3.090 ;
+        RECT 1.760 2.800 1.840 2.970 ;
+        RECT 2.010 2.800 2.090 2.970 ;
+        RECT 1.760 2.720 2.090 2.800 ;
     END
   END VPWR
   PIN VGND
@@ -40,26 +40,22 @@
     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 1.780 0.670 2.090 0.750 ;
+        RECT 1.780 0.660 1.840 0.670 ;
+        RECT 1.760 0.500 1.840 0.660 ;
+        RECT 2.010 0.500 2.090 0.670 ;
+        RECT 7.540 0.670 7.850 0.750 ;
+        RECT 7.540 0.660 7.600 0.670 ;
+        RECT 1.760 0.420 2.090 0.500 ;
+        RECT 7.520 0.500 7.600 0.660 ;
+        RECT 7.770 0.500 7.850 0.670 ;
+        RECT 7.520 0.420 7.850 0.500 ;
+        RECT 1.840 0.240 2.010 0.420 ;
+        RECT 7.600 0.240 7.770 0.420 ;
         RECT 0.000 -0.240 10.080 0.240 ;
     END
   END VGND
@@ -69,7 +65,7 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 4.660 0.440 4.950 0.730 ;
+        RECT 4.660 2.600 4.950 2.890 ;
     END
   END Y
   PIN A
@@ -78,15 +74,17 @@
     SHAPE ABUTMENT ;
     PORT
       LAYER met1 ;
-        RECT 1.300 2.000 1.590 2.070 ;
+        RECT 1.300 1.780 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 4.250 1.860 5.910 2.000 ;
         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 ;
+        RECT 1.300 1.060 1.590 1.140 ;
+        RECT 4.180 1.060 4.470 1.140 ;
+        RECT 1.300 0.920 4.470 1.060 ;
+        RECT 1.300 0.850 1.590 0.920 ;
+        RECT 4.180 0.850 4.470 0.920 ;
     END
   END A
   PIN B
@@ -95,26 +93,37 @@
     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 ;
+        RECT 2.810 2.270 8.710 2.410 ;
+        RECT 2.810 2.070 2.950 2.270 ;
+        RECT 8.570 2.070 8.710 2.270 ;
+        RECT 2.740 1.780 3.030 2.070 ;
+        RECT 8.500 1.780 8.790 2.070 ;
+        RECT 8.570 1.140 8.710 1.780 ;
+        RECT 8.500 0.850 8.790 1.140 ;
     END
   END B
   OBS
       LAYER li1 ;
+        RECT 7.520 2.970 7.850 3.050 ;
+        RECT 4.640 2.830 4.970 2.910 ;
+        RECT 4.640 2.660 4.720 2.830 ;
+        RECT 4.890 2.660 4.970 2.830 ;
+        RECT 7.520 2.800 7.600 2.970 ;
+        RECT 7.770 2.800 7.850 2.970 ;
+        RECT 7.520 2.720 7.850 2.800 ;
+        RECT 4.640 2.580 4.970 2.660 ;
         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 5.140 2.430 5.450 2.510 ;
+        RECT 5.140 2.410 5.200 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 5.120 2.260 5.200 2.410 ;
+        RECT 5.370 2.260 5.450 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 5.120 2.180 5.450 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 ;
@@ -126,9 +135,9 @@
         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.410 1.840 4.890 2.010 ;
         RECT 4.160 1.760 4.490 1.840 ;
-        RECT 2.800 1.620 2.970 1.760 ;
+        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 ;
@@ -139,11 +148,12 @@
         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 4.410 0.910 4.490 1.080 ;
+        RECT 4.160 0.830 4.490 0.910 ;
+        RECT 0.560 0.670 0.890 0.750 ;
+        RECT 4.720 0.670 4.890 1.840 ;
+        RECT 5.200 0.750 5.370 2.180 ;
+        RECT 5.620 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 ;
@@ -155,88 +165,74 @@
         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.600 0.920 5.680 1.080 ;
+        RECT 5.620 0.910 5.680 0.920 ;
         RECT 5.850 0.910 5.930 1.080 ;
-        RECT 5.600 0.830 5.930 0.910 ;
+        RECT 5.620 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 8.730 0.920 8.810 1.080 ;
+        RECT 8.730 0.910 8.790 0.920 ;
+        RECT 8.480 0.830 8.790 0.910 ;
+        RECT 5.120 0.670 5.450 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 5.120 0.500 5.200 0.670 ;
+        RECT 5.370 0.500 5.450 0.670 ;
+        RECT 5.120 0.420 5.450 0.500 ;
+        RECT 8.960 0.670 9.290 0.750 ;
+        RECT 8.960 0.500 9.040 0.670 ;
         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.810 2.260 0.870 2.430 ;
         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 0.650 0.730 0.790 2.200 ;
         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 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 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.290 0.910 7.350 1.080 ;
         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.810 0.660 0.870 0.670 ;
+        RECT 4.660 0.670 4.950 0.730 ;
+        RECT 4.660 0.660 4.720 0.670 ;
+        RECT 0.810 0.520 4.720 0.660 ;
+        RECT 0.810 0.500 0.870 0.520 ;
         RECT 0.580 0.440 0.870 0.500 ;
+        RECT 4.660 0.500 4.720 0.520 ;
+        RECT 4.890 0.660 4.950 0.670 ;
+        RECT 5.690 0.660 5.830 0.850 ;
+        RECT 4.890 0.520 5.830 0.660 ;
+        RECT 7.130 0.660 7.270 0.850 ;
+        RECT 9.050 0.730 9.190 2.200 ;
         RECT 8.980 0.670 9.270 0.730 ;
-        RECT 8.980 0.500 9.040 0.670 ;
+        RECT 8.980 0.660 9.040 0.670 ;
+        RECT 7.130 0.520 9.040 0.660 ;
+        RECT 4.890 0.500 4.950 0.520 ;
+        RECT 4.660 0.440 4.950 0.500 ;
+        RECT 8.980 0.500 9.040 0.520 ;
         RECT 9.210 0.500 9.270 0.670 ;
         RECT 8.980 0.440 9.270 0.500 ;
   END
diff --git a/cells/lef/XOR2X1.lef.beforemagic b/cells/lef/XOR2X1.lef.beforemagic
index 95fcc9f..aaf82c3 100644
--- a/cells/lef/XOR2X1.lef.beforemagic
+++ b/cells/lef/XOR2X1.lef.beforemagic
@@ -38,7 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+        RECT 4.65500000 2.60000000 4.94500000 2.89000000 ;
     END
   END Y
 
@@ -49,14 +49,16 @@
     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.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 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 4.25000000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
     END
   END A
@@ -68,9 +70,13 @@
     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 ;
+        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.27000000 ;
+        RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
+        RECT 2.81000000 2.27000000 8.71000000 2.41000000 ;
     END
   END B
 
@@ -78,50 +84,34 @@
   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 3.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 3.245 ) ( 10.08 3.415 ) ;
+      RECT ( 0 3.215 ) ( 10.08 3.245 ) ;
+      RECT ( 0 3.09 ) ( 7.345 3.215 ) ;
+      RECT ( 8.015 3.09 ) ( 10.08 3.215 ) ;
+      RECT ( 1.755 2.965 ) ( 2.085 3.09 ) ;
+      RECT ( 1.755 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.085 2.965 ) ;
+      RECT ( 7.515 2.965 ) ( 7.845 3.045 ) ;
+      RECT ( 1.755 2.715 ) ( 2.085 2.795 ) ;
+      RECT ( 4.635 2.83 ) ( 4.965 2.91 ) ;
+      RECT ( 4.635 2.66 ) ( 4.715 2.83 ) ;
+      RECT ( 4.885 2.66 ) ( 4.965 2.83 ) ;
+      RECT ( 7.515 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.845 2.965 ) ;
+      RECT ( 7.515 2.715 ) ( 7.845 2.795 ) ;
+      RECT ( 4.635 2.58 ) ( 4.965 2.66 ) ;
       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 ( 5.135 2.425 ) ( 5.445 2.505 ) ;
+      RECT ( 5.135 2.41 ) ( 5.195 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 ( 5.115 2.255 ) ( 5.195 2.41 ) ;
+      RECT ( 5.365 2.255 ) ( 5.445 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 ( 5.115 2.175 ) ( 5.445 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 ) ;
@@ -135,9 +125,9 @@
       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.405 1.84 ) ( 4.885 2.01 ) ;
       RECT ( 4.155 1.76 ) ( 4.485 1.84 ) ;
-      RECT ( 2.795 1.615 ) ( 2.965 1.76 ) ;
+      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 ) ;
@@ -148,12 +138,21 @@
       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 ( 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 ( 1.775 0.67 ) ( 2.085 0.75 ) ;
+      RECT ( 1.775 0.655 ) ( 1.835 0.67 ) ;
+      RECT ( 0.555 0.42 ) ( 0.885 0.5 ) ;
+      RECT ( 1.755 0.5 ) ( 1.835 0.655 ) ;
+      RECT ( 2.005 0.5 ) ( 2.085 0.67 ) ;
+      RECT ( 4.715 0.67 ) ( 4.885 1.84 ) ;
+      RECT ( 5.195 0.75 ) ( 5.365 2.175 ) ;
+      RECT ( 5.615 2.01 ) ( 5.925 2.09 ) ;
+      RECT ( 5.615 2.005 ) ( 5.675 2.01 ) ;
+      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 ) ;
@@ -164,152 +163,85 @@
       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.595 0.92 ) ( 5.675 1.075 ) ;
+      RECT ( 5.615 0.905 ) ( 5.675 0.92 ) ;
       RECT ( 5.845 0.905 ) ( 5.925 1.075 ) ;
-      RECT ( 5.595 0.825 ) ( 5.925 0.905 ) ;
+      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 ( 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 ( 8.725 0.92 ) ( 8.805 1.075 ) ;
+      RECT ( 8.725 0.905 ) ( 8.785 0.92 ) ;
+      RECT ( 8.475 0.825 ) ( 8.785 0.905 ) ;
+      RECT ( 5.115 0.67 ) ( 5.445 0.75 ) ;
+      RECT ( 5.115 0.5 ) ( 5.195 0.67 ) ;
+      RECT ( 5.365 0.5 ) ( 5.445 0.67 ) ;
+      RECT ( 7.535 0.67 ) ( 7.845 0.75 ) ;
+      RECT ( 7.535 0.655 ) ( 7.595 0.67 ) ;
+      RECT ( 1.755 0.42 ) ( 2.085 0.5 ) ;
+      RECT ( 5.115 0.42 ) ( 5.445 0.5 ) ;
+      RECT ( 7.515 0.5 ) ( 7.595 0.655 ) ;
+      RECT ( 7.765 0.5 ) ( 7.845 0.67 ) ;
+      RECT ( 7.515 0.42 ) ( 7.845 0.5 ) ;
+      RECT ( 8.955 0.67 ) ( 9.285 0.75 ) ;
+      RECT ( 8.955 0.5 ) ( 9.035 0.67 ) ;
       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 ( 1.835 0.24 ) ( 2.005 0.42 ) ;
+      RECT ( 7.595 0.24 ) ( 7.765 0.42 ) ;
       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.085 ) ( 7.595 0.085 ) ;
+      RECT ( 7.765 -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.245 ) ( 1.835 3.415 ) ;
+      RECT ( 2.005 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 ( 1.775 2.965 ) ( 2.065 3.09 ) ;
+      RECT ( 1.775 2.795 ) ( 1.835 2.965 ) ;
+      RECT ( 2.005 2.795 ) ( 2.065 2.965 ) ;
+      RECT ( 7.535 2.965 ) ( 7.825 3.09 ) ;
+      RECT ( 1.775 2.735 ) ( 2.065 2.795 ) ;
+      RECT ( 4.655 2.83 ) ( 4.945 2.89 ) ;
+      RECT ( 4.655 2.66 ) ( 4.715 2.83 ) ;
+      RECT ( 4.885 2.66 ) ( 4.945 2.83 ) ;
+      RECT ( 7.535 2.795 ) ( 7.595 2.965 ) ;
+      RECT ( 7.765 2.795 ) ( 7.825 2.965 ) ;
+      RECT ( 7.535 2.735 ) ( 7.825 2.795 ) ;
+      RECT ( 4.655 2.6 ) ( 4.945 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.805 2.255 ) ( 0.865 2.425 ) ;
+      RECT ( 8.975 2.425 ) ( 9.265 2.485 ) ;
       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 ( 2.81 2.27 ) ( 8.71 2.41 ) ;
       RECT ( 0.65 0.73 ) ( 0.79 2.195 ) ;
+      RECT ( 2.81 2.07 ) ( 2.95 2.27 ) ;
+      RECT ( 8.57 2.07 ) ( 8.71 2.27 ) ;
+      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 ( 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 ( 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 ( 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 ( 2.735 1.78 ) ( 3.025 1.84 ) ;
+      RECT ( 4.25 1.855 ) ( 5.675 1.995 ) ;
       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 ) ;
@@ -319,60 +251,55 @@
       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 ( 8.57 1.135 ) ( 8.71 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 ( 4.175 1.075 ) ( 4.465 1.135 ) ;
+      RECT ( 4.175 1.06 ) ( 4.235 1.075 ) ;
+      RECT ( 1.525 0.92 ) ( 4.235 1.06 ) ;
+      RECT ( 1.525 0.905 ) ( 1.585 0.92 ) ;
+      RECT ( 1.295 0.845 ) ( 1.585 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 ( 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 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.285 0.905 ) ( 7.345 1.075 ) ;
       RECT ( 7.055 0.845 ) ( 7.345 0.905 ) ;
-      RECT ( 9.05 0.73 ) ( 9.19 0.92 ) ;
+      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 ( 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.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 ( 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 ( 4.655 0.5 ) ( 4.715 0.515 ) ;
+      RECT ( 4.885 0.655 ) ( 4.945 0.67 ) ;
+      RECT ( 5.69 0.655 ) ( 5.83 0.845 ) ;
+      RECT ( 4.885 0.515 ) ( 5.83 0.655 ) ;
+      RECT ( 7.13 0.655 ) ( 7.27 0.845 ) ;
+      RECT ( 9.05 0.73 ) ( 9.19 2.195 ) ;
       RECT ( 8.975 0.67 ) ( 9.265 0.73 ) ;
+      RECT ( 8.975 0.655 ) ( 9.035 0.67 ) ;
+      RECT ( 7.13 0.515 ) ( 9.035 0.655 ) ;
+      RECT ( 4.885 0.5 ) ( 4.945 0.515 ) ;
       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 ( 8.975 0.5 ) ( 9.035 0.515 ) ;
       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.085 ) ( 7.595 0.085 ) ;
+      RECT ( 7.765 -0.085 ) ( 10.08 0.085 ) ;
       RECT ( 0 -0.24 ) ( 10.08 -0.085 ) ;
 
   end
diff --git a/cells/lef/XOR2X1.lef.temp b/cells/lef/XOR2X1.lef.temp
index d3b321e..34671e6 100644
--- a/cells/lef/XOR2X1.lef.temp
+++ b/cells/lef/XOR2X1.lef.temp
@@ -38,7 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+        RECT 4.65500000 2.60000000 4.94500000 2.89000000 ;
     END
   END Y
 
@@ -49,14 +49,16 @@
     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.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 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 4.25000000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
     END
   END A
@@ -68,9 +70,13 @@
     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 ;
+        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.27000000 ;
+        RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
+        RECT 2.81000000 2.27000000 8.71000000 2.41000000 ;
     END
   END B
 
diff --git a/cells/lef/orig/AND2X1.lef b/cells/lef/orig/AND2X1.lef
index cfcd7d6..799d474 100644
--- a/cells/lef/orig/AND2X1.lef
+++ b/cells/lef/orig/AND2X1.lef
@@ -52,8 +52,8 @@
      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 ;
+        RECT 2.81000000 1.13500000 2.95000000 1.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
     END
   END B
 
@@ -82,93 +82,75 @@
     LAYER pdiffc ;
      RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
-     RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 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.79500000 1.44500000 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 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
-     RECT 0.55500000 2.74000000 0.88500000 3.09000000 ;
-     RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 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.44500000 2.96500000 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 1.83500000 2.25500000 2.00500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
-     RECT 3.27500000 2.82000000 3.44500000 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 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 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 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 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 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 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 0.65500000 1.99000000 1.85500000 ;
+     RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
+     RECT 1.85000000 1.85500000 4.46500000 1.99500000 ;
+     RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
+     RECT 1.85000000 1.99500000 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 ;
-     RECT 0.57500000 2.76000000 0.86500000 3.09000000 ;
-     RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/AND2X2.lef b/cells/lef/orig/AND2X2.lef
index aa48554..de6760e 100644
--- a/cells/lef/orig/AND2X2.lef
+++ b/cells/lef/orig/AND2X2.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.38500000 ;
+        RECT 2.73500000 1.38500000 3.02500000 1.67500000 ;
+    END
+  END B
+
   PIN A
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -57,17 +70,6 @@
     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 ;
@@ -80,93 +82,75 @@
     LAYER pdiffc ;
      RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
-     RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 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.79500000 1.44500000 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 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
-     RECT 0.55500000 2.74000000 0.88500000 3.09000000 ;
-     RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 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.44500000 2.96500000 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 1.83500000 2.25500000 2.00500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 0.63500000 2.82000000 0.80500000 2.99000000 ;
-     RECT 3.27500000 2.82000000 3.44500000 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 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 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 1.37000000 1.13500000 1.51000000 1.78000000 ;
      RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
-     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 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.85000000 0.65500000 1.99000000 1.85500000 ;
+     RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
+     RECT 1.85000000 1.85500000 4.46500000 1.99500000 ;
+     RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
+     RECT 1.85000000 1.99500000 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 ;
-     RECT 0.57500000 2.76000000 0.86500000 3.09000000 ;
-     RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/AOI21X1.lef b/cells/lef/orig/AOI21X1.lef
index fe3a99e..d3f945c 100644
--- a/cells/lef/orig/AOI21X1.lef
+++ b/cells/lef/orig/AOI21X1.lef
@@ -38,29 +38,16 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
         RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
-        RECT 0.57500000 0.51500000 4.94500000 0.65500000 ;
-        RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.51500000 4.94500000 0.65500000 ;
+        RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
         RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 ;
@@ -87,6 +74,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 ;
@@ -97,20 +97,21 @@
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
 
     LAYER pdiffc ;
-     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 2.31500000 2.25500000 2.48500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
+     RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
-     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.83500000 0.24000000 2.00500000 0.42000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 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 ;
@@ -118,26 +119,15 @@
      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 0.55500000 2.17500000 0.88500000 2.50500000 ;
+     RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
      RECT 2.23500000 2.17500000 2.56500000 2.50500000 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
-     RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
+     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 ;
@@ -145,22 +135,11 @@
      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 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 2.31500000 2.25500000 2.48500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 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 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
@@ -173,19 +152,19 @@
      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 0.57500000 0.44000000 0.86500000 0.51500000 ;
+     RECT 0.81500000 0.44000000 1.10500000 0.51500000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
-     RECT 0.57500000 0.51500000 4.94500000 0.65500000 ;
-     RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
+     RECT 0.81500000 0.51500000 4.94500000 0.65500000 ;
+     RECT 0.81500000 0.65500000 1.10500000 0.73000000 ;
      RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
-     RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
-     RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+     RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
+     RECT 0.81500000 2.19500000 1.10500000 2.48500000 ;
      RECT 2.25500000 2.19500000 2.54500000 2.27000000 ;
      RECT 4.65500000 2.19500000 4.94500000 2.27000000 ;
      RECT 2.25500000 2.27000000 4.94500000 2.41000000 ;
      RECT 2.25500000 2.41000000 2.54500000 2.48500000 ;
      RECT 4.65500000 2.41000000 4.94500000 2.48500000 ;
-     RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/AOI22X1.lef b/cells/lef/orig/AOI22X1.lef
index 836bb14..f016fe8 100644
--- a/cells/lef/orig/AOI22X1.lef
+++ b/cells/lef/orig/AOI22X1.lef
@@ -43,24 +43,13 @@
         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.21000000 0.65500000 5.35000000 2.19500000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
+        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 ;
     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 B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -74,19 +63,6 @@
     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 ;
@@ -100,6 +76,32 @@
     END
   END A
 
+  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 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
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -116,17 +118,18 @@
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
      RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
      RECT 6.15500000 2.66000000 6.32500000 2.83000000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
 
     LAYER li1 ;
-     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 3.27500000 0.24000000 3.44500000 0.42000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
@@ -140,25 +143,11 @@
      RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
      RECT 5.11500000 2.17500000 5.44500000 2.50500000 ;
      RECT 6.07500000 2.58000000 6.40500000 2.91000000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 7.20000000 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 3.27500000 -0.08500000 3.44500000 0.08500000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
      RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -173,22 +162,8 @@
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
      RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
      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 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
@@ -209,8 +184,10 @@
      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.21000000 0.65500000 5.35000000 2.19500000 ;
-     RECT 5.13500000 2.19500000 5.42500000 2.48500000 ;
+     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.19500000 1.10500000 2.27000000 ;
      RECT 3.21500000 2.19500000 3.50500000 2.27000000 ;
      RECT 0.81500000 2.27000000 3.50500000 2.41000000 ;
@@ -220,7 +197,7 @@
      RECT 6.09500000 2.60000000 6.38500000 2.67500000 ;
      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 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/ASYNC2.lef b/cells/lef/orig/ASYNC2.lef
new file mode 100644
index 0000000..bf5388e
--- /dev/null
+++ b/cells/lef/orig/ASYNC2.lef
@@ -0,0 +1,190 @@
+MACRO ASYNC2
+ CLASS CORE ;
+ FOREIGN ASYNC2 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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+        RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
+        RECT 4.25000000 2.27000000 6.38500000 2.41000000 ;
+        RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+        RECT 3.29000000 0.73000000 3.43000000 0.92000000 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 3.29000000 0.92000000 5.90500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 3.29000000 1.06000000 3.43000000 2.19500000 ;
+        RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+    END
+  END CN
+
+  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 ;
+   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
+
+ 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 4.71500000 0.24000000 4.88500000 0.42000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
+     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+     RECT 4.23500000 1.15500000 4.40500000 1.76000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
+     RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 4.71500000 -0.08500000 4.88500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 5.67500000 0.90500000 5.84500000 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 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 4.71500000 3.24500000 4.88500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     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 3.21500000 0.44000000 3.50500000 0.73000000 ;
+     RECT 3.29000000 0.73000000 3.43000000 0.92000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+     RECT 3.29000000 0.92000000 5.90500000 1.06000000 ;
+     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+     RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+     RECT 3.29000000 1.06000000 3.43000000 2.19500000 ;
+     RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+     RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+     RECT 4.17500000 1.78000000 4.46500000 2.07000000 ;
+     RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+     RECT 4.25000000 2.07000000 4.39000000 2.27000000 ;
+     RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
+     RECT 4.25000000 2.27000000 6.38500000 2.41000000 ;
+     RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 4.65500000 2.73500000 4.94500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+ END
+END ASYNC2
diff --git a/cells/lef/orig/ASYNC3.lef b/cells/lef/orig/ASYNC3.lef
new file mode 100644
index 0000000..ff73fee
--- /dev/null
+++ b/cells/lef/orig/ASYNC3.lef
@@ -0,0 +1,251 @@
+MACRO ASYNC3
+ CLASS CORE ;
+ FOREIGN ASYNC3 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN CN
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+        RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
+        RECT 1.77500000 1.78000000 2.06500000 1.85500000 ;
+        RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+        RECT 1.77500000 1.85500000 10.22500000 1.99500000 ;
+        RECT 1.77500000 1.99500000 2.06500000 2.07000000 ;
+        RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+    END
+  END CN
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.05500000 0.44000000 7.34500000 0.51500000 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.51500000 ;
+        RECT 7.05500000 0.51500000 10.70500000 0.65500000 ;
+        RECT 7.05500000 0.65500000 7.34500000 0.73000000 ;
+        RECT 10.41500000 0.65500000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+    END
+  END A
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    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 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 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
+     RECT 7.59500000 2.25500000 7.76500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 3.75500000 2.66000000 3.92500000 2.83000000 ;
+     RECT 6.39500000 2.66000000 6.56500000 2.83000000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.39500000 0.50000000 6.56500000 0.67000000 ;
+     RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 3.67500000 0.42000000 4.00500000 0.75000000 ;
+     RECT 6.31500000 0.42000000 6.64500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 4.71500000 0.24000000 4.88500000 0.42000000 ;
+     RECT 9.03500000 0.24000000 9.20500000 0.42000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
+     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
+     RECT 9.91500000 0.82500000 10.24500000 1.15500000 ;
+     RECT 7.51500000 0.42000000 7.84500000 0.75000000 ;
+     RECT 7.59500000 0.75000000 7.76500000 1.61500000 ;
+     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 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 3.27500000 0.50000000 3.44500000 1.04000000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.04000000 ;
+     RECT 3.27500000 1.04000000 4.48500000 1.15500000 ;
+     RECT 3.27500000 1.15500000 4.40500000 1.21000000 ;
+     RECT 4.23500000 1.21000000 4.40500000 1.76000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 7.11500000 0.50000000 7.28500000 0.82500000 ;
+     RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
+     RECT 7.11500000 1.15500000 7.28500000 1.76000000 ;
+     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 0.79500000 2.17500000 1.12500000 2.50500000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 1.83500000 0.75000000 2.00500000 2.17500000 ;
+     RECT 1.75500000 2.17500000 2.08500000 2.50500000 ;
+     RECT 7.51500000 2.17500000 7.84500000 2.50500000 ;
+     RECT 10.39500000 2.17500000 10.72500000 2.50500000 ;
+     RECT 3.67500000 2.58000000 4.00500000 2.91000000 ;
+     RECT 6.31500000 2.58000000 6.64500000 2.91000000 ;
+     RECT 8.95500000 2.71500000 9.28500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 9.03500000 -0.08500000 9.20500000 0.08500000 ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 6.39500000 0.50000000 6.56500000 0.67000000 ;
+     RECT 7.11500000 0.50000000 7.28500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
+     RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
+     RECT 7.59500000 1.44500000 7.76500000 1.61500000 ;
+     RECT 1.83500000 1.84000000 2.00500000 2.01000000 ;
+     RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 7.59500000 2.25500000 7.76500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 3.75500000 2.66000000 3.92500000 2.83000000 ;
+     RECT 6.39500000 2.66000000 6.56500000 2.83000000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 4.71500000 3.24500000 4.88500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
+     RECT 6.33500000 0.44000000 6.62500000 0.51500000 ;
+     RECT 3.69500000 0.51500000 6.62500000 0.65500000 ;
+     RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
+     RECT 6.33500000 0.65500000 6.62500000 0.73000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+     RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+     RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+     RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+     RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+     RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+     RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
+     RECT 0.89000000 0.73000000 1.03000000 1.46000000 ;
+     RECT 7.53500000 1.38500000 7.82500000 1.46000000 ;
+     RECT 0.89000000 1.46000000 7.82500000 1.60000000 ;
+     RECT 7.53500000 1.60000000 7.82500000 1.67500000 ;
+     RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+     RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
+     RECT 1.77500000 1.78000000 2.06500000 1.85500000 ;
+     RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+     RECT 1.77500000 1.85500000 10.22500000 1.99500000 ;
+     RECT 1.77500000 1.99500000 2.06500000 2.07000000 ;
+     RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+     RECT 0.81500000 2.19500000 1.10500000 2.27000000 ;
+     RECT 7.53500000 2.19500000 7.82500000 2.27000000 ;
+     RECT 0.81500000 2.27000000 7.82500000 2.41000000 ;
+     RECT 0.81500000 2.41000000 1.10500000 2.48500000 ;
+     RECT 7.53500000 2.41000000 7.82500000 2.48500000 ;
+     RECT 7.05500000 0.44000000 7.34500000 0.51500000 ;
+     RECT 10.41500000 0.44000000 10.70500000 0.51500000 ;
+     RECT 7.05500000 0.51500000 10.70500000 0.65500000 ;
+     RECT 7.05500000 0.65500000 7.34500000 0.73000000 ;
+     RECT 10.41500000 0.65500000 10.70500000 0.73000000 ;
+     RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+     RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+     RECT 3.69500000 2.60000000 3.98500000 2.67500000 ;
+     RECT 6.33500000 2.60000000 6.62500000 2.67500000 ;
+     RECT 3.69500000 2.67500000 6.62500000 2.81500000 ;
+     RECT 3.69500000 2.81500000 3.98500000 2.89000000 ;
+     RECT 6.33500000 2.81500000 6.62500000 2.89000000 ;
+     RECT 8.97500000 2.73500000 9.26500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+ END
+END ASYNC3
diff --git a/cells/lef/orig/BUFX2.lef b/cells/lef/orig/BUFX2.lef
index 465b8cf..6823be9 100644
--- a/cells/lef/orig/BUFX2.lef
+++ b/cells/lef/orig/BUFX2.lef
@@ -52,6 +52,8 @@
      CLASS CORE ;
        LAYER met1 ;
         RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
     END
   END A
 
@@ -65,61 +67,49 @@
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      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.76000000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 1.35500000 1.44500000 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 ;
      RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 4.32000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 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.44500000 1.52500000 1.61500000 ;
      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 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
      RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
+     RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
      RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
      RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
@@ -132,7 +122,7 @@
      RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
      RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/BUFX4.lef b/cells/lef/orig/BUFX4.lef
index 3d28e93..48e6f2e 100644
--- a/cells/lef/orig/BUFX4.lef
+++ b/cells/lef/orig/BUFX4.lef
@@ -38,13 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
-        RECT 3.69500000 0.51500000 4.87000000 0.65500000 ;
-        RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
-        RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
-        RECT 4.73000000 0.65500000 4.87000000 2.27000000 ;
-        RECT 3.69500000 2.27000000 4.87000000 2.41000000 ;
-        RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
     END
   END Y
 
@@ -55,9 +49,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
 
@@ -72,102 +64,75 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 4.71500000 0.34000000 4.88500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
-     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
-     RECT 4.63500000 0.24000000 4.96500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
-     RECT 3.67500000 0.42000000 4.00500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      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 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 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
-     RECT 3.67500000 2.17500000 4.00500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
-     RECT 4.63500000 2.74000000 4.96500000 3.09000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 3.27500000 0.75000000 3.44500000 2.17500000 ;
+     RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 4.71500000 -0.08500000 4.88500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
-     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 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.31000000 1.52500000 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 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 4.71500000 3.24500000 4.88500000 3.41500000 ;
 
     LAYER met1 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      RECT 0.00000000 -0.24000000 5.76000000 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.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 4.73000000 0.24000000 4.87000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+     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 4.17500000 0.84500000 4.46500000 0.92000000 ;
-     RECT 0.65000000 0.92000000 4.46500000 1.06000000 ;
-     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
-     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 2.73500000 0.84500000 3.02500000 1.13500000 ;
+     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
      RECT 2.81000000 1.13500000 2.95000000 1.78000000 ;
      RECT 4.25000000 1.13500000 4.39000000 1.78000000 ;
-     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
-     RECT 4.17500000 1.78000000 4.46500000 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 4.17500000 1.78000000 4.46500000 1.85500000 ;
+     RECT 0.65000000 1.85500000 4.46500000 1.99500000 ;
+     RECT 2.73500000 1.99500000 3.02500000 2.07000000 ;
+     RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
+     RECT 0.65000000 1.99500000 0.79000000 2.19500000 ;
      RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-     RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
-     RECT 3.69500000 0.51500000 4.87000000 0.65500000 ;
-     RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
-     RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
-     RECT 4.73000000 0.65500000 4.87000000 2.27000000 ;
-     RECT 3.69500000 2.27000000 4.87000000 2.41000000 ;
-     RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
-     RECT 4.65500000 2.76000000 4.94500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 4.65500000 2.73500000 4.94500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/CLKBUF1.lef b/cells/lef/orig/CLKBUF1.lef
index af35e64..7109462 100644
--- a/cells/lef/orig/CLKBUF1.lef
+++ b/cells/lef/orig/CLKBUF1.lef
@@ -38,7 +38,9 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        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 ;
     END
   END Y
 
@@ -50,9 +52,7 @@
      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 ;
@@ -85,189 +85,130 @@
      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 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 ;
-     RECT 9.03500000 2.82000000 9.20500000 2.99000000 ;
-     RECT 11.91500000 2.82000000 12.08500000 2.99000000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
-     RECT 6.15500000 0.34000000 6.32500000 0.51000000 ;
-     RECT 9.03500000 0.34000000 9.20500000 0.51000000 ;
-     RECT 11.91500000 0.34000000 12.08500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
      RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
      RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 12.96000000 0.24000000 ;
-     RECT 0.55500000 0.24000000 0.88500000 0.59000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
-     RECT 6.07500000 0.24000000 6.40500000 0.59000000 ;
-     RECT 8.95500000 0.24000000 9.28500000 0.59000000 ;
-     RECT 11.83500000 0.24000000 12.16500000 0.59000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
      RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
      RECT 7.51500000 0.42000000 7.84500000 0.75000000 ;
+     RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
+     RECT 11.83500000 0.42000000 12.16500000 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 2.71500000 0.82500000 3.04500000 1.15500000 ;
-     RECT 2.79500000 1.15500000 2.96500000 1.48000000 ;
+     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.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 ;
-     RECT 8.95500000 2.74000000 9.28500000 3.09000000 ;
-     RECT 11.83500000 2.74000000 12.16500000 3.09000000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
+     RECT 6.07500000 2.71500000 6.40500000 3.04500000 ;
+     RECT 8.95500000 2.71500000 9.28500000 3.04500000 ;
+     RECT 11.83500000 2.71500000 12.16500000 3.04500000 ;
      RECT 0.00000000 3.09000000 12.96000000 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 10.23500000 -0.08500000 10.40500000 0.08500000 ;
-     RECT 10.71500000 -0.08500000 10.88500000 0.08500000 ;
-     RECT 11.19500000 -0.08500000 11.36500000 0.08500000 ;
-     RECT 11.67500000 -0.08500000 11.84500000 0.08500000 ;
-     RECT 12.15500000 -0.08500000 12.32500000 0.08500000 ;
-     RECT 12.63500000 -0.08500000 12.80500000 0.08500000 ;
-     RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
-     RECT 6.15500000 0.34000000 6.32500000 0.51000000 ;
-     RECT 9.03500000 0.34000000 9.20500000 0.51000000 ;
-     RECT 11.91500000 0.34000000 12.08500000 0.51000000 ;
+     RECT 6.15500000 -0.08500000 6.32500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
      RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
-     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 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 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 10.47500000 1.31000000 10.64500000 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 ;
+     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 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 ;
-     RECT 9.03500000 2.82000000 9.20500000 2.99000000 ;
-     RECT 11.91500000 2.82000000 12.08500000 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 ;
-     RECT 10.23500000 3.24500000 10.40500000 3.41500000 ;
-     RECT 10.71500000 3.24500000 10.88500000 3.41500000 ;
-     RECT 11.19500000 3.24500000 11.36500000 3.41500000 ;
-     RECT 11.67500000 3.24500000 11.84500000 3.41500000 ;
-     RECT 12.15500000 3.24500000 12.32500000 3.41500000 ;
-     RECT 12.63500000 3.24500000 12.80500000 3.41500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
+     RECT 6.15500000 3.24500000 6.32500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 12.96000000 0.24000000 ;
-     RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
-     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 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 6.17000000 0.24000000 6.31000000 0.44000000 ;
+     RECT 9.05000000 0.24000000 9.19000000 0.44000000 ;
+     RECT 11.93000000 0.24000000 12.07000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+     RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+     RECT 8.97500000 0.44000000 9.26500000 0.73000000 ;
+     RECT 11.85500000 0.44000000 12.14500000 0.73000000 ;
      RECT 7.53500000 0.44000000 7.82500000 0.73000000 ;
-     RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
-     RECT 11.37500000 0.84500000 11.66500000 1.13500000 ;
+     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 10.01000000 1.13500000 10.15000000 1.78000000 ;
      RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
-     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 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.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 ;
@@ -280,30 +221,30 @@
      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.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 5.69000000 2.07000000 5.83000000 2.67500000 ;
+     RECT 4.25000000 2.67500000 5.83000000 2.81500000 ;
      RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
-     RECT 7.05500000 0.84500000 7.34500000 1.13500000 ;
+     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.13000000 1.13500000 7.27000000 1.78000000 ;
-     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 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.65500000 2.19500000 4.94500000 2.48500000 ;
      RECT 7.13000000 2.07000000 7.27000000 2.67500000 ;
-     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 ;
-     RECT 8.97500000 2.76000000 9.26500000 3.09000000 ;
-     RECT 11.85500000 2.76000000 12.14500000 3.09000000 ;
+     RECT 8.57000000 2.07000000 8.71000000 2.67500000 ;
+     RECT 7.13000000 2.67500000 8.71000000 2.81500000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
+     RECT 6.09500000 2.73500000 6.38500000 3.09000000 ;
+     RECT 8.97500000 2.73500000 9.26500000 3.09000000 ;
+     RECT 11.85500000 2.73500000 12.14500000 3.09000000 ;
      RECT 0.00000000 3.09000000 12.96000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/CLKBUF2.lef b/cells/lef/orig/CLKBUF2.lef
new file mode 100644
index 0000000..b857e61
--- /dev/null
+++ b/cells/lef/orig/CLKBUF2.lef
@@ -0,0 +1,350 @@
+MACRO CLKBUF2
+ CLASS CORE ;
+ FOREIGN CLKBUF2 0 0 ;
+ SIZE 18.72 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 18.72000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+    END
+  END GND
+
+  PIN Y
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 16.17500000 0.44000000 16.46500000 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 1.37000000 1.13500000 1.51000000 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 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
+        RECT 1.37000000 2.67500000 2.95000000 2.81500000 ;
+    END
+  END A
+
+ 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 9.99500000 0.90500000 10.16500000 1.07500000 ;
+     RECT 11.43500000 0.90500000 11.60500000 1.07500000 ;
+     RECT 12.87500000 0.90500000 13.04500000 1.07500000 ;
+     RECT 14.31500000 0.90500000 14.48500000 1.07500000 ;
+     RECT 15.75500000 0.90500000 15.92500000 1.07500000 ;
+     RECT 17.19500000 0.90500000 17.36500000 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 ;
+     RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
+     RECT 12.87500000 1.84000000 13.04500000 2.01000000 ;
+     RECT 14.31500000 1.84000000 14.48500000 2.01000000 ;
+     RECT 15.75500000 1.84000000 15.92500000 2.01000000 ;
+     RECT 17.19500000 1.84000000 17.36500000 2.01000000 ;
+
+    LAYER pdiffc ;
+     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 13.35500000 2.25500000 13.52500000 2.42500000 ;
+     RECT 16.23500000 2.25500000 16.40500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
+     RECT 14.79500000 2.79500000 14.96500000 2.96500000 ;
+     RECT 17.67500000 2.79500000 17.84500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 0.67000000 ;
+     RECT 13.35500000 0.50000000 13.52500000 0.67000000 ;
+     RECT 14.79500000 0.50000000 14.96500000 0.67000000 ;
+     RECT 16.23500000 0.50000000 16.40500000 0.67000000 ;
+     RECT 17.67500000 0.50000000 17.84500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 7.51500000 0.42000000 7.84500000 0.75000000 ;
+     RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
+     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
+     RECT 11.83500000 0.42000000 12.16500000 0.75000000 ;
+     RECT 13.27500000 0.42000000 13.60500000 0.75000000 ;
+     RECT 14.71500000 0.42000000 15.04500000 0.75000000 ;
+     RECT 17.59500000 0.42000000 17.92500000 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 12.79500000 0.82500000 13.12500000 1.15500000 ;
+     RECT 14.23500000 0.82500000 14.56500000 1.15500000 ;
+     RECT 15.67500000 0.82500000 16.00500000 1.15500000 ;
+     RECT 17.11500000 0.82500000 17.44500000 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 7.03500000 1.76000000 7.36500000 2.09000000 ;
+     RECT 9.91500000 1.76000000 10.24500000 2.09000000 ;
+     RECT 12.79500000 1.76000000 13.12500000 2.09000000 ;
+     RECT 15.67500000 1.76000000 16.00500000 2.09000000 ;
+     RECT 17.11500000 1.76000000 17.44500000 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 2.17500000 10.72500000 2.50500000 ;
+     RECT 13.27500000 2.17500000 13.60500000 2.50500000 ;
+     RECT 16.15500000 0.42000000 16.48500000 0.75000000 ;
+     RECT 16.23500000 0.75000000 16.40500000 2.17500000 ;
+     RECT 16.15500000 2.17500000 16.48500000 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 11.43500000 1.44500000 11.60500000 1.76000000 ;
+     RECT 11.35500000 1.76000000 11.68500000 2.09000000 ;
+     RECT 11.43500000 2.09000000 11.60500000 2.83000000 ;
+     RECT 14.31500000 1.44500000 14.48500000 1.76000000 ;
+     RECT 14.23500000 1.76000000 14.56500000 2.09000000 ;
+     RECT 14.31500000 2.09000000 14.48500000 2.83000000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
+     RECT 6.07500000 2.71500000 6.40500000 3.04500000 ;
+     RECT 8.95500000 2.71500000 9.28500000 3.04500000 ;
+     RECT 11.83500000 2.71500000 12.16500000 3.04500000 ;
+     RECT 14.71500000 2.71500000 15.04500000 3.04500000 ;
+     RECT 17.59500000 2.71500000 17.92500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 0.67000000 ;
+     RECT 13.35500000 0.50000000 13.52500000 0.67000000 ;
+     RECT 14.79500000 0.50000000 14.96500000 0.67000000 ;
+     RECT 16.23500000 0.50000000 16.40500000 0.67000000 ;
+     RECT 17.67500000 0.50000000 17.84500000 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 12.87500000 0.90500000 13.04500000 1.07500000 ;
+     RECT 14.31500000 0.90500000 14.48500000 1.07500000 ;
+     RECT 15.75500000 0.90500000 15.92500000 1.07500000 ;
+     RECT 17.19500000 0.90500000 17.36500000 1.07500000 ;
+     RECT 5.67500000 1.44500000 5.84500000 1.61500000 ;
+     RECT 8.55500000 1.44500000 8.72500000 1.61500000 ;
+     RECT 11.43500000 1.44500000 11.60500000 1.61500000 ;
+     RECT 14.31500000 1.44500000 14.48500000 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 7.11500000 1.84000000 7.28500000 2.01000000 ;
+     RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 12.87500000 1.84000000 13.04500000 2.01000000 ;
+     RECT 15.75500000 1.84000000 15.92500000 2.01000000 ;
+     RECT 17.19500000 1.84000000 17.36500000 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 13.35500000 2.25500000 13.52500000 2.42500000 ;
+     RECT 5.67500000 2.66000000 5.84500000 2.83000000 ;
+     RECT 8.55500000 2.66000000 8.72500000 2.83000000 ;
+     RECT 11.43500000 2.66000000 11.60500000 2.83000000 ;
+     RECT 14.31500000 2.66000000 14.48500000 2.83000000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
+     RECT 14.79500000 2.79500000 14.96500000 2.96500000 ;
+     RECT 17.67500000 2.79500000 17.84500000 2.96500000 ;
+     RECT 9.03500000 3.24500000 9.20500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 16.17500000 0.44000000 16.46500000 0.73000000 ;
+     RECT 0.00000000 -0.24000000 18.72000000 0.24000000 ;
+     RECT 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 6.17000000 0.24000000 6.31000000 0.44000000 ;
+     RECT 9.05000000 0.24000000 9.19000000 0.44000000 ;
+     RECT 11.93000000 0.24000000 12.07000000 0.44000000 ;
+     RECT 14.81000000 0.24000000 14.95000000 0.44000000 ;
+     RECT 17.69000000 0.24000000 17.83000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+     RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+     RECT 8.97500000 0.44000000 9.26500000 0.73000000 ;
+     RECT 11.85500000 0.44000000 12.14500000 0.73000000 ;
+     RECT 14.73500000 0.44000000 15.02500000 0.73000000 ;
+     RECT 17.61500000 0.44000000 17.90500000 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 11.37500000 0.84500000 11.66500000 1.13500000 ;
+     RECT 11.45000000 1.13500000 11.59000000 1.38500000 ;
+     RECT 11.37500000 1.38500000 11.66500000 1.67500000 ;
+     RECT 14.25500000 0.84500000 14.54500000 1.13500000 ;
+     RECT 14.33000000 1.13500000 14.47000000 1.38500000 ;
+     RECT 14.25500000 1.38500000 14.54500000 1.67500000 ;
+     RECT 13.29500000 0.44000000 13.58500000 0.73000000 ;
+     RECT 15.69500000 0.84500000 15.98500000 1.13500000 ;
+     RECT 17.13500000 0.84500000 17.42500000 1.13500000 ;
+     RECT 15.77000000 1.13500000 15.91000000 1.78000000 ;
+     RECT 17.21000000 1.13500000 17.35000000 1.78000000 ;
+     RECT 13.37000000 0.73000000 13.51000000 1.85500000 ;
+     RECT 15.69500000 1.78000000 15.98500000 1.85500000 ;
+     RECT 17.13500000 1.78000000 17.42500000 1.85500000 ;
+     RECT 13.37000000 1.85500000 17.42500000 1.99500000 ;
+     RECT 15.69500000 1.99500000 15.98500000 2.07000000 ;
+     RECT 17.13500000 1.99500000 17.42500000 2.07000000 ;
+     RECT 13.37000000 1.99500000 13.51000000 2.19500000 ;
+     RECT 13.29500000 2.19500000 13.58500000 2.48500000 ;
+     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.78000000 3.02500000 2.07000000 ;
+     RECT 1.37000000 2.07000000 1.51000000 2.67500000 ;
+     RECT 2.81000000 2.07000000 2.95000000 2.67500000 ;
+     RECT 1.37000000 2.67500000 2.95000000 2.81500000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     RECT 1.85000000 0.73000000 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 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.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 7.05500000 0.84500000 7.34500000 1.13500000 ;
+     RECT 7.13000000 1.13500000 7.27000000 1.78000000 ;
+     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.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 7.53500000 0.44000000 7.82500000 0.73000000 ;
+     RECT 9.93500000 0.84500000 10.22500000 1.13500000 ;
+     RECT 10.01000000 1.13500000 10.15000000 1.78000000 ;
+     RECT 7.61000000 0.73000000 7.75000000 1.85500000 ;
+     RECT 9.93500000 1.78000000 10.22500000 1.85500000 ;
+     RECT 7.61000000 1.85500000 10.22500000 1.99500000 ;
+     RECT 9.93500000 1.99500000 10.22500000 2.07000000 ;
+     RECT 7.61000000 1.99500000 7.75000000 2.19500000 ;
+     RECT 7.53500000 2.19500000 7.82500000 2.48500000 ;
+     RECT 10.01000000 2.07000000 10.15000000 2.67500000 ;
+     RECT 11.37500000 2.60000000 11.66500000 2.67500000 ;
+     RECT 10.01000000 2.67500000 11.66500000 2.81500000 ;
+     RECT 11.37500000 2.81500000 11.66500000 2.89000000 ;
+     RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+     RECT 12.81500000 0.84500000 13.10500000 1.13500000 ;
+     RECT 12.89000000 1.13500000 13.03000000 1.78000000 ;
+     RECT 10.49000000 0.73000000 10.63000000 1.85500000 ;
+     RECT 12.81500000 1.78000000 13.10500000 1.85500000 ;
+     RECT 10.49000000 1.85500000 13.10500000 1.99500000 ;
+     RECT 12.81500000 1.99500000 13.10500000 2.07000000 ;
+     RECT 10.49000000 1.99500000 10.63000000 2.19500000 ;
+     RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+     RECT 12.89000000 2.07000000 13.03000000 2.67500000 ;
+     RECT 14.25500000 2.60000000 14.54500000 2.67500000 ;
+     RECT 12.89000000 2.67500000 14.54500000 2.81500000 ;
+     RECT 14.25500000 2.81500000 14.54500000 2.89000000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
+     RECT 6.09500000 2.73500000 6.38500000 3.09000000 ;
+     RECT 8.97500000 2.73500000 9.26500000 3.09000000 ;
+     RECT 11.85500000 2.73500000 12.14500000 3.09000000 ;
+     RECT 14.73500000 2.73500000 15.02500000 3.09000000 ;
+     RECT 17.61500000 2.73500000 17.90500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 18.72000000 3.57000000 ;
+
+ END
+END CLKBUF2
diff --git a/cells/lef/orig/HAX1.lef b/cells/lef/orig/HAX1.lef
new file mode 100644
index 0000000..0799ba2
--- /dev/null
+++ b/cells/lef/orig/HAX1.lef
@@ -0,0 +1,280 @@
+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 li1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+    END
+  END GND
+
+  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 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 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
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
+        RECT 11.37500000 0.84500000 11.66500000 0.92000000 ;
+        RECT 5.61500000 0.92000000 11.66500000 1.06000000 ;
+        RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+        RECT 11.37500000 1.06000000 11.66500000 1.13500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
+        RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+        RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
+    END
+  END A
+
+ OBS
+    LAYER polycont ;
+     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 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 14.31500000 0.90500000 14.48500000 1.07500000 ;
+     RECT 1.35500000 1.84000000 1.52500000 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 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
+     RECT 14.31500000 1.84000000 14.48500000 2.01000000 ;
+
+    LAYER pdiffc ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 3.51500000 2.25500000 3.68500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 9.51500000 2.25500000 9.68500000 2.42500000 ;
+     RECT 14.79500000 2.25500000 14.96500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 7.83500000 2.79500000 8.00500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
+     RECT 13.59500000 2.79500000 13.76500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.51500000 0.50000000 3.68500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 7.83500000 0.50000000 8.00500000 0.67000000 ;
+     RECT 9.51500000 0.50000000 9.68500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 0.67000000 ;
+     RECT 13.59500000 0.50000000 13.76500000 0.67000000 ;
+     RECT 14.79500000 0.50000000 14.96500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 3.43500000 0.42000000 3.76500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 7.75500000 0.42000000 8.08500000 0.75000000 ;
+     RECT 9.43500000 0.42000000 9.76500000 0.75000000 ;
+     RECT 11.83500000 0.42000000 12.16500000 0.75000000 ;
+     RECT 13.51500000 0.42000000 13.84500000 0.75000000 ;
+     RECT 14.71500000 0.42000000 15.04500000 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 11.35500000 0.82500000 11.68500000 1.15500000 ;
+     RECT 14.23500000 0.82500000 14.56500000 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 5.59500000 1.76000000 5.92500000 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 0.82500000 10.24500000 1.15500000 ;
+     RECT 9.99500000 1.15500000 10.16500000 1.76000000 ;
+     RECT 9.91500000 1.76000000 10.24500000 2.09000000 ;
+     RECT 11.35500000 1.76000000 11.68500000 2.09000000 ;
+     RECT 14.23500000 1.76000000 14.56500000 2.09000000 ;
+     RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
+     RECT 3.43500000 2.17500000 3.76500000 2.50500000 ;
+     RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
+     RECT 9.43500000 2.17500000 9.76500000 2.50500000 ;
+     RECT 14.71500000 2.17500000 15.04500000 2.50500000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 4.23500000 2.09000000 4.40500000 2.83000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 11.83500000 2.71500000 12.16500000 3.04500000 ;
+     RECT 13.51500000 2.71500000 13.84500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.09000000 ;
+     RECT 7.75500000 2.71500000 8.08500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 7.83500000 -0.08500000 8.00500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.51500000 0.50000000 3.68500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 7.83500000 0.50000000 8.00500000 0.67000000 ;
+     RECT 9.51500000 0.50000000 9.68500000 0.67000000 ;
+     RECT 11.91500000 0.50000000 12.08500000 0.67000000 ;
+     RECT 13.59500000 0.50000000 13.76500000 0.67000000 ;
+     RECT 14.79500000 0.50000000 14.96500000 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 11.43500000 0.90500000 11.60500000 1.07500000 ;
+     RECT 14.31500000 0.90500000 14.48500000 1.07500000 ;
+     RECT 10.47500000 1.31000000 10.64500000 1.48000000 ;
+     RECT 1.35500000 1.84000000 1.52500000 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 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 11.43500000 1.84000000 11.60500000 2.01000000 ;
+     RECT 14.31500000 1.84000000 14.48500000 2.01000000 ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 3.51500000 2.25500000 3.68500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 9.51500000 2.25500000 9.68500000 2.42500000 ;
+     RECT 14.79500000 2.25500000 14.96500000 2.42500000 ;
+     RECT 4.23500000 2.66000000 4.40500000 2.83000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 11.91500000 2.79500000 12.08500000 2.96500000 ;
+     RECT 13.59500000 2.79500000 13.76500000 2.96500000 ;
+     RECT 4.71500000 3.24500000 4.88500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 9.45500000 0.44000000 9.74500000 0.51500000 ;
+     RECT 11.85500000 0.44000000 12.14500000 0.51500000 ;
+     RECT 9.45500000 0.51500000 12.14500000 0.65500000 ;
+     RECT 9.45500000 0.65500000 9.74500000 0.73000000 ;
+     RECT 11.85500000 0.65500000 12.14500000 0.73000000 ;
+     RECT 0.00000000 -0.24000000 15.84000000 0.24000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 6.17000000 0.24000000 6.31000000 0.44000000 ;
+     RECT 7.85000000 0.24000000 7.99000000 0.44000000 ;
+     RECT 13.61000000 0.24000000 13.75000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     RECT 6.09500000 0.44000000 6.38500000 0.73000000 ;
+     RECT 7.77500000 0.44000000 8.06500000 0.73000000 ;
+     RECT 13.53500000 0.44000000 13.82500000 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 5.61500000 0.84500000 5.90500000 0.92000000 ;
+     RECT 11.37500000 0.84500000 11.66500000 0.92000000 ;
+     RECT 5.61500000 0.92000000 11.66500000 1.06000000 ;
+     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
+     RECT 11.37500000 1.06000000 11.66500000 1.13500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+     RECT 11.45000000 1.13500000 11.59000000 1.78000000 ;
+     RECT 5.61500000 1.78000000 5.90500000 2.07000000 ;
+     RECT 11.37500000 1.78000000 11.66500000 2.07000000 ;
+     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 ;
+     RECT 3.45500000 0.44000000 3.74500000 0.73000000 ;
+     RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+     RECT 3.53000000 0.73000000 3.67000000 0.92000000 ;
+     RECT 1.29500000 0.92000000 3.67000000 1.06000000 ;
+     RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+     RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+     RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+     RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+     RECT 3.53000000 1.06000000 3.67000000 2.19500000 ;
+     RECT 3.45500000 2.19500000 3.74500000 2.27000000 ;
+     RECT 6.09500000 2.19500000 6.38500000 2.27000000 ;
+     RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
+     RECT 3.45500000 2.27000000 8.71000000 2.41000000 ;
+     RECT 3.45500000 2.41000000 3.74500000 2.48500000 ;
+     RECT 6.09500000 2.41000000 6.38500000 2.48500000 ;
+     RECT 14.25500000 0.84500000 14.54500000 1.13500000 ;
+     RECT 10.41500000 1.25000000 10.70500000 1.32500000 ;
+     RECT 9.53000000 1.32500000 10.70500000 1.46500000 ;
+     RECT 10.41500000 1.46500000 10.70500000 1.54000000 ;
+     RECT 14.33000000 1.13500000 14.47000000 1.78000000 ;
+     RECT 14.25500000 1.78000000 14.54500000 2.07000000 ;
+     RECT 9.53000000 1.46500000 9.67000000 2.19500000 ;
+     RECT 10.49000000 1.54000000 10.63000000 2.27000000 ;
+     RECT 14.33000000 2.07000000 14.47000000 2.27000000 ;
+     RECT 10.49000000 2.27000000 14.47000000 2.41000000 ;
+     RECT 9.45500000 2.19500000 9.74500000 2.48500000 ;
+     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 ;
+     RECT 9.93500000 1.78000000 10.22500000 2.07000000 ;
+     RECT 4.17500000 2.60000000 4.46500000 2.67500000 ;
+     RECT 10.01000000 2.07000000 10.15000000 2.67500000 ;
+     RECT 4.17500000 2.67500000 10.15000000 2.81500000 ;
+     RECT 4.17500000 2.81500000 4.46500000 2.89000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 11.85500000 2.73500000 12.14500000 3.09000000 ;
+     RECT 13.53500000 2.73500000 13.82500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 15.84000000 3.57000000 ;
+
+ END
+END HAX1
diff --git a/cells/lef/orig/INV.lef b/cells/lef/orig/INV.lef
index 7bf6f3b..edad642 100644
--- a/cells/lef/orig/INV.lef
+++ b/cells/lef/orig/INV.lef
@@ -64,52 +64,43 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 2.88000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
      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 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 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/INVX1.lef b/cells/lef/orig/INVX1.lef
index 67d58e1..8cb665f 100644
--- a/cells/lef/orig/INVX1.lef
+++ b/cells/lef/orig/INVX1.lef
@@ -64,52 +64,43 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 2.88000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
      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 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 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/INVX2.lef b/cells/lef/orig/INVX2.lef
index fbe8379..3cbb4cb 100644
--- a/cells/lef/orig/INVX2.lef
+++ b/cells/lef/orig/INVX2.lef
@@ -64,52 +64,43 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 2.88000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
      RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 2.88000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
      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 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 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 2.88000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/INVX4.lef b/cells/lef/orig/INVX4.lef
index 1049b43..c19e726 100644
--- a/cells/lef/orig/INVX4.lef
+++ b/cells/lef/orig/INVX4.lef
@@ -38,14 +38,14 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+        RECT 0.81500000 0.44000000 1.10500000 0.73000000 ;
         RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
-        RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
+        RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
         RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-        RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+        RECT 0.81500000 2.19500000 1.10500000 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 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 ;
     END
   END Y
@@ -77,62 +77,47 @@
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
 
     LAYER pdiffc ;
-     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
-     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      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 ;
+     RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
      RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 4.32000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 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.84000000 1.52500000 2.01000000 ;
      RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
-     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
      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 ;
@@ -142,16 +127,16 @@
      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 0.81500000 0.44000000 1.10500000 0.73000000 ;
      RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
-     RECT 0.65000000 0.73000000 0.79000000 2.19500000 ;
+     RECT 0.89000000 0.73000000 1.03000000 2.19500000 ;
      RECT 3.29000000 0.73000000 3.43000000 2.19500000 ;
-     RECT 0.57500000 2.19500000 0.86500000 2.27000000 ;
+     RECT 0.81500000 2.19500000 1.10500000 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 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 1.77500000 2.76000000 2.06500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/INVX8.lef b/cells/lef/orig/INVX8.lef
index fc8e72b..2e4d96c 100644
--- a/cells/lef/orig/INVX8.lef
+++ b/cells/lef/orig/INVX8.lef
@@ -63,23 +63,23 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        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.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.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 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 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 ;
     END
   END A
 
@@ -98,22 +98,23 @@
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
      RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 4.71500000 0.34000000 4.88500000 0.51000000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
 
     LAYER li1 ;
-     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
-     RECT 1.75500000 0.24000000 2.08500000 0.59000000 ;
-     RECT 4.63500000 0.24000000 4.96500000 0.59000000 ;
      RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
      RECT 3.67500000 0.42000000 4.00500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 4.71500000 0.24000000 4.88500000 0.42000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
@@ -126,27 +127,14 @@
      RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
      RECT 3.67500000 2.17500000 4.00500000 2.50500000 ;
      RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
-     RECT 4.63500000 2.74000000 4.96500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.04500000 ;
      RECT 0.00000000 3.09000000 7.20000000 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 4.71500000 -0.08500000 4.88500000 0.08500000 ;
      RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
      RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
      RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -160,43 +148,31 @@
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
      RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
-     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.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     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.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 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 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 3.69500000 0.44000000 3.98500000 0.51500000 ;
      RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
      RECT 3.69500000 0.51500000 6.38500000 0.65500000 ;
@@ -212,8 +188,8 @@
      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 ;
-     RECT 4.65500000 2.76000000 4.94500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 4.65500000 2.73500000 4.94500000 3.09000000 ;
      RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/MARTIN1989.lef b/cells/lef/orig/MARTIN1989.lef
new file mode 100644
index 0000000..1e11831
--- /dev/null
+++ b/cells/lef/orig/MARTIN1989.lef
@@ -0,0 +1,171 @@
+MACRO MARTIN1989
+ CLASS CORE ;
+ FOREIGN MARTIN1989 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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+        RECT 4.25000000 0.51500000 6.38500000 0.65500000 ;
+        RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+        RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+        RECT 6.09500000 2.19500000 6.38500000 2.48500000 ;
+    END
+  END C
+
+  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 ;
+   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
+
+ 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 4.71500000 0.24000000 4.88500000 0.42000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 5.59500000 0.82500000 5.92500000 1.15500000 ;
+     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.15500000 ;
+     RECT 4.23500000 1.15500000 4.40500000 1.76000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
+     RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 4.71500000 -0.08500000 4.88500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 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 1.35500000 1.84000000 1.52500000 2.01000000 ;
+     RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
+     RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     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 3.21500000 0.44000000 3.50500000 0.73000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+     RECT 3.29000000 0.73000000 3.43000000 1.85500000 ;
+     RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+     RECT 3.29000000 1.85500000 5.90500000 1.99500000 ;
+     RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+     RECT 3.29000000 1.99500000 3.43000000 2.19500000 ;
+     RECT 3.21500000 2.19500000 3.50500000 2.48500000 ;
+     RECT 6.09500000 0.44000000 6.38500000 0.51500000 ;
+     RECT 4.25000000 0.51500000 6.38500000 0.65500000 ;
+     RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+     RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+     RECT 4.17500000 0.84500000 4.46500000 1.13500000 ;
+     RECT 6.17000000 0.73000000 6.31000000 2.19500000 ;
+     RECT 6.09500000 2.19500000 6.38500000 2.48500000 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 4.65500000 2.73500000 4.94500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+ END
+END MARTIN1989
diff --git a/cells/lef/orig/MUX2X1.lef b/cells/lef/orig/MUX2X1.lef
index c7a43c0..dc69a2d 100644
--- a/cells/lef/orig/MUX2X1.lef
+++ b/cells/lef/orig/MUX2X1.lef
@@ -38,44 +38,10 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-        RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
-        RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-        RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-        RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
-        RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-        RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+        RECT 4.65500000 1.78000000 4.94500000 2.48500000 ;
     END
   END Y
 
-  PIN S
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-        RECT 3.21500000 0.84500000 3.50500000 0.92000000 ;
-        RECT 1.29500000 0.92000000 3.50500000 1.06000000 ;
-        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-        RECT 3.21500000 1.06000000 3.50500000 1.13500000 ;
-        RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-        RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
-    END
-  END S
-
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    PORT
-     CLASS CORE ;
-       LAYER met1 ;
-        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -89,6 +55,38 @@
     END
   END B
 
+  PIN S
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+        RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
+        RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+        RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+        RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+        RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+        RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
+    END
+  END S
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+    END
+  END A
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -104,141 +102,96 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 7.59500000 2.82000000 7.76500000 2.99000000 ;
+     RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
 
     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 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     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 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 8.64000000 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 5.11500000 0.42000000 5.44500000 0.75000000 ;
-     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
-     RECT 4.15500000 0.82500000 4.48500000 0.90500000 ;
-     RECT 3.27500000 0.90500000 4.48500000 1.07500000 ;
-     RECT 4.15500000 1.07500000 4.48500000 1.15500000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 7.51500000 0.42000000 7.84500000 0.75000000 ;
+     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 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 4.71500000 0.75000000 4.88500000 2.01000000 ;
+     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 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 5.59500000 1.76000000 5.92500000 2.09000000 ;
      RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
-     RECT 1.35500000 1.44500000 1.52500000 1.76000000 ;
-     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
-     RECT 1.35500000 2.09000000 1.52500000 2.42500000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
-     RECT 5.11500000 2.17500000 5.44500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
-     RECT 7.51500000 2.74000000 7.84500000 3.09000000 ;
+     RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 7.51500000 2.71500000 7.84500000 3.04500000 ;
      RECT 0.00000000 3.09000000 8.64000000 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 1.83500000 0.34000000 2.00500000 0.51000000 ;
-     RECT 7.59500000 0.34000000 7.76500000 0.51000000 ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
-     RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 7.59500000 0.50000000 7.76500000 0.67000000 ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
-     RECT 3.27500000 0.90500000 3.44500000 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.31000000 2.96500000 1.48000000 ;
-     RECT 1.35500000 1.44500000 1.52500000 1.61500000 ;
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
+     RECT 4.71500000 1.84000000 4.88500000 2.01000000 ;
      RECT 5.67500000 1.84000000 5.84500000 2.01000000 ;
      RECT 7.11500000 1.84000000 7.28500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 1.35500000 2.25500000 1.52500000 2.42500000 ;
-     RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 7.59500000 2.82000000 7.76500000 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 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
+     RECT 7.59500000 3.24500000 7.76500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 8.64000000 0.24000000 ;
-     RECT 1.77500000 0.24000000 2.06500000 0.57000000 ;
-     RECT 7.53500000 0.24000000 7.82500000 0.57000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 7.61000000 0.24000000 7.75000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     RECT 7.53500000 0.44000000 7.82500000 0.73000000 ;
      RECT 2.73500000 1.25000000 3.02500000 1.54000000 ;
+     RECT 4.25000000 0.51500000 6.31000000 0.65500000 ;
+     RECT 4.25000000 0.65500000 4.39000000 0.84500000 ;
      RECT 1.29500000 0.84500000 1.58500000 0.92000000 ;
-     RECT 3.21500000 0.84500000 3.50500000 0.92000000 ;
-     RECT 1.29500000 0.92000000 3.50500000 1.06000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
      RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
-     RECT 3.21500000 1.06000000 3.50500000 1.13500000 ;
-     RECT 1.37000000 1.13500000 1.51000000 1.38500000 ;
-     RECT 1.29500000 1.38500000 1.58500000 1.67500000 ;
+     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
+     RECT 6.17000000 0.65500000 6.31000000 1.85500000 ;
+     RECT 5.61500000 1.85500000 6.31000000 1.99500000 ;
+     RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
      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 0.57500000 0.44000000 0.86500000 0.73000000 ;
-     RECT 5.61500000 0.84500000 5.90500000 0.92000000 ;
-     RECT 4.25000000 0.92000000 5.90500000 1.06000000 ;
-     RECT 5.61500000 1.06000000 5.90500000 1.13500000 ;
-     RECT 4.25000000 1.06000000 4.39000000 1.78000000 ;
+     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.46000000 ;
+     RECT 4.25000000 1.46000000 5.83000000 1.60000000 ;
+     RECT 4.25000000 1.60000000 4.39000000 1.78000000 ;
      RECT 0.65000000 0.73000000 0.79000000 1.85500000 ;
      RECT 4.17500000 1.78000000 4.46500000 1.85500000 ;
      RECT 0.65000000 1.85500000 4.46500000 1.99500000 ;
      RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
      RECT 0.65000000 1.99500000 0.79000000 2.19500000 ;
      RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
-     RECT 5.61500000 1.78000000 5.90500000 1.85500000 ;
-     RECT 4.73000000 1.85500000 5.90500000 1.99500000 ;
-     RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
-     RECT 1.29500000 2.19500000 1.58500000 2.27000000 ;
-     RECT 4.73000000 1.99500000 4.87000000 2.27000000 ;
-     RECT 1.29500000 2.27000000 4.87000000 2.41000000 ;
-     RECT 1.29500000 2.41000000 1.58500000 2.48500000 ;
-     RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
-     RECT 5.13500000 0.51500000 6.31000000 0.65500000 ;
-     RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
-     RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
-     RECT 6.17000000 0.65500000 6.31000000 2.27000000 ;
-     RECT 5.13500000 2.27000000 6.31000000 2.41000000 ;
-     RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
-     RECT 1.77500000 2.76000000 2.06500000 3.09000000 ;
-     RECT 7.53500000 2.76000000 7.82500000 3.09000000 ;
+     RECT 4.65500000 1.78000000 4.94500000 2.48500000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 7.53500000 2.73500000 7.82500000 3.09000000 ;
      RECT 0.00000000 3.09000000 8.64000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/NAND2X1.lef b/cells/lef/orig/NAND2X1.lef
index 0e83e1f..80ae4cc 100644
--- a/cells/lef/orig/NAND2X1.lef
+++ b/cells/lef/orig/NAND2X1.lef
@@ -84,57 +84,42 @@
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
      RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
      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 ;
      RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
      RECT 0.00000000 3.09000000 4.32000000 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 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
      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.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 ;
-     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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      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 ;
@@ -148,7 +133,7 @@
      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 1.77500000 2.73500000 2.06500000 3.09000000 ;
      RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/NAND3X1.lef b/cells/lef/orig/NAND3X1.lef
index 2541a72..9e56259 100644
--- a/cells/lef/orig/NAND3X1.lef
+++ b/cells/lef/orig/NAND3X1.lef
@@ -48,19 +48,6 @@
     END
   END Y
 
-  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 ;
@@ -87,6 +74,19 @@
     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
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -99,17 +99,17 @@
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 2.99000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 4.71500000 0.34000000 4.88500000 0.51000000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 4.63500000 0.24000000 4.96500000 0.59000000 ;
      RECT 0.55500000 0.42000000 0.88500000 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 ;
@@ -118,25 +118,14 @@
      RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
      RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
      RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
-     RECT 4.63500000 2.74000000 4.96500000 3.09000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 4.71500000 0.34000000 4.88500000 0.51000000 ;
+     RECT 4.71500000 -0.08500000 4.88500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 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 ;
@@ -145,24 +134,14 @@
      RECT 4.23500000 1.84000000 4.40500000 2.01000000 ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
      RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
-     RECT 1.83500000 2.82000000 2.00500000 2.99000000 ;
-     RECT 4.71500000 2.82000000 4.88500000 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 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 4.65500000 0.24000000 4.94500000 0.57000000 ;
+     RECT 4.73000000 0.24000000 4.87000000 0.44000000 ;
+     RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
      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 ;
@@ -179,8 +158,8 @@
      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 4.65500000 2.76000000 4.94500000 3.09000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 4.65500000 2.73500000 4.94500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/NOR2X1.lef b/cells/lef/orig/NOR2X1.lef
new file mode 100644
index 0000000..4bdc30a
--- /dev/null
+++ b/cells/lef/orig/NOR2X1.lef
@@ -0,0 +1,138 @@
+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 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 ;
+   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
+
+ OBS
+    LAYER polycont ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
+     RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
+
+    LAYER pdiffc ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
+     RECT 1.83500000 0.24000000 2.00500000 0.42000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 2.71500000 0.82500000 3.04500000 1.15500000 ;
+     RECT 1.27500000 1.76000000 1.60500000 2.09000000 ;
+     RECT 2.71500000 1.76000000 3.04500000 2.09000000 ;
+     RECT 3.19500000 2.17500000 3.52500000 2.50500000 ;
+     RECT 0.55500000 2.71500000 0.88500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
+     RECT 0.87500000 0.50000000 1.04500000 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.84000000 1.52500000 2.01000000 ;
+     RECT 2.79500000 1.84000000 2.96500000 2.01000000 ;
+     RECT 3.27500000 2.25500000 3.44500000 2.42500000 ;
+     RECT 0.63500000 2.79500000 0.80500000 2.96500000 ;
+     RECT 0.63500000 3.24500000 0.80500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 4.32000000 0.24000000 ;
+     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.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 ;
+     RECT 0.57500000 2.73500000 0.86500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 4.32000000 3.57000000 ;
+
+ END
+END NOR2X1
diff --git a/cells/lef/orig/OAI21X1.lef b/cells/lef/orig/OAI21X1.lef
new file mode 100644
index 0000000..66990b5
--- /dev/null
+++ b/cells/lef/orig/OAI21X1.lef
@@ -0,0 +1,171 @@
+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 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 POWER ;
+   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 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 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 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 ;
+   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 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
+     RECT 3.27500000 0.24000000 3.44500000 0.42000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 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 1.76000000 3.04500000 2.09000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
+     RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     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 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 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
+     RECT 2.25500000 0.44000000 2.54500000 0.51500000 ;
+     RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
+     RECT 2.25500000 0.51500000 4.94500000 0.65500000 ;
+     RECT 2.25500000 0.65500000 2.54500000 0.73000000 ;
+     RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
+     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 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 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 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
+
+ END
+END OAI21X1
diff --git a/cells/lef/orig/OAI22X1.lef b/cells/lef/orig/OAI22X1.lef
new file mode 100644
index 0000000..fc49e8b
--- /dev/null
+++ b/cells/lef/orig/OAI22X1.lef
@@ -0,0 +1,199 @@
+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 li1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+       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 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
+
+  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
+
+ 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.79500000 0.42000000 1.12500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     RECT 1.83500000 0.24000000 2.00500000 0.42000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 3.67500000 0.42000000 4.00500000 0.75000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 5.11500000 0.42000000 5.44500000 0.75000000 ;
+     RECT 5.19500000 0.75000000 5.36500000 1.07500000 ;
+     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 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 1.76000000 5.92500000 2.09000000 ;
+     RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
+     RECT 6.07500000 2.17500000 6.40500000 2.50500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 1.83500000 -0.08500000 2.00500000 0.08500000 ;
+     RECT 0.87500000 0.50000000 1.04500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 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.19500000 0.90500000 5.36500000 1.07500000 ;
+     RECT 5.67500000 0.90500000 5.84500000 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 0.87500000 2.25500000 1.04500000 2.42500000 ;
+     RECT 6.15500000 2.25500000 6.32500000 2.42500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 7.20000000 0.24000000 ;
+     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.65500000 3.98500000 0.73000000 ;
+     RECT 6.09500000 0.65500000 6.38500000 0.73000000 ;
+     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 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 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 ;
+     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 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 7.20000000 3.57000000 ;
+
+ END
+END OAI22X1
diff --git a/cells/lef/orig/OR2X1.lef b/cells/lef/orig/OR2X1.lef
index 362b0c4..079a59f 100644
--- a/cells/lef/orig/OR2X1.lef
+++ b/cells/lef/orig/OR2X1.lef
@@ -44,19 +44,6 @@
     END
   END Y
 
-  PIN A
-   DIRECTION INOUT ;
-   USE SIGNAL ;
-   SHAPE ABUTMENT ;
-    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 ;
-    END
-  END A
-
   PIN B
    DIRECTION INOUT ;
    USE SIGNAL ;
@@ -64,10 +51,23 @@
     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 ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
+    END
+  END A
+
  OBS
     LAYER polycont ;
      RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
@@ -80,78 +80,58 @@
     LAYER pdiffc ;
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 0.55500000 0.24000000 0.88500000 0.59000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
      RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      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 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 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 ;
      RECT 0.79500000 2.17500000 1.12500000 2.50500000 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
-     RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      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 ;
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 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 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
-     RECT 1.29500000 1.25000000 1.58500000 1.54000000 ;
-     RECT 1.37000000 1.54000000 1.51000000 1.78000000 ;
+     RECT 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
      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 ;
@@ -165,7 +145,7 @@
      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 ;
-     RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/OR2X2.lef b/cells/lef/orig/OR2X2.lef
index aa4b700..10765ec 100644
--- a/cells/lef/orig/OR2X2.lef
+++ b/cells/lef/orig/OR2X2.lef
@@ -51,6 +51,8 @@
     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 ;
     END
   END A
@@ -62,8 +64,6 @@
     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
@@ -80,78 +80,56 @@
     LAYER pdiffc ;
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 2.99000000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
 
     LAYER ndiffc ;
-     RECT 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
 
     LAYER li1 ;
-     RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 0.55500000 0.24000000 0.88500000 0.59000000 ;
-     RECT 3.19500000 0.24000000 3.52500000 0.59000000 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
      RECT 2.23500000 0.42000000 2.56500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
+     RECT 3.27500000 0.24000000 3.44500000 0.42000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
      RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
      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.35500000 1.15500000 1.52500000 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 ;
      RECT 4.63500000 2.17500000 4.96500000 2.50500000 ;
-     RECT 3.19500000 2.74000000 3.52500000 3.09000000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
      RECT 0.00000000 3.09000000 5.76000000 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 0.63500000 0.34000000 0.80500000 0.51000000 ;
-     RECT 3.27500000 0.34000000 3.44500000 0.51000000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
      RECT 2.31500000 0.50000000 2.48500000 0.67000000 ;
      RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
      RECT 4.23500000 0.90500000 4.40500000 1.07500000 ;
-     RECT 2.79500000 1.31000000 2.96500000 1.48000000 ;
+     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 4.23500000 1.84000000 4.40500000 2.01000000 ;
      RECT 0.87500000 2.25500000 1.04500000 2.42500000 ;
      RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
-     RECT 3.27500000 2.82000000 3.44500000 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 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 3.27500000 3.24500000 3.44500000 3.41500000 ;
 
     LAYER met1 ;
      RECT 0.00000000 -0.24000000 5.76000000 0.24000000 ;
-     RECT 0.57500000 0.24000000 0.86500000 0.57000000 ;
-     RECT 3.21500000 0.24000000 3.50500000 0.57000000 ;
+     RECT 0.65000000 0.24000000 0.79000000 0.44000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     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 ;
@@ -165,7 +143,7 @@
      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 ;
-     RECT 3.21500000 2.76000000 3.50500000 3.09000000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
      RECT 0.00000000 3.09000000 5.76000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/SUTHERLAND1989.lef b/cells/lef/orig/SUTHERLAND1989.lef
new file mode 100644
index 0000000..7f2588c
--- /dev/null
+++ b/cells/lef/orig/SUTHERLAND1989.lef
@@ -0,0 +1,226 @@
+MACRO SUTHERLAND1989
+ CLASS CORE ;
+ FOREIGN SUTHERLAND1989 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 7.77500000 0.84500000 8.06500000 0.92000000 ;
+        RECT 9.93500000 0.84500000 10.22500000 0.92000000 ;
+        RECT 7.77500000 0.92000000 10.22500000 1.06000000 ;
+        RECT 7.77500000 1.06000000 8.06500000 1.13500000 ;
+        RECT 9.93500000 1.06000000 10.22500000 1.13500000 ;
+    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 5.61500000 0.84500000 5.90500000 1.13500000 ;
+        RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+        RECT 1.29500000 1.78000000 1.58500000 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 B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+    END
+  END A
+
+ 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 9.99500000 0.90500000 10.16500000 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 9.99500000 1.84000000 10.16500000 2.01000000 ;
+
+    LAYER pdiffc ;
+     RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
+     RECT 7.83500000 2.25500000 8.00500000 2.42500000 ;
+     RECT 9.27500000 2.25500000 9.44500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     RECT 6.15500000 0.50000000 6.32500000 0.67000000 ;
+     RECT 7.83500000 0.50000000 8.00500000 0.67000000 ;
+     RECT 9.27500000 0.50000000 9.44500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 3.19500000 0.42000000 3.52500000 0.75000000 ;
+     RECT 5.11500000 0.42000000 5.44500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 6.15500000 0.24000000 6.32500000 0.42000000 ;
+     RECT 6.07500000 0.42000000 6.40500000 0.75000000 ;
+     RECT 9.19500000 0.42000000 9.52500000 0.75000000 ;
+     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 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 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 0.82500000 4.48500000 1.15500000 ;
+     RECT 4.23500000 1.15500000 4.40500000 1.76000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 2.09000000 ;
+     RECT 5.59500000 1.76000000 5.92500000 2.09000000 ;
+     RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
+     RECT 9.91500000 0.82500000 10.24500000 1.15500000 ;
+     RECT 9.99500000 1.15500000 10.16500000 1.76000000 ;
+     RECT 9.91500000 1.76000000 10.24500000 2.09000000 ;
+     RECT 0.55500000 2.17500000 0.88500000 2.50500000 ;
+     RECT 5.11500000 2.17500000 5.44500000 2.50500000 ;
+     RECT 7.75500000 0.42000000 8.08500000 0.75000000 ;
+     RECT 7.83500000 0.75000000 8.00500000 2.17500000 ;
+     RECT 7.75500000 2.17500000 8.08500000 2.50500000 ;
+     RECT 9.19500000 2.17500000 9.52500000 2.50500000 ;
+     RECT 10.39500000 2.17500000 10.72500000 2.50500000 ;
+     RECT 3.19500000 2.71500000 3.52500000 3.04500000 ;
+     RECT 6.07500000 2.71500000 6.40500000 3.04500000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 3.27500000 -0.08500000 3.44500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     RECT 9.27500000 0.50000000 9.44500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 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 7.83500000 0.90500000 8.00500000 1.07500000 ;
+     RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
+     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 0.63500000 2.25500000 0.80500000 2.42500000 ;
+     RECT 5.19500000 2.25500000 5.36500000 2.42500000 ;
+     RECT 9.27500000 2.25500000 9.44500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 3.27500000 2.79500000 3.44500000 2.96500000 ;
+     RECT 6.15500000 2.79500000 6.32500000 2.96500000 ;
+     RECT 6.15500000 3.24500000 6.32500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 3.29000000 0.24000000 3.43000000 0.44000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.73000000 ;
+     RECT 5.13500000 0.44000000 5.42500000 0.51500000 ;
+     RECT 9.21500000 0.44000000 9.50500000 0.51500000 ;
+     RECT 5.13500000 0.51500000 9.50500000 0.65500000 ;
+     RECT 5.13500000 0.65500000 5.42500000 0.73000000 ;
+     RECT 9.21500000 0.65500000 9.50500000 0.73000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 2.73500000 0.92000000 4.46500000 1.06000000 ;
+     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 4.17500000 1.06000000 4.46500000 1.13500000 ;
+     RECT 7.77500000 0.84500000 8.06500000 0.92000000 ;
+     RECT 9.93500000 0.84500000 10.22500000 0.92000000 ;
+     RECT 7.77500000 0.92000000 10.22500000 1.06000000 ;
+     RECT 7.77500000 1.06000000 8.06500000 1.13500000 ;
+     RECT 9.93500000 1.06000000 10.22500000 1.13500000 ;
+     RECT 1.29500000 0.84500000 1.58500000 1.13500000 ;
+     RECT 5.61500000 0.84500000 5.90500000 1.13500000 ;
+     RECT 1.37000000 1.13500000 1.51000000 1.78000000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.78000000 ;
+     RECT 1.29500000 1.78000000 1.58500000 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 0.65000000 0.73000000 0.79000000 2.19500000 ;
+     RECT 0.57500000 2.19500000 0.86500000 2.48500000 ;
+     RECT 5.13500000 2.19500000 5.42500000 2.27000000 ;
+     RECT 9.21500000 2.19500000 9.50500000 2.27000000 ;
+     RECT 5.13500000 2.27000000 9.50500000 2.41000000 ;
+     RECT 5.13500000 2.41000000 5.42500000 2.48500000 ;
+     RECT 9.21500000 2.41000000 9.50500000 2.48500000 ;
+     RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+     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 1.85500000 ;
+     RECT 10.49000000 0.73000000 10.63000000 1.85500000 ;
+     RECT 7.05500000 1.85500000 10.63000000 1.99500000 ;
+     RECT 7.05500000 1.99500000 7.34500000 2.07000000 ;
+     RECT 10.49000000 1.99500000 10.63000000 2.19500000 ;
+     RECT 10.41500000 2.19500000 10.70500000 2.48500000 ;
+     RECT 3.21500000 2.73500000 3.50500000 3.09000000 ;
+     RECT 6.09500000 2.73500000 6.38500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+ END
+END SUTHERLAND1989
diff --git a/cells/lef/orig/VANBERKEL1991.lef b/cells/lef/orig/VANBERKEL1991.lef
new file mode 100644
index 0000000..1e3382d
--- /dev/null
+++ b/cells/lef/orig/VANBERKEL1991.lef
@@ -0,0 +1,247 @@
+MACRO VANBERKEL1991
+ CLASS CORE ;
+ FOREIGN VANBERKEL1991 0 0 ;
+ SIZE 11.52 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 11.52000000 3.57000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+    END
+  END VDD
+
+  PIN GND
+   DIRECTION INOUT ;
+   USE POWER ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER li1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+       LAYER met1 ;
+        RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+    END
+  END GND
+
+  PIN C
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+        RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+        RECT 7.05500000 2.19500000 7.34500000 2.27000000 ;
+        RECT 10.41500000 2.19500000 10.70500000 2.27000000 ;
+        RECT 7.05500000 2.27000000 10.70500000 2.41000000 ;
+        RECT 7.05500000 2.41000000 7.34500000 2.48500000 ;
+        RECT 10.41500000 2.41000000 10.70500000 2.48500000 ;
+    END
+  END C
+
+  PIN B
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+        RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+        RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+        RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+        RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+    END
+  END B
+
+  PIN A
+   DIRECTION INOUT ;
+   USE SIGNAL ;
+   SHAPE ABUTMENT ;
+    PORT
+     CLASS CORE ;
+       LAYER met1 ;
+        RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+        RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+        RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+        RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+        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
+
+ 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 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 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 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 ;
+
+    LAYER pdiffc ;
+     RECT 1.83500000 2.25500000 2.00500000 2.42500000 ;
+     RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
+     RECT 6.39500000 2.25500000 6.56500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 0.87500000 2.66000000 1.04500000 2.83000000 ;
+     RECT 7.59500000 2.66000000 7.76500000 2.83000000 ;
+     RECT 4.71500000 2.79500000 4.88500000 2.96500000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+
+    LAYER ndiffc ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 0.67000000 ;
+     RECT 6.39500000 0.50000000 6.56500000 0.67000000 ;
+     RECT 8.07500000 0.50000000 8.24500000 0.67000000 ;
+     RECT 9.03500000 0.50000000 9.20500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+
+    LAYER li1 ;
+     RECT 0.55500000 0.42000000 0.88500000 0.75000000 ;
+     RECT 3.67500000 0.42000000 4.00500000 0.75000000 ;
+     RECT 6.31500000 0.42000000 6.64500000 0.75000000 ;
+     RECT 7.99500000 0.42000000 8.32500000 0.75000000 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 4.71500000 0.24000000 4.88500000 0.42000000 ;
+     RECT 9.03500000 0.24000000 9.20500000 0.42000000 ;
+     RECT 4.63500000 0.42000000 4.96500000 0.75000000 ;
+     RECT 8.95500000 0.42000000 9.28500000 0.75000000 ;
+     RECT 10.39500000 0.42000000 10.72500000 0.75000000 ;
+     RECT 1.27500000 0.82500000 1.60500000 1.15500000 ;
+     RECT 9.91500000 0.82500000 10.24500000 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 3.27500000 0.50000000 3.44500000 1.04000000 ;
+     RECT 4.15500000 0.82500000 4.48500000 1.04000000 ;
+     RECT 3.27500000 1.04000000 4.48500000 1.15500000 ;
+     RECT 3.27500000 1.15500000 4.40500000 1.21000000 ;
+     RECT 4.23500000 1.21000000 4.40500000 1.76000000 ;
+     RECT 4.15500000 1.76000000 4.48500000 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 2.31500000 1.31000000 2.48500000 2.29000000 ;
+     RECT 7.03500000 0.82500000 7.36500000 1.15500000 ;
+     RECT 7.11500000 1.15500000 7.28500000 1.76000000 ;
+     RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
+     RECT 7.11500000 2.09000000 7.28500000 2.42500000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 1.83500000 0.75000000 2.00500000 2.17500000 ;
+     RECT 1.75500000 2.17500000 2.08500000 2.50500000 ;
+     RECT 3.67500000 2.17500000 4.00500000 2.50500000 ;
+     RECT 6.31500000 2.17500000 6.64500000 2.50500000 ;
+     RECT 10.39500000 2.17500000 10.72500000 2.50500000 ;
+     RECT 0.79500000 2.58000000 1.12500000 2.91000000 ;
+     RECT 7.51500000 2.58000000 7.84500000 2.91000000 ;
+     RECT 8.95500000 2.71500000 9.28500000 3.04500000 ;
+     RECT 4.63500000 2.71500000 4.96500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+    LAYER viali ;
+     RECT 9.03500000 -0.08500000 9.20500000 0.08500000 ;
+     RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     RECT 3.27500000 0.50000000 3.44500000 0.67000000 ;
+     RECT 3.75500000 0.50000000 3.92500000 0.67000000 ;
+     RECT 6.39500000 0.50000000 6.56500000 0.67000000 ;
+     RECT 8.07500000 0.50000000 8.24500000 0.67000000 ;
+     RECT 10.47500000 0.50000000 10.64500000 0.67000000 ;
+     RECT 1.35500000 0.90500000 1.52500000 1.07500000 ;
+     RECT 2.79500000 0.90500000 2.96500000 1.07500000 ;
+     RECT 8.55500000 0.90500000 8.72500000 1.07500000 ;
+     RECT 9.99500000 0.90500000 10.16500000 1.07500000 ;
+     RECT 2.31500000 1.31000000 2.48500000 1.48000000 ;
+     RECT 1.83500000 1.71500000 2.00500000 1.88500000 ;
+     RECT 1.35500000 1.84000000 1.52500000 2.01000000 ;
+     RECT 9.99500000 1.84000000 10.16500000 2.01000000 ;
+     RECT 2.31500000 2.12000000 2.48500000 2.29000000 ;
+     RECT 3.75500000 2.25500000 3.92500000 2.42500000 ;
+     RECT 6.39500000 2.25500000 6.56500000 2.42500000 ;
+     RECT 7.11500000 2.25500000 7.28500000 2.42500000 ;
+     RECT 10.47500000 2.25500000 10.64500000 2.42500000 ;
+     RECT 0.87500000 2.66000000 1.04500000 2.83000000 ;
+     RECT 7.59500000 2.66000000 7.76500000 2.83000000 ;
+     RECT 9.03500000 2.79500000 9.20500000 2.96500000 ;
+     RECT 4.71500000 3.24500000 4.88500000 3.41500000 ;
+
+    LAYER met1 ;
+     RECT 0.00000000 -0.24000000 11.52000000 0.24000000 ;
+     RECT 3.69500000 0.44000000 3.98500000 0.51500000 ;
+     RECT 6.33500000 0.44000000 6.62500000 0.51500000 ;
+     RECT 3.69500000 0.51500000 6.62500000 0.65500000 ;
+     RECT 3.69500000 0.65500000 3.98500000 0.73000000 ;
+     RECT 6.33500000 0.65500000 6.62500000 0.73000000 ;
+     RECT 2.73500000 0.84500000 3.02500000 0.92000000 ;
+     RECT 8.49500000 0.84500000 8.78500000 0.92000000 ;
+     RECT 2.73500000 0.92000000 8.78500000 1.06000000 ;
+     RECT 2.73500000 1.06000000 3.02500000 1.13500000 ;
+     RECT 8.49500000 1.06000000 8.78500000 1.13500000 ;
+     RECT 8.01500000 0.44000000 8.30500000 0.51500000 ;
+     RECT 8.01500000 0.51500000 9.19000000 0.65500000 ;
+     RECT 8.01500000 0.65500000 8.30500000 0.73000000 ;
+     RECT 2.25500000 1.25000000 2.54500000 1.32500000 ;
+     RECT 9.05000000 0.65500000 9.19000000 1.32500000 ;
+     RECT 2.25500000 1.32500000 9.19000000 1.46500000 ;
+     RECT 2.25500000 1.46500000 2.54500000 1.54000000 ;
+     RECT 3.21500000 0.44000000 3.50500000 0.51500000 ;
+     RECT 1.37000000 0.51500000 3.50500000 0.65500000 ;
+     RECT 3.21500000 0.65500000 3.50500000 0.73000000 ;
+     RECT 1.37000000 0.65500000 1.51000000 0.84500000 ;
+     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 9.93500000 0.84500000 10.22500000 1.13500000 ;
+     RECT 1.77500000 1.65500000 2.06500000 1.73000000 ;
+     RECT 10.01000000 1.13500000 10.15000000 1.73000000 ;
+     RECT 1.77500000 1.73000000 10.15000000 1.78000000 ;
+     RECT 1.77500000 1.78000000 10.22500000 1.87000000 ;
+     RECT 1.77500000 1.87000000 2.06500000 1.94500000 ;
+     RECT 9.93500000 1.87000000 10.22500000 2.07000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.73000000 ;
+     RECT 0.65000000 0.73000000 0.79000000 2.27000000 ;
+     RECT 2.25500000 2.06000000 2.54500000 2.27000000 ;
+     RECT 0.65000000 2.27000000 2.54500000 2.35000000 ;
+     RECT 0.65000000 2.35000000 2.47000000 2.41000000 ;
+     RECT 3.69500000 2.19500000 3.98500000 2.27000000 ;
+     RECT 6.33500000 2.19500000 6.62500000 2.27000000 ;
+     RECT 3.69500000 2.27000000 6.62500000 2.41000000 ;
+     RECT 3.69500000 2.41000000 3.98500000 2.48500000 ;
+     RECT 6.33500000 2.41000000 6.62500000 2.48500000 ;
+     RECT 10.41500000 0.44000000 10.70500000 0.73000000 ;
+     RECT 10.49000000 0.73000000 10.63000000 2.19500000 ;
+     RECT 7.05500000 2.19500000 7.34500000 2.27000000 ;
+     RECT 10.41500000 2.19500000 10.70500000 2.27000000 ;
+     RECT 7.05500000 2.27000000 10.70500000 2.41000000 ;
+     RECT 7.05500000 2.41000000 7.34500000 2.48500000 ;
+     RECT 10.41500000 2.41000000 10.70500000 2.48500000 ;
+     RECT 0.81500000 2.60000000 1.10500000 2.67500000 ;
+     RECT 7.53500000 2.60000000 7.82500000 2.67500000 ;
+     RECT 0.81500000 2.67500000 7.82500000 2.81500000 ;
+     RECT 0.81500000 2.81500000 1.10500000 2.89000000 ;
+     RECT 7.53500000 2.81500000 7.82500000 2.89000000 ;
+     RECT 8.97500000 2.73500000 9.26500000 3.09000000 ;
+     RECT 0.00000000 3.09000000 11.52000000 3.57000000 ;
+
+ END
+END VANBERKEL1991
diff --git a/cells/lef/orig/XNOR2X1.lef b/cells/lef/orig/XNOR2X1.lef
index 92f9b34..d9a358e 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 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 B
 
@@ -70,13 +70,13 @@
        LAYER met1 ;
         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 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.21000000 1.06000000 5.35000000 1.85500000 ;
-        RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
+        RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
+        RECT 4.17500000 1.85500000 5.83000000 1.99500000 ;
         RECT 4.17500000 1.99500000 4.46500000 2.07000000 ;
         RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
     END
@@ -101,21 +101,21 @@
      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 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
 
     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 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 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 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 7.51500000 0.42000000 7.84500000 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 ;
@@ -125,8 +125,9 @@
      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 1.76000000 5.92500000 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 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 ;
@@ -136,36 +137,16 @@
      RECT 7.11500000 1.15500000 7.28500000 1.76000000 ;
      RECT 7.03500000 1.76000000 7.36500000 2.09000000 ;
      RECT 7.11500000 2.09000000 7.28500000 2.83000000 ;
-     RECT 1.75500000 2.74000000 2.08500000 3.09000000 ;
-     RECT 7.51500000 2.74000000 7.84500000 3.09000000 ;
+     RECT 7.51500000 2.71500000 7.84500000 3.04500000 ;
+     RECT 1.75500000 2.71500000 2.08500000 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 7.59500000 -0.08500000 7.76500000 0.08500000 ;
      RECT 0.63500000 0.50000000 0.80500000 0.67000000 ;
+     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 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 ;
@@ -175,69 +156,51 @@
      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 ;
-     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 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
+     RECT 7.59500000 3.24500000 7.76500000 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 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 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+     RECT 1.85000000 0.24000000 1.99000000 0.44000000 ;
+     RECT 7.61000000 0.24000000 7.75000000 0.44000000 ;
+     RECT 1.77500000 0.44000000 2.06500000 0.73000000 ;
+     RECT 7.53500000 0.44000000 7.82500000 0.73000000 ;
+     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 ;
      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 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.21000000 1.06000000 5.35000000 1.85500000 ;
-     RECT 4.17500000 1.85500000 5.35000000 1.99500000 ;
+     RECT 5.69000000 1.13500000 5.83000000 1.85500000 ;
+     RECT 4.17500000 1.85500000 5.83000000 1.99500000 ;
      RECT 4.17500000 1.99500000 4.46500000 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.69000000 2.07000000 5.83000000 2.27000000 ;
+     RECT 5.61500000 2.19500000 5.90500000 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 ;
@@ -246,7 +209,7 @@
      RECT 7.05500000 2.60000000 7.34500000 2.67500000 ;
      RECT 0.65000000 2.67500000 7.34500000 2.81500000 ;
      RECT 7.05500000 2.81500000 7.34500000 2.89000000 ;
-     RECT 7.53500000 2.76000000 7.82500000 3.09000000 ;
+     RECT 7.53500000 2.73500000 7.82500000 3.09000000 ;
      RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
 
  END
diff --git a/cells/lef/orig/XOR2X1.lef b/cells/lef/orig/XOR2X1.lef
index 3e0a263..ae254d8 100644
--- a/cells/lef/orig/XOR2X1.lef
+++ b/cells/lef/orig/XOR2X1.lef
@@ -38,7 +38,7 @@
     PORT
      CLASS CORE ;
        LAYER met1 ;
-        RECT 4.65500000 0.44000000 4.94500000 0.73000000 ;
+        RECT 4.65500000 2.60000000 4.94500000 2.89000000 ;
     END
   END Y
 
@@ -49,14 +49,16 @@
     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.29500000 0.84500000 1.58500000 0.92000000 ;
+        RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+        RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+        RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+        RECT 4.17500000 1.06000000 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 4.25000000 1.85500000 5.90500000 1.99500000 ;
+        RECT 1.29500000 1.78000000 1.58500000 2.07000000 ;
         RECT 5.61500000 1.99500000 5.90500000 2.07000000 ;
     END
   END A
@@ -68,9 +70,13 @@
     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 ;
+        RECT 8.49500000 0.84500000 8.78500000 1.13500000 ;
+        RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
+        RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+        RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+        RECT 2.81000000 2.07000000 2.95000000 2.27000000 ;
+        RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
+        RECT 2.81000000 2.27000000 8.71000000 2.41000000 ;
     END
   END B
 
@@ -91,156 +97,116 @@
 
     LAYER pdiffc ;
      RECT 0.63500000 2.25500000 0.80500000 2.42500000 ;
-     RECT 4.71500000 2.25500000 4.88500000 2.42500000 ;
+     RECT 5.19500000 2.25500000 5.36500000 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 ;
+     RECT 4.71500000 2.66000000 4.88500000 2.83000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
 
     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 1.83500000 0.50000000 2.00500000 0.67000000 ;
+     RECT 5.19500000 0.50000000 5.36500000 0.67000000 ;
+     RECT 7.59500000 0.50000000 7.76500000 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 0.00000000 -0.24000000 10.08000000 0.24000000 ;
+     RECT 1.83500000 0.24000000 2.00500000 0.42000000 ;
+     RECT 7.59500000 0.24000000 7.76500000 0.42000000 ;
+     RECT 1.75500000 0.42000000 2.08500000 0.75000000 ;
+     RECT 7.51500000 0.42000000 7.84500000 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 8.47500000 0.82500000 8.80500000 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 1.84000000 ;
+     RECT 4.71500000 0.50000000 4.88500000 1.84000000 ;
+     RECT 4.15500000 1.84000000 4.88500000 2.01000000 ;
+     RECT 4.15500000 2.01000000 4.48500000 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 5.11500000 0.42000000 5.44500000 0.75000000 ;
+     RECT 5.19500000 0.75000000 5.36500000 2.17500000 ;
+     RECT 5.11500000 2.17500000 5.44500000 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 4.63500000 2.58000000 4.96500000 2.91000000 ;
+     RECT 1.75500000 2.71500000 2.08500000 3.04500000 ;
+     RECT 7.51500000 2.71500000 7.84500000 3.04500000 ;
      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 7.59500000 -0.08500000 7.76500000 0.08500000 ;
      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 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 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 ;
+     RECT 4.71500000 2.66000000 4.88500000 2.83000000 ;
+     RECT 1.83500000 2.79500000 2.00500000 2.96500000 ;
+     RECT 7.59500000 2.79500000 7.76500000 2.96500000 ;
+     RECT 1.83500000 3.24500000 2.00500000 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.29500000 0.84500000 1.58500000 0.92000000 ;
+     RECT 4.17500000 0.84500000 4.46500000 0.92000000 ;
+     RECT 1.29500000 0.92000000 4.46500000 1.06000000 ;
+     RECT 1.29500000 1.06000000 1.58500000 1.13500000 ;
+     RECT 4.17500000 1.06000000 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 4.25000000 1.85500000 5.90500000 1.99500000 ;
+     RECT 1.29500000 1.78000000 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 8.49500000 0.84500000 8.78500000 1.13500000 ;
+     RECT 8.57000000 1.13500000 8.71000000 1.78000000 ;
+     RECT 2.73500000 1.78000000 3.02500000 2.07000000 ;
+     RECT 8.49500000 1.78000000 8.78500000 2.07000000 ;
+     RECT 2.81000000 2.07000000 2.95000000 2.27000000 ;
+     RECT 8.57000000 2.07000000 8.71000000 2.27000000 ;
+     RECT 2.81000000 2.27000000 8.71000000 2.41000000 ;
+     RECT 0.57500000 0.44000000 0.86500000 0.51500000 ;
+     RECT 4.65500000 0.44000000 4.94500000 0.51500000 ;
+     RECT 0.57500000 0.51500000 5.83000000 0.65500000 ;
+     RECT 0.57500000 0.65500000 0.86500000 0.73000000 ;
+     RECT 4.65500000 0.65500000 4.94500000 0.73000000 ;
+     RECT 5.69000000 0.65500000 5.83000000 0.84500000 ;
+     RECT 5.61500000 0.84500000 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 0.57500000 2.19500000 0.86500000 2.48500000 ;
+     RECT 8.97500000 0.44000000 9.26500000 0.51500000 ;
+     RECT 7.13000000 0.51500000 9.26500000 0.65500000 ;
+     RECT 8.97500000 0.65500000 9.26500000 0.73000000 ;
+     RECT 7.13000000 0.65500000 7.27000000 0.84500000 ;
+     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 9.05000000 1.06000000 9.19000000 2.19500000 ;
+     RECT 9.05000000 0.73000000 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 4.65500000 2.60000000 4.94500000 2.89000000 ;
+     RECT 1.77500000 2.73500000 2.06500000 3.09000000 ;
+     RECT 7.53500000 2.73500000 7.82500000 3.09000000 ;
      RECT 0.00000000 3.09000000 10.08000000 3.57000000 ;
 
  END
diff --git a/cells/lib/CLKBUF2.lib b/cells/lib/CLKBUF2.lib
new file mode 100644
index 0000000..9db08d1
--- /dev/null
+++ b/cells/lib/CLKBUF2.lib
@@ -0,0 +1,116 @@
+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 (CLKBUF2) {
+    area: 2852928.0;
+    cell_leakage_power: 0.1173;
+    pin (A) {
+      direction: input;
+      rise_capacitance: 0.012377692525831025;
+      fall_capacitance: 0.014510635051354033;
+      capacitance: 0.013444163788592528;
+    }
+    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.003456, 0.060936, 0.069146, 0.082604, 0.160648", \
+            "0.051340, 0.075769, 0.085654, 0.100680, 0.183651", \
+            "0.066467, 0.087976, 0.098405, 0.113977, 0.202421", \
+            "0.100743, 0.117525, 0.126993, 0.142677, 0.241160", \
+            "0.436349, 0.436171, 0.435689, 0.439577, 0.561191"
+          );
+        }
+        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.051128, 0.061163, 0.067029, 0.073843, 0.052270", \
+            "0.068099, 0.078010, 0.084203, 0.093870, 0.076775", \
+            "0.083773, 0.093968, 0.100521, 0.110146, 0.100120", \
+            "0.121325, 0.129839, 0.136017, 0.144820, 0.148604", \
+            "0.470342, 0.472523, 0.473236, 0.475651, 0.532221"
+          );
+        }
+        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.053451, 0.095197, 0.128930, 0.098770, 0.548662", \
+            "0.073372, 0.116766, 0.151624, 0.112771, 0.547491", \
+            "0.098904, 0.140382, 0.175986, 0.144262, 0.573057", \
+            "0.156547, 0.192810, 0.227503, 0.194078, 0.628569", \
+            "0.712222, 0.712231, 0.712217, 0.712240, 0.863982"
+          );
+        }
+        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.061300, 0.089273, 0.054016, 0.080974, 0.539193", \
+            "0.088215, 0.118100, 0.149263, 0.101858, 0.541517", \
+            "0.121045, 0.151150, 0.182662, 0.130674, 0.544762", \
+            "0.191659, 0.215009, 0.199249, 0.199633, 0.589380", \
+            "0.865613, 0.865632, 0.865645, 0.865667, 1.002682"
+          );
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/cells/lib/NOR2X1.lib b/cells/lib/NOR2X1.lib
new file mode 100644
index 0000000..24b5dad
--- /dev/null
+++ b/cells/lib/NOR2X1.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 (NOR2X1) {
+    area: 658368.0;
+    cell_leakage_power: 0.1173;
+    pin (B) {
+      direction: input;
+      rise_capacitance: 0.006307384837439927;
+      fall_capacitance: 0.006306324454300684;
+      capacitance: 0.006306854645870306;
+    }
+    pin (A) {
+      direction: input;
+      rise_capacitance: 0.006299781364172542;
+      fall_capacitance: 0.00890124516010798;
+      capacitance: 0.0076005132621402615;
+    }
+    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.012986, 0.016464, 0.018922, 0.020204, -0.010487", \
+            "0.090855, 0.091382, 0.094616, 0.104989, 0.165835", \
+            "0.168403, 0.168290, 0.169983, 0.177071, 0.280870", \
+            "0.323463, 0.322901, 0.323243, 0.327021, 0.459948", \
+            "1.563457, 1.562468, 1.561029, 1.559260, 1.617628"
+          );
+        }
+        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.008571, 0.012834, 0.016940, 0.022901, 0.073370", \
+            "0.050719, 0.051182, 0.056436, 0.070039, 0.161587", \
+            "0.095157, 0.093369, 0.094430, 0.105159, 0.223878", \
+            "0.184573, 0.181502, 0.179079, 0.180864, 0.324736", \
+            "0.900731, 0.896739, 0.891685, 0.882327, 0.915214"
+          );
+        }
+        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.011911, 0.020251, 0.035631, 0.075894, 0.632098", \
+            "0.122227, 0.122198, 0.122986, 0.131826, 0.572943", \
+            "0.234847, 0.234841, 0.234770, 0.236394, 0.551555", \
+            "0.460142, 0.460167, 0.460168, 0.460147, 0.626352", \
+            "2.263162, 2.263157, 2.263162, 2.263162, 2.264768"
+          );
+        }
+        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.019230, 0.038878, 0.062210, 0.109873, 0.677222", \
+            "0.098886, 0.105335, 0.122576, 0.168308, 0.823551", \
+            "0.184754, 0.186734, 0.196898, 0.231670, 0.903883", \
+            "0.357145, 0.357371, 0.360113, 0.379939, 1.013582", \
+            "1.735540, 1.735518, 1.735519, 1.735512, 2.002056"
+          );
+        }
+      }
+      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.011806, 0.014164, 0.016660, 0.020318, 0.038325", \
+            "0.090368, 0.085510, 0.088212, 0.100612, 0.196917", \
+            "0.168063, 0.161173, 0.160440, 0.166991, 0.301135", \
+            "0.323155, 0.314877, 0.310973, 0.310624, 0.465942", \
+            "1.563209, 1.553438, 1.545230, 1.532397, 1.541763"
+          );
+        }
+        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.005936, 0.007167, 0.008315, 0.008939, 0.000169", \
+            "0.046963, 0.047411, 0.052229, 0.062557, 0.098027", \
+            "0.091434, 0.089675, 0.090367, 0.099822, 0.165924", \
+            "0.180891, 0.177906, 0.175243, 0.176092, 0.276079", \
+            "0.897089, 0.893154, 0.888102, 0.878617, 0.897368"
+          );
+        }
+        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.011999, 0.022468, 0.042650, 0.089129, 0.702921", \
+            "0.122129, 0.122235, 0.124548, 0.142036, 0.672456", \
+            "0.234809, 0.234839, 0.234788, 0.239948, 0.663642", \
+            "0.460173, 0.460149, 0.460147, 0.460142, 0.740712", \
+            "2.263154, 2.263159, 2.263157, 2.263162, 2.274281"
+          );
+        }
+        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.011676, 0.031135, 0.054847, 0.101688, 0.713699", \
+            "0.091257, 0.097211, 0.113947, 0.158466, 0.799171", \
+            "0.177241, 0.178967, 0.188549, 0.222057, 0.874832", \
+            "0.349616, 0.349773, 0.352334, 0.371118, 0.982630", \
+            "1.727951, 1.727928, 1.727929, 1.727925, 1.982101"
+          );
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/cells/lib/OAI21X1.lib b/cells/lib/OAI21X1.lib
new file mode 100644
index 0000000..3e4e5e0
--- /dev/null
+++ b/cells/lib/OAI21X1.lib
@@ -0,0 +1,256 @@
+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 (OAI21X1) {
+    area: 877824.0;
+    cell_leakage_power: 0.1173;
+    pin (C) {
+      direction: input;
+      rise_capacitance: 0.004203428908088842;
+      fall_capacitance: 0.005774046546996895;
+      capacitance: 0.004988737727542869;
+    }
+    pin (B) {
+      direction: input;
+      rise_capacitance: 0.004935221654376836;
+      fall_capacitance: 0.004725917975171027;
+      capacitance: 0.004830569814773931;
+    }
+    pin (A) {
+      direction: input;
+      rise_capacitance: 0.004935717599872121;
+      fall_capacitance: 0.007855089253956563;
+      capacitance: 0.0063954034269143424;
+    }
+    pin (Y) {
+      direction: output;
+      function: "!(C&B&!A|C&B&A|C&!B&A)";
+      function: "(!(A & B & C + A & C & !B + B & C & !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.018803, 0.021286, 0.023372, 0.024350, -0.021448", \
+            "0.096139, 0.096122, 0.098202, 0.106284, 0.140537", \
+            "0.173692, 0.173167, 0.173841, 0.178581, 0.252511", \
+            "0.328700, 0.327878, 0.327492, 0.329140, 0.432054", \
+            "1.568684, 1.567578, 1.565889, 1.563216, 1.593648"
+          );
+        }
+        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.014567, 0.027612, 0.035111, 0.046438, 0.138742", \
+            "0.107786, 0.111806, 0.118058, 0.132521, 0.298154", \
+            "0.202175, 0.204084, 0.208129, 0.219017, 0.408234", \
+            "0.391077, 0.391477, 0.393526, 0.400512, 0.586153", \
+            "1.902728, 1.901585, 1.901088, 1.901617, 1.980151"
+          );
+        }
+        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.019300, 0.026959, 0.040134, 0.062777, 0.317091", \
+            "0.130589, 0.130540, 0.131465, 0.141739, 0.450595", \
+            "0.243235, 0.243236, 0.243192, 0.245219, 0.549172", \
+            "0.468554, 0.468581, 0.468571, 0.468584, 0.676001", \
+            "2.271587, 2.271582, 2.271587, 2.271587, 2.274232"
+          );
+        }
+        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.031664, 0.030264, 0.038631, 0.062964, 0.321051", \
+            "0.153753, 0.153753, 0.154115, 0.161363, 0.463032", \
+            "0.284526, 0.284494, 0.284513, 0.285176, 0.547396", \
+            "0.546140, 0.546108, 0.546137, 0.546139, 0.701133", \
+            "2.638823, 2.638827, 2.638825, 2.638824, 2.638826"
+          );
+        }
+      }
+      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.018084, 0.018977, 0.021732, 0.025405, 0.031435", \
+            "0.095837, 0.089833, 0.091289, 0.101855, 0.181405", \
+            "0.173416, 0.165752, 0.163733, 0.168054, 0.282099", \
+            "0.328448, 0.319616, 0.314657, 0.311922, 0.444977", \
+            "1.568456, 1.558467, 1.549855, 1.535658, 1.516959"
+          );
+        }
+        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.011853, 0.021086, 0.025927, 0.031783, 0.061728", \
+            "0.103111, 0.106391, 0.112051, 0.125088, 0.245734", \
+            "0.197350, 0.198788, 0.202456, 0.212400, 0.366202", \
+            "0.386172, 0.386296, 0.388114, 0.394555, 0.557385", \
+            "1.897755, 1.896510, 1.895926, 1.896353, 1.969217"
+          );
+        }
+        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.019576, 0.029856, 0.049211, 0.081282, 0.446789", \
+            "0.130529, 0.130604, 0.133249, 0.154460, 0.612292", \
+            "0.243240, 0.243237, 0.243198, 0.249492, 0.704661", \
+            "0.468570, 0.468567, 0.468567, 0.468586, 0.813094", \
+            "2.271586, 2.271584, 2.271584, 2.271587, 2.288098"
+          );
+        }
+        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.015426, 0.020183, 0.031186, 0.056113, 0.422226", \
+            "0.142359, 0.142363, 0.142749, 0.150040, 0.459691", \
+            "0.273045, 0.273046, 0.273065, 0.273811, 0.534619", \
+            "0.534623, 0.534603, 0.534626, 0.534613, 0.687998", \
+            "2.627267, 2.627270, 2.627271, 2.627270, 2.627267"
+          );
+        }
+      }
+      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.006353, 0.006907, 0.004743, -0.001737, -0.110680", \
+            "0.047699, 0.044647, 0.048336, 0.053151, -0.004114", \
+            "0.091415, 0.084176, 0.083334, 0.090516, 0.068778", \
+            "0.179491, 0.169025, 0.162028, 0.160307, 0.186435", \
+            "0.885395, 0.872100, 0.856349, 0.829208, 0.807105"
+          );
+        }
+        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.012322, 0.019314, 0.026237, 0.038620, 0.167686", \
+            "0.096733, 0.094797, 0.097266, 0.110737, 0.295956", \
+            "0.182668, 0.178235, 0.176611, 0.181871, 0.385409", \
+            "0.354674, 0.348400, 0.343367, 0.339960, 0.531053", \
+            "1.731112, 1.722805, 1.713320, 1.696828, 1.662380"
+          );
+        }
+        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.011924, 0.031387, 0.053193, 0.097308, 0.671034", \
+            "0.079146, 0.084257, 0.100405, 0.142389, 0.716421", \
+            "0.149831, 0.150702, 0.160194, 0.193088, 0.778101", \
+            "0.291344, 0.291348, 0.292968, 0.312319, 0.882992", \
+            "1.424450, 1.424445, 1.424449, 1.424449, 1.683821"
+          );
+        }
+        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.016705, 0.026501, 0.043315, 0.084291, 0.660779", \
+            "0.136556, 0.136714, 0.139723, 0.158268, 0.651528", \
+            "0.258832, 0.258845, 0.259084, 0.265612, 0.680442", \
+            "0.503343, 0.503344, 0.503342, 0.503821, 0.807464", \
+            "2.459389, 2.459387, 2.459387, 2.459388, 2.481930"
+          );
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/cells/lib/OAI22X1.lib b/cells/lib/OAI22X1.lib
new file mode 100644
index 0000000..5e56410
--- /dev/null
+++ b/cells/lib/OAI22X1.lib
@@ -0,0 +1,326 @@
+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 (OAI22X1) {
+    area: 1097280.0;
+    cell_leakage_power: 0.1173;
+    pin (D) {
+      direction: input;
+      rise_capacitance: 0.00422904568382474;
+      fall_capacitance: 6.27701700917797e-05;
+      capacitance: 0.00214590792695826;
+    }
+    pin (C) {
+      direction: input;
+      rise_capacitance: 0.004229993996294385;
+      fall_capacitance: 0.005758102592005284;
+      capacitance: 0.004994048294149835;
+    }
+    pin (B) {
+      direction: input;
+      rise_capacitance: 0.004935264302975343;
+      fall_capacitance: 0.004717210490958356;
+      capacitance: 0.00482623739696685;
+    }
+    pin (A) {
+      direction: input;
+      rise_capacitance: 0.004935925445230348;
+      fall_capacitance: 0.007825926909320734;
+      capacitance: 0.00638092617727554;
+    }
+    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 + C & D & !A & !B + A & !B & !C & !D + B & !A & !C & !D + C & !A & !B & !D + D & !A & !B & !C + !A & !B & !C & !D))";
+      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.023283, 0.026086, 0.029698, 0.032795, -0.001479", \
+            "0.101125, 0.101089, 0.103242, 0.111463, 0.155077", \
+            "0.178698, 0.178197, 0.178968, 0.183936, 0.265589", \
+            "0.333742, 0.332923, 0.332617, 0.334515, 0.443208", \
+            "1.573737, 1.572628, 1.570969, 1.568406, 1.602882"
+          );
+        }
+        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.012521, 0.028054, 0.037790, 0.050147, 0.142499", \
+            "0.100661, 0.105547, 0.112648, 0.128391, 0.287021", \
+            "0.189767, 0.192023, 0.196444, 0.208039, 0.391309", \
+            "0.368021, 0.368345, 0.370350, 0.377348, 0.561865", \
+            "1.794390, 1.792660, 1.791504, 1.790869, 1.861891"
+          );
+        }
+        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.027523, 0.032137, 0.043710, 0.068258, 0.351959", \
+            "0.138192, 0.138265, 0.138971, 0.148233, 0.459452", \
+            "0.250786, 0.250776, 0.250815, 0.252433, 0.550251", \
+            "0.475993, 0.475990, 0.475983, 0.475987, 0.672440", \
+            "2.278881, 2.278886, 2.278881, 2.278884, 2.281277"
+          );
+        }
+        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.033208, 0.057195, 0.047282, 0.073255, 0.374412", \
+            "0.150143, 0.150175, 0.151479, 0.161717, 0.504750", \
+            "0.271994, 0.271979, 0.271960, 0.273778, 0.580300", \
+            "0.515546, 0.515539, 0.515545, 0.515540, 0.712176", \
+            "2.463948, 2.463946, 2.463949, 2.463947, 2.465069"
+          );
+        }
+      }
+      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.022457, 0.023821, 0.028002, 0.033432, 0.050099", \
+            "0.100795, 0.094818, 0.096177, 0.106623, 0.193238", \
+            "0.178421, 0.170774, 0.168840, 0.173249, 0.292925", \
+            "0.333487, 0.324687, 0.319823, 0.317316, 0.454634", \
+            "1.573506, 1.563530, 1.554962, 1.540935, 1.526232"
+          );
+        }
+        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.009970, 0.022332, 0.029418, 0.036773, 0.068890", \
+            "0.096499, 0.100597, 0.107043, 0.121347, 0.233209", \
+            "0.185411, 0.187163, 0.191171, 0.201750, 0.347651", \
+            "0.363558, 0.363589, 0.365346, 0.371744, 0.531675", \
+            "1.789838, 1.787994, 1.786745, 1.786002, 1.850882"
+          );
+        }
+        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.027453, 0.035677, 0.052614, 0.085958, 0.479334", \
+            "0.138281, 0.138228, 0.140230, 0.159346, 0.613230", \
+            "0.250777, 0.250785, 0.250804, 0.256157, 0.698173", \
+            "0.475995, 0.475996, 0.475995, 0.475967, 0.804605", \
+            "2.278882, 2.278884, 2.278886, 2.278882, 2.294149"
+          );
+        }
+        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.025756, 0.039061, 0.038010, 0.065493, 0.449021", \
+            "0.139560, 0.139590, 0.140888, 0.151088, 0.498425", \
+            "0.261310, 0.261302, 0.261289, 0.263206, 0.566573", \
+            "0.504829, 0.504817, 0.504829, 0.504819, 0.699154", \
+            "2.453188, 2.453188, 2.453189, 2.453187, 2.454474"
+          );
+        }
+      }
+      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.017359, 0.020239, 0.022410, 0.022148, -0.048370", \
+            "0.095781, 0.095787, 0.097757, 0.105343, 0.121554", \
+            "0.173355, 0.172918, 0.173600, 0.178104, 0.237251", \
+            "0.328398, 0.327691, 0.327330, 0.328976, 0.421249", \
+            "1.568399, 1.567426, 1.565794, 1.563195, 1.593328"
+          );
+        }
+        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.015013, 0.024562, 0.032155, 0.044563, 0.160773", \
+            "0.098613, 0.097314, 0.099563, 0.111932, 0.280587", \
+            "0.184509, 0.180314, 0.178163, 0.181771, 0.365997", \
+            "0.356497, 0.350286, 0.344634, 0.339129, 0.507816", \
+            "1.732927, 1.724617, 1.714864, 1.697166, 1.627185"
+          );
+        }
+        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.019019, 0.025963, 0.039343, 0.070044, 0.533535", \
+            "0.129391, 0.129468, 0.130315, 0.139831, 0.514520", \
+            "0.241936, 0.241939, 0.241961, 0.243767, 0.557740", \
+            "0.467115, 0.467109, 0.467107, 0.467104, 0.662643", \
+            "2.269978, 2.269983, 2.269978, 2.269980, 2.272604"
+          );
+        }
+        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.030659, 0.049724, 0.061259, 0.101551, 0.581832", \
+            "0.149318, 0.149607, 0.154293, 0.179158, 0.730603", \
+            "0.271589, 0.271594, 0.272068, 0.281395, 0.804678", \
+            "0.516131, 0.516134, 0.516134, 0.516907, 0.918257", \
+            "2.472225, 2.472227, 2.472226, 2.472227, 2.503573"
+          );
+        }
+      }
+      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.016262, 0.017953, 0.020064, 0.021458, -0.001520", \
+            "0.095321, 0.089494, 0.090705, 0.100426, 0.153300", \
+            "0.172996, 0.165491, 0.163413, 0.167278, 0.258836", \
+            "0.328101, 0.319446, 0.314487, 0.311618, 0.428744", \
+            "1.568141, 1.558342, 1.549772, 1.535678, 1.515010"
+          );
+        }
+        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.011023, 0.018339, 0.023255, 0.030287, 0.084409", \
+            "0.094011, 0.092068, 0.093623, 0.104316, 0.218448", \
+            "0.179838, 0.175225, 0.172596, 0.174928, 0.312603", \
+            "0.351783, 0.345335, 0.339405, 0.333058, 0.468089", \
+            "1.728167, 1.719791, 1.709961, 1.692131, 1.611665"
+          );
+        }
+        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.018855, 0.028595, 0.047231, 0.087045, 0.641403", \
+            "0.129486, 0.129382, 0.131911, 0.151555, 0.651384", \
+            "0.241942, 0.241930, 0.241953, 0.247787, 0.698756", \
+            "0.467109, 0.467119, 0.467119, 0.467084, 0.794655", \
+            "2.269982, 2.269982, 2.269983, 2.269978, 2.286463"
+          );
+        }
+        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.019015, 0.039322, 0.050390, 0.091244, 0.642558", \
+            "0.138637, 0.138872, 0.143330, 0.167382, 0.711587", \
+            "0.260891, 0.260872, 0.261322, 0.270455, 0.778798", \
+            "0.505376, 0.505376, 0.505375, 0.506151, 0.893542", \
+            "2.461425, 2.461427, 2.461427, 2.461428, 2.492763"
+          );
+        }
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/cells/lib/libresilicon.lib b/cells/lib/libresilicon.lib
index 437499a..b2bb5a7 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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
+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 (DFFSR) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; pg_type : "primary_ground"; } area: 23821056.0;    cell_leakage_power: 0.1173;    ff (DS0000, P0000) {      next_state: "D";      clocked_on: "(!CLK)";    }    pin (S) {      direction: input;    }    pin (R) {      direction: input;    }    pin (D) {      direction: input;    }    pin (CLK) {      direction: input;    }    pin (Q) {      direction: output;      function: "(!S&R&!D&!CLK|!S&R&D&!CLK|!S&R&D&CLK|!S&R&!D&CLK)";    }  }  cell (AND2X1) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (CLKBUF2) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; pg_type : "primary_ground"; } area: 2852928.0;    cell_leakage_power: 0.1173;    pin (A) {      direction: input;      rise_capacitance: 0.012377692525831025;      fall_capacitance: 0.014510635051354033;      capacitance: 0.013444163788592528;    }    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.003456, 0.060936, 0.069146, 0.082604, 0.160648",             "0.051340, 0.075769, 0.085654, 0.100680, 0.183651",             "0.066467, 0.087976, 0.098405, 0.113977, 0.202421",             "0.100743, 0.117525, 0.126993, 0.142677, 0.241160",             "0.436349, 0.436171, 0.435689, 0.439577, 0.561191"          );        }        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.051128, 0.061163, 0.067029, 0.073843, 0.052270",             "0.068099, 0.078010, 0.084203, 0.093870, 0.076775",             "0.083773, 0.093968, 0.100521, 0.110146, 0.100120",             "0.121325, 0.129839, 0.136017, 0.144820, 0.148604",             "0.470342, 0.472523, 0.473236, 0.475651, 0.532221"          );        }        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.053451, 0.095197, 0.128930, 0.098770, 0.548662",             "0.073372, 0.116766, 0.151624, 0.112771, 0.547491",             "0.098904, 0.140382, 0.175986, 0.144262, 0.573057",             "0.156547, 0.192810, 0.227503, 0.194078, 0.628569",             "0.712222, 0.712231, 0.712217, 0.712240, 0.863982"          );        }        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.061300, 0.089273, 0.054016, 0.080974, 0.539193",             "0.088215, 0.118100, 0.149263, 0.101858, 0.541517",             "0.121045, 0.151150, 0.182662, 0.130674, 0.544762",             "0.191659, 0.215009, 0.199249, 0.199633, 0.589380",             "0.865613, 0.865632, 0.865645, 0.865667, 1.002682"          );        }      }    }  }  cell (INV) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; pg_type : "primary_ground"; } area: 658368.0;    cell_leakage_power: 0.1173;    pin (B) {      direction: input;      rise_capacitance: 0.006307384837439927;      fall_capacitance: 0.006306324454300684;      capacitance: 0.006306854645870306;    }    pin (A) {      direction: input;      rise_capacitance: 0.006299781364172542;      fall_capacitance: 0.00890124516010798;      capacitance: 0.0076005132621402615;    }    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.012986, 0.016464, 0.018922, 0.020204, -0.010487",             "0.090855, 0.091382, 0.094616, 0.104989, 0.165835",             "0.168403, 0.168290, 0.169983, 0.177071, 0.280870",             "0.323463, 0.322901, 0.323243, 0.327021, 0.459948",             "1.563457, 1.562468, 1.561029, 1.559260, 1.617628"          );        }        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.008571, 0.012834, 0.016940, 0.022901, 0.073370",             "0.050719, 0.051182, 0.056436, 0.070039, 0.161587",             "0.095157, 0.093369, 0.094430, 0.105159, 0.223878",             "0.184573, 0.181502, 0.179079, 0.180864, 0.324736",             "0.900731, 0.896739, 0.891685, 0.882327, 0.915214"          );        }        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.011911, 0.020251, 0.035631, 0.075894, 0.632098",             "0.122227, 0.122198, 0.122986, 0.131826, 0.572943",             "0.234847, 0.234841, 0.234770, 0.236394, 0.551555",             "0.460142, 0.460167, 0.460168, 0.460147, 0.626352",             "2.263162, 2.263157, 2.263162, 2.263162, 2.264768"          );        }        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.019230, 0.038878, 0.062210, 0.109873, 0.677222",             "0.098886, 0.105335, 0.122576, 0.168308, 0.823551",             "0.184754, 0.186734, 0.196898, 0.231670, 0.903883",             "0.357145, 0.357371, 0.360113, 0.379939, 1.013582",             "1.735540, 1.735518, 1.735519, 1.735512, 2.002056"          );        }      }      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.011806, 0.014164, 0.016660, 0.020318, 0.038325",             "0.090368, 0.085510, 0.088212, 0.100612, 0.196917",             "0.168063, 0.161173, 0.160440, 0.166991, 0.301135",             "0.323155, 0.314877, 0.310973, 0.310624, 0.465942",             "1.563209, 1.553438, 1.545230, 1.532397, 1.541763"          );        }        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.005936, 0.007167, 0.008315, 0.008939, 0.000169",             "0.046963, 0.047411, 0.052229, 0.062557, 0.098027",             "0.091434, 0.089675, 0.090367, 0.099822, 0.165924",             "0.180891, 0.177906, 0.175243, 0.176092, 0.276079",             "0.897089, 0.893154, 0.888102, 0.878617, 0.897368"          );        }        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.011999, 0.022468, 0.042650, 0.089129, 0.702921",             "0.122129, 0.122235, 0.124548, 0.142036, 0.672456",             "0.234809, 0.234839, 0.234788, 0.239948, 0.663642",             "0.460173, 0.460149, 0.460147, 0.460142, 0.740712",             "2.263154, 2.263159, 2.263157, 2.263162, 2.274281"          );        }        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.011676, 0.031135, 0.054847, 0.101688, 0.713699",             "0.091257, 0.097211, 0.113947, 0.158466, 0.799171",             "0.177241, 0.178967, 0.188549, 0.222057, 0.874832",             "0.349616, 0.349773, 0.352334, 0.371118, 0.982630",             "1.727951, 1.727928, 1.727929, 1.727925, 1.982101"          );        }      }    }  }  cell (OAI21X1) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; pg_type : "primary_ground"; } area: 877824.0;    cell_leakage_power: 0.1173;    pin (C) {      direction: input;      rise_capacitance: 0.004203428908088842;      fall_capacitance: 0.005774046546996895;      capacitance: 0.004988737727542869;    }    pin (B) {      direction: input;      rise_capacitance: 0.004935221654376836;      fall_capacitance: 0.004725917975171027;      capacitance: 0.004830569814773931;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935717599872121;      fall_capacitance: 0.007855089253956563;      capacitance: 0.0063954034269143424;    }    pin (Y) {      direction: output;      function: "!(C&B&!A|C&B&A|C&!B&A)";      function: "(!(A & B & C + A & C & !B + B & C & !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.018803, 0.021286, 0.023372, 0.024350, -0.021448",             "0.096139, 0.096122, 0.098202, 0.106284, 0.140537",             "0.173692, 0.173167, 0.173841, 0.178581, 0.252511",             "0.328700, 0.327878, 0.327492, 0.329140, 0.432054",             "1.568684, 1.567578, 1.565889, 1.563216, 1.593648"          );        }        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.014567, 0.027612, 0.035111, 0.046438, 0.138742",             "0.107786, 0.111806, 0.118058, 0.132521, 0.298154",             "0.202175, 0.204084, 0.208129, 0.219017, 0.408234",             "0.391077, 0.391477, 0.393526, 0.400512, 0.586153",             "1.902728, 1.901585, 1.901088, 1.901617, 1.980151"          );        }        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.019300, 0.026959, 0.040134, 0.062777, 0.317091",             "0.130589, 0.130540, 0.131465, 0.141739, 0.450595",             "0.243235, 0.243236, 0.243192, 0.245219, 0.549172",             "0.468554, 0.468581, 0.468571, 0.468584, 0.676001",             "2.271587, 2.271582, 2.271587, 2.271587, 2.274232"          );        }        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.031664, 0.030264, 0.038631, 0.062964, 0.321051",             "0.153753, 0.153753, 0.154115, 0.161363, 0.463032",             "0.284526, 0.284494, 0.284513, 0.285176, 0.547396",             "0.546140, 0.546108, 0.546137, 0.546139, 0.701133",             "2.638823, 2.638827, 2.638825, 2.638824, 2.638826"          );        }      }      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.018084, 0.018977, 0.021732, 0.025405, 0.031435",             "0.095837, 0.089833, 0.091289, 0.101855, 0.181405",             "0.173416, 0.165752, 0.163733, 0.168054, 0.282099",             "0.328448, 0.319616, 0.314657, 0.311922, 0.444977",             "1.568456, 1.558467, 1.549855, 1.535658, 1.516959"          );        }        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.011853, 0.021086, 0.025927, 0.031783, 0.061728",             "0.103111, 0.106391, 0.112051, 0.125088, 0.245734",             "0.197350, 0.198788, 0.202456, 0.212400, 0.366202",             "0.386172, 0.386296, 0.388114, 0.394555, 0.557385",             "1.897755, 1.896510, 1.895926, 1.896353, 1.969217"          );        }        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.019576, 0.029856, 0.049211, 0.081282, 0.446789",             "0.130529, 0.130604, 0.133249, 0.154460, 0.612292",             "0.243240, 0.243237, 0.243198, 0.249492, 0.704661",             "0.468570, 0.468567, 0.468567, 0.468586, 0.813094",             "2.271586, 2.271584, 2.271584, 2.271587, 2.288098"          );        }        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.015426, 0.020183, 0.031186, 0.056113, 0.422226",             "0.142359, 0.142363, 0.142749, 0.150040, 0.459691",             "0.273045, 0.273046, 0.273065, 0.273811, 0.534619",             "0.534623, 0.534603, 0.534626, 0.534613, 0.687998",             "2.627267, 2.627270, 2.627271, 2.627270, 2.627267"          );        }      }      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.006353, 0.006907, 0.004743, -0.001737, -0.110680",             "0.047699, 0.044647, 0.048336, 0.053151, -0.004114",             "0.091415, 0.084176, 0.083334, 0.090516, 0.068778",             "0.179491, 0.169025, 0.162028, 0.160307, 0.186435",             "0.885395, 0.872100, 0.856349, 0.829208, 0.807105"          );        }        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.012322, 0.019314, 0.026237, 0.038620, 0.167686",             "0.096733, 0.094797, 0.097266, 0.110737, 0.295956",             "0.182668, 0.178235, 0.176611, 0.181871, 0.385409",             "0.354674, 0.348400, 0.343367, 0.339960, 0.531053",             "1.731112, 1.722805, 1.713320, 1.696828, 1.662380"          );        }        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.011924, 0.031387, 0.053193, 0.097308, 0.671034",             "0.079146, 0.084257, 0.100405, 0.142389, 0.716421",             "0.149831, 0.150702, 0.160194, 0.193088, 0.778101",             "0.291344, 0.291348, 0.292968, 0.312319, 0.882992",             "1.424450, 1.424445, 1.424449, 1.424449, 1.683821"          );        }        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.016705, 0.026501, 0.043315, 0.084291, 0.660779",             "0.136556, 0.136714, 0.139723, 0.158268, 0.651528",             "0.258832, 0.258845, 0.259084, 0.265612, 0.680442",             "0.503343, 0.503344, 0.503342, 0.503821, 0.807464",             "2.459389, 2.459387, 2.459387, 2.459388, 2.481930"          );        }      }    }  }  cell (OAI22X1) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; pg_type : "primary_ground"; } area: 1097280.0;    cell_leakage_power: 0.1173;    pin (D) {      direction: input;      rise_capacitance: 0.00422904568382474;      fall_capacitance: 6.27701700917797e-05;      capacitance: 0.00214590792695826;    }    pin (C) {      direction: input;      rise_capacitance: 0.004229993996294385;      fall_capacitance: 0.005758102592005284;      capacitance: 0.004994048294149835;    }    pin (B) {      direction: input;      rise_capacitance: 0.004935264302975343;      fall_capacitance: 0.004717210490958356;      capacitance: 0.00482623739696685;    }    pin (A) {      direction: input;      rise_capacitance: 0.004935925445230348;      fall_capacitance: 0.007825926909320734;      capacitance: 0.00638092617727554;    }    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 + C & D & !A & !B + A & !B & !C & !D + B & !A & !C & !D + C & !A & !B & !D + D & !A & !B & !C + !A & !B & !C & !D))";      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.023283, 0.026086, 0.029698, 0.032795, -0.001479",             "0.101125, 0.101089, 0.103242, 0.111463, 0.155077",             "0.178698, 0.178197, 0.178968, 0.183936, 0.265589",             "0.333742, 0.332923, 0.332617, 0.334515, 0.443208",             "1.573737, 1.572628, 1.570969, 1.568406, 1.602882"          );        }        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.012521, 0.028054, 0.037790, 0.050147, 0.142499",             "0.100661, 0.105547, 0.112648, 0.128391, 0.287021",             "0.189767, 0.192023, 0.196444, 0.208039, 0.391309",             "0.368021, 0.368345, 0.370350, 0.377348, 0.561865",             "1.794390, 1.792660, 1.791504, 1.790869, 1.861891"          );        }        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.027523, 0.032137, 0.043710, 0.068258, 0.351959",             "0.138192, 0.138265, 0.138971, 0.148233, 0.459452",             "0.250786, 0.250776, 0.250815, 0.252433, 0.550251",             "0.475993, 0.475990, 0.475983, 0.475987, 0.672440",             "2.278881, 2.278886, 2.278881, 2.278884, 2.281277"          );        }        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.033208, 0.057195, 0.047282, 0.073255, 0.374412",             "0.150143, 0.150175, 0.151479, 0.161717, 0.504750",             "0.271994, 0.271979, 0.271960, 0.273778, 0.580300",             "0.515546, 0.515539, 0.515545, 0.515540, 0.712176",             "2.463948, 2.463946, 2.463949, 2.463947, 2.465069"          );        }      }      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.022457, 0.023821, 0.028002, 0.033432, 0.050099",             "0.100795, 0.094818, 0.096177, 0.106623, 0.193238",             "0.178421, 0.170774, 0.168840, 0.173249, 0.292925",             "0.333487, 0.324687, 0.319823, 0.317316, 0.454634",             "1.573506, 1.563530, 1.554962, 1.540935, 1.526232"          );        }        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.009970, 0.022332, 0.029418, 0.036773, 0.068890",             "0.096499, 0.100597, 0.107043, 0.121347, 0.233209",             "0.185411, 0.187163, 0.191171, 0.201750, 0.347651",             "0.363558, 0.363589, 0.365346, 0.371744, 0.531675",             "1.789838, 1.787994, 1.786745, 1.786002, 1.850882"          );        }        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.027453, 0.035677, 0.052614, 0.085958, 0.479334",             "0.138281, 0.138228, 0.140230, 0.159346, 0.613230",             "0.250777, 0.250785, 0.250804, 0.256157, 0.698173",             "0.475995, 0.475996, 0.475995, 0.475967, 0.804605",             "2.278882, 2.278884, 2.278886, 2.278882, 2.294149"          );        }        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.025756, 0.039061, 0.038010, 0.065493, 0.449021",             "0.139560, 0.139590, 0.140888, 0.151088, 0.498425",             "0.261310, 0.261302, 0.261289, 0.263206, 0.566573",             "0.504829, 0.504817, 0.504829, 0.504819, 0.699154",             "2.453188, 2.453188, 2.453189, 2.453187, 2.454474"          );        }      }      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.017359, 0.020239, 0.022410, 0.022148, -0.048370",             "0.095781, 0.095787, 0.097757, 0.105343, 0.121554",             "0.173355, 0.172918, 0.173600, 0.178104, 0.237251",             "0.328398, 0.327691, 0.327330, 0.328976, 0.421249",             "1.568399, 1.567426, 1.565794, 1.563195, 1.593328"          );        }        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.015013, 0.024562, 0.032155, 0.044563, 0.160773",             "0.098613, 0.097314, 0.099563, 0.111932, 0.280587",             "0.184509, 0.180314, 0.178163, 0.181771, 0.365997",             "0.356497, 0.350286, 0.344634, 0.339129, 0.507816",             "1.732927, 1.724617, 1.714864, 1.697166, 1.627185"          );        }        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.019019, 0.025963, 0.039343, 0.070044, 0.533535",             "0.129391, 0.129468, 0.130315, 0.139831, 0.514520",             "0.241936, 0.241939, 0.241961, 0.243767, 0.557740",             "0.467115, 0.467109, 0.467107, 0.467104, 0.662643",             "2.269978, 2.269983, 2.269978, 2.269980, 2.272604"          );        }        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.030659, 0.049724, 0.061259, 0.101551, 0.581832",             "0.149318, 0.149607, 0.154293, 0.179158, 0.730603",             "0.271589, 0.271594, 0.272068, 0.281395, 0.804678",             "0.516131, 0.516134, 0.516134, 0.516907, 0.918257",             "2.472225, 2.472227, 2.472226, 2.472227, 2.503573"          );        }      }      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.016262, 0.017953, 0.020064, 0.021458, -0.001520",             "0.095321, 0.089494, 0.090705, 0.100426, 0.153300",             "0.172996, 0.165491, 0.163413, 0.167278, 0.258836",             "0.328101, 0.319446, 0.314487, 0.311618, 0.428744",             "1.568141, 1.558342, 1.549772, 1.535678, 1.515010"          );        }        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.011023, 0.018339, 0.023255, 0.030287, 0.084409",             "0.094011, 0.092068, 0.093623, 0.104316, 0.218448",             "0.179838, 0.175225, 0.172596, 0.174928, 0.312603",             "0.351783, 0.345335, 0.339405, 0.333058, 0.468089",             "1.728167, 1.719791, 1.709961, 1.692131, 1.611665"          );        }        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.018855, 0.028595, 0.047231, 0.087045, 0.641403",             "0.129486, 0.129382, 0.131911, 0.151555, 0.651384",             "0.241942, 0.241930, 0.241953, 0.247787, 0.698756",             "0.467109, 0.467119, 0.467119, 0.467084, 0.794655",             "2.269982, 2.269982, 2.269983, 2.269978, 2.286463"          );        }        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.019015, 0.039322, 0.050390, 0.091244, 0.642558",             "0.138637, 0.138872, 0.143330, 0.167382, 0.711587",             "0.260891, 0.260872, 0.261322, 0.270455, 0.778798",             "0.505376, 0.505376, 0.505375, 0.506151, 0.893542",             "2.461425, 2.461427, 2.461427, 2.461428, 2.492763"          );        }      }    }  }  cell (OR2X1) {    pg_pin (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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 (VPWR) { voltage_name : "VPWR"; pg_type : "primary_power"; } pg_pin (VGND) { voltage_name : "VGND"; 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.lef b/cells/mag/AND2X1.lef
index 0d4e59a..86f8764 100644
--- a/cells/mag/AND2X1.lef
+++ b/cells/mag/AND2X1.lef
@@ -17,85 +17,43 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
     PORT
       LAYER met1 ;
-        RECT 2.735 1.780 3.025 2.070 ;
-        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 1.385 3.025 1.675 ;
+        RECT 2.810 1.135 2.950 1.385 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END B
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
-        RECT 3.215 0.240 3.505 0.570 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.575 2.760 0.865 3.090 ;
-        RECT 3.215 2.760 3.505 3.090 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 1.747200 ;
+    ANTENNADIFFAREA 0.663600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
-        RECT 0.155 3.090 5.605 3.245 ;
-        RECT 0.555 2.740 0.885 3.090 ;
-        RECT 3.195 2.740 3.525 3.090 ;
+        RECT 0.155 3.215 5.605 3.245 ;
+        RECT 0.155 3.090 3.025 3.215 ;
+        RECT 3.695 3.090 5.605 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 0.635 2.820 0.805 2.990 ;
-        RECT 3.275 2.820 3.445 2.990 ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
     END
   END VPWR
   PIN Y
@@ -106,46 +64,56 @@
         RECT 4.730 0.730 4.870 2.195 ;
         RECT 4.655 0.440 4.945 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.635 2.260 4.965 2.505 ;
-        RECT 4.655 2.175 4.965 2.260 ;
-      LAYER mcon ;
-        RECT 4.715 2.255 4.885 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 5.760 3.330 ;
       LAYER li1 ;
+        RECT 3.195 2.715 3.525 3.045 ;
         RECT 1.755 2.260 2.085 2.505 ;
+        RECT 4.635 2.260 4.965 2.505 ;
         RECT 1.775 2.175 2.085 2.260 ;
+        RECT 4.655 2.175 4.965 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
         RECT 4.155 1.760 4.485 2.090 ;
+        RECT 2.795 1.445 2.965 1.760 ;
         RECT 1.275 0.920 1.605 1.155 ;
         RECT 1.295 0.825 1.605 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
-        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
         RECT 0.795 0.420 1.125 0.750 ;
-        RECT 4.655 0.655 4.965 0.750 ;
-        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
+        RECT 3.275 2.795 3.445 2.965 ;
         RECT 1.835 2.255 2.005 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 4.235 1.840 4.405 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 0.875 0.500 1.045 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
       LAYER met1 ;
-        RECT 1.775 2.410 2.065 2.485 ;
-        RECT 0.890 2.270 4.390 2.410 ;
-        RECT 0.890 0.730 1.030 2.270 ;
-        RECT 1.775 2.195 2.065 2.270 ;
-        RECT 4.250 2.070 4.390 2.270 ;
-        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 1.775 2.195 2.065 2.485 ;
+        RECT 1.850 1.995 1.990 2.195 ;
+        RECT 4.175 1.995 4.465 2.070 ;
+        RECT 1.850 1.855 4.465 1.995 ;
+        RECT 0.815 0.655 1.105 0.730 ;
+        RECT 1.850 0.655 1.990 1.855 ;
+        RECT 4.175 1.780 4.465 1.855 ;
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 4.175 0.845 4.465 1.135 ;
-        RECT 0.815 0.440 1.105 0.730 ;
+        RECT 0.815 0.515 1.990 0.655 ;
+        RECT 0.815 0.440 1.105 0.515 ;
   END
 END AND2X1
 END LIBRARY
diff --git a/cells/mag/AND2X1.mag b/cells/mag/AND2X1.mag
index 8ca3765..dd82c1d 100644
--- a/cells/mag/AND2X1.mag
+++ b/cells/mag/AND2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953857
+timestamp 1636809578
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -19,32 +19,34 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 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 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -53,12 +55,12 @@
 rect 931 439 989 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -105,28 +107,19 @@
 rect 559 181 593 215
 rect 847 181 881 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 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 0 649 655 683
+rect 689 649 1152 683
+rect 31 643 1121 649
+rect 31 618 605 643
+rect 739 618 1121 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 rect 351 485 417 501
 rect 351 452 367 485
 rect 355 451 367 452
@@ -149,6 +142,7 @@
 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 184 271 215
 rect 259 181 271 184
@@ -160,108 +154,59 @@
 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 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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
+rect 0 -17 655 17
+rect 689 -17 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 655 649 689 683
+rect 127 559 161 593
+rect 655 559 689 593
 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 559 289 593 323
 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 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 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 451 367 485
+rect 401 451 413 485
 rect 355 439 413 451
-rect 850 414 878 454
+rect 931 485 989 497
 rect 931 451 943 485
 rect 977 451 989 485
 rect 931 439 989 451
@@ -269,21 +214,28 @@
 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 370 399 398 439
 rect 835 402 893 414
-rect 835 368 847 402
-rect 881 368 893 402
-rect 835 356 893 368
+rect 835 399 847 402
+rect 370 371 847 399
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 370 131 398 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 835 356 893 368
+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 356
 rect 547 215 605 227
 rect 547 181 559 215
 rect 593 181 605 215
@@ -293,32 +245,21 @@
 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 209 103 398 131
+rect 643 134 701 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 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -337,9 +278,9 @@
 port 4 se
 rlabel metal1 547 169 605 227 0 B
 port 1 se
-rlabel metal1 562 227 590 356 0 B
+rlabel metal1 562 227 590 277 0 B
 port 1 se
-rlabel metal1 547 356 605 414 0 B
+rlabel metal1 547 277 605 335 0 B
 port 1 se
 rlabel metal1 259 169 317 227 0 A
 port 0 se
@@ -353,7 +294,7 @@
 port 2 se ground default abutment
 rlabel locali 0 649 1152 683 4 VPWR
 port 3 se power default abutment
-rlabel locali 31 618 1121 649 4 VGND
+rlabel metal1 31 618 1121 649 4 VGND
 port 2 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/AND2X1.mag.beforemagic b/cells/mag/AND2X1.mag.beforemagic
index 62d95c8..68fec26 100644
--- a/cells/mag/AND2X1.mag.beforemagic
+++ b/cells/mag/AND2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752538
+timestamp 1636754196
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -17,32 +17,34 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 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 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -51,12 +53,12 @@
 rect 931 439 989 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -104,28 +106,19 @@
 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 0 649 655 683
+rect 689 649 1152 683
+rect 0 643 1152 649
+rect 0 618 605 643
+rect 739 618 1152 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 rect 351 485 417 501
 rect 351 452 367 485
 rect 355 451 367 452
@@ -148,6 +141,7 @@
 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 184 271 215
 rect 259 181 271 184
@@ -159,109 +153,60 @@
 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 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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 -17 655 17
+rect 689 -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 655 649 689 683
+rect 127 559 161 593
+rect 655 559 689 593
 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 559 289 593 323
 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 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 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 451 367 485
+rect 401 451 413 485
 rect 355 439 413 451
-rect 850 414 878 454
+rect 931 485 989 497
 rect 931 451 943 485
 rect 977 451 989 485
 rect 931 439 989 451
@@ -269,21 +214,28 @@
 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 370 399 398 439
 rect 835 402 893 414
-rect 835 368 847 402
-rect 881 368 893 402
-rect 835 356 893 368
+rect 835 399 847 402
+rect 370 371 847 399
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 370 131 398 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 835 356 893 368
+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 356
 rect 547 215 605 227
 rect 547 181 559 215
 rect 593 181 605 215
@@ -293,35 +245,24 @@
 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 209 103 398 131
+rect 643 134 701 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 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 618 1152 714 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
@@ -337,9 +278,9 @@
 port 7 se
 rlabel metal1 547 169 605 227 0 B
 port 8 se
-rlabel metal1 562 227 590 356 0 B
+rlabel metal1 562 227 590 277 0 B
 port 9 se
-rlabel metal1 547 356 605 414 0 B
+rlabel metal1 547 277 605 335 0 B
 port 10 se
 rlabel metal1 259 169 317 227 0 A
 port 11 se
diff --git a/cells/mag/AND2X2.lef b/cells/mag/AND2X2.lef
index b64fb1f..55700db 100644
--- a/cells/mag/AND2X2.lef
+++ b/cells/mag/AND2X2.lef
@@ -17,77 +17,43 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
     PORT
       LAYER met1 ;
-        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.735 1.385 3.025 1.675 ;
+        RECT 2.810 1.135 2.950 1.385 ;
+        RECT 2.735 0.845 3.025 1.135 ;
     END
   END B
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
-        RECT 3.215 0.240 3.505 0.570 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 0.575 2.760 0.865 3.090 ;
-        RECT 3.215 2.760 3.505 3.090 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 1.747200 ;
+    ANTENNADIFFAREA 0.663600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
-        RECT 0.155 3.090 5.605 3.245 ;
-        RECT 0.555 2.740 0.885 3.090 ;
-        RECT 3.195 2.740 3.525 3.090 ;
+        RECT 0.155 3.215 5.605 3.245 ;
+        RECT 0.155 3.090 3.025 3.215 ;
+        RECT 3.695 3.090 5.605 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 0.635 2.820 0.805 2.990 ;
-        RECT 3.275 2.820 3.445 2.990 ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
     END
   END VPWR
   PIN Y
@@ -98,48 +64,54 @@
         RECT 4.730 0.730 4.870 2.195 ;
         RECT 4.655 0.440 4.945 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.635 2.260 4.965 2.505 ;
-        RECT 4.655 2.175 4.965 2.260 ;
-      LAYER mcon ;
-        RECT 4.715 2.255 4.885 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 5.760 3.330 ;
       LAYER li1 ;
+        RECT 3.195 2.715 3.525 3.045 ;
         RECT 1.755 2.260 2.085 2.505 ;
+        RECT 4.635 2.260 4.965 2.505 ;
         RECT 1.775 2.175 2.085 2.260 ;
+        RECT 4.655 2.175 4.965 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
         RECT 2.715 1.760 3.045 2.090 ;
         RECT 4.155 1.760 4.485 2.090 ;
-        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 2.795 1.445 2.965 1.760 ;
         RECT 1.275 0.920 1.605 1.155 ;
         RECT 1.295 0.825 1.605 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
-        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
         RECT 0.795 0.420 1.125 0.750 ;
-        RECT 4.655 0.655 4.965 0.750 ;
-        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
+        RECT 3.275 2.795 3.445 2.965 ;
         RECT 1.835 2.255 2.005 2.425 ;
-        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.715 2.255 4.885 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 4.235 1.840 4.405 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 0.875 0.500 1.045 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
       LAYER met1 ;
         RECT 1.775 2.195 2.065 2.485 ;
-        RECT 1.850 1.060 1.990 2.195 ;
-        RECT 4.175 1.780 4.465 2.070 ;
-        RECT 4.250 1.135 4.390 1.780 ;
-        RECT 4.175 1.060 4.465 1.135 ;
-        RECT 1.850 0.920 4.465 1.060 ;
+        RECT 1.850 1.995 1.990 2.195 ;
+        RECT 4.175 1.995 4.465 2.070 ;
+        RECT 1.850 1.855 4.465 1.995 ;
         RECT 0.815 0.655 1.105 0.730 ;
-        RECT 1.850 0.655 1.990 0.920 ;
-        RECT 4.175 0.845 4.465 0.920 ;
+        RECT 1.850 0.655 1.990 1.855 ;
+        RECT 4.175 1.780 4.465 1.855 ;
+        RECT 4.250 1.135 4.390 1.780 ;
+        RECT 4.175 0.845 4.465 1.135 ;
         RECT 0.815 0.515 1.990 0.655 ;
         RECT 0.815 0.440 1.105 0.515 ;
   END
diff --git a/cells/mag/AND2X2.mag b/cells/mag/AND2X2.mag
index b435993..a8822a2 100644
--- a/cells/mag/AND2X2.mag
+++ b/cells/mag/AND2X2.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953857
+timestamp 1636809579
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -19,32 +19,34 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 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 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -53,12 +55,12 @@
 rect 931 439 989 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -105,28 +107,19 @@
 rect 559 181 593 215
 rect 847 181 881 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 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 0 649 655 683
+rect 689 649 1152 683
+rect 31 643 1121 649
+rect 31 618 605 643
+rect 739 618 1121 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 rect 351 485 417 501
 rect 351 452 367 485
 rect 355 451 367 452
@@ -149,7 +142,7 @@
 rect 831 368 847 402
 rect 881 368 897 402
 rect 831 352 897 368
-rect 559 231 593 352
+rect 559 323 593 352
 rect 255 215 321 231
 rect 255 184 271 215
 rect 259 181 271 184
@@ -161,96 +154,54 @@
 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 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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
+rect 0 -17 655 17
+rect 689 -17 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 655 649 689 683
+rect 127 559 161 593
+rect 655 559 689 593
 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 559 289 593 323
 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 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 355 485 413 497
 rect 355 451 367 485
 rect 401 451 413 485
@@ -263,57 +214,52 @@
 rect 259 368 271 402
 rect 305 368 317 402
 rect 259 356 317 368
+rect 370 399 398 439
+rect 835 402 893 414
+rect 835 399 847 402
+rect 370 371 847 399
 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 370 131 398 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 835 356 893 368
+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 356
+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 209 103 398 131
-rect 931 134 989 146
+rect 643 134 701 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 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -330,21 +276,25 @@
 port 4 se
 rlabel metal1 931 439 989 497 0 Y
 port 4 se
+rlabel metal1 547 169 605 227 0 B
+port 1 se
+rlabel metal1 562 227 590 277 0 B
+port 1 se
+rlabel metal1 547 277 605 335 0 B
+port 1 se
 rlabel metal1 259 169 317 227 0 A
 port 0 se
 rlabel metal1 274 227 302 356 0 A
 port 0 se
 rlabel metal1 259 356 317 414 0 A
 port 0 se
-rlabel metal1 547 356 605 414 0 B
-port 1 se
 rlabel locali 0 -17 1152 17 4 VGND
 port 2 se ground default abutment
 rlabel locali 31 17 1121 48 4 VGND
 port 2 se ground default abutment
 rlabel locali 0 649 1152 683 4 VPWR
 port 3 se power default abutment
-rlabel locali 31 618 1121 649 4 VGND
+rlabel metal1 31 618 1121 649 4 VGND
 port 2 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/AND2X2.mag.beforemagic b/cells/mag/AND2X2.mag.beforemagic
index 6132062..f993444 100644
--- a/cells/mag/AND2X2.mag.beforemagic
+++ b/cells/mag/AND2X2.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752610
+timestamp 1636754241
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -17,32 +17,34 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 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 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -51,12 +53,12 @@
 rect 931 439 989 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -104,28 +106,19 @@
 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 0 649 655 683
+rect 689 649 1152 683
+rect 0 643 1152 649
+rect 0 618 605 643
+rect 739 618 1152 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 rect 351 485 417 501
 rect 351 452 367 485
 rect 355 451 367 452
@@ -148,7 +141,7 @@
 rect 831 368 847 402
 rect 881 368 897 402
 rect 831 352 897 368
-rect 559 231 593 352
+rect 559 323 593 352
 rect 255 215 321 231
 rect 255 184 271 215
 rect 259 181 271 184
@@ -160,97 +153,55 @@
 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 881 184 897 215
+rect 881 181 893 184
+rect 831 165 893 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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 -17 655 17
+rect 689 -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 655 649 689 683
+rect 127 559 161 593
+rect 655 559 689 593
 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 559 289 593 323
 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 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 355 485 413 497
 rect 355 451 367 485
 rect 401 451 413 485
@@ -263,60 +214,55 @@
 rect 259 368 271 402
 rect 305 368 317 402
 rect 259 356 317 368
+rect 370 399 398 439
+rect 835 402 893 414
+rect 835 399 847 402
+rect 370 371 847 399
 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 370 131 398 371
+rect 835 368 847 371
+rect 881 368 893 402
+rect 835 356 893 368
+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 356
+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 209 103 398 131
-rect 931 134 989 146
+rect 643 134 701 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 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 618 1152 714 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
@@ -330,14 +276,18 @@
 port 6 se
 rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 259 169 317 227 0 A
+rlabel metal1 547 169 605 227 0 B
 port 8 se
-rlabel metal1 274 227 302 356 0 A
+rlabel metal1 562 227 590 277 0 B
 port 9 se
-rlabel metal1 259 356 317 414 0 A
+rlabel metal1 547 277 605 335 0 B
 port 10 se
-rlabel metal1 547 356 605 414 0 B
+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/AOI21X1.lef b/cells/mag/AOI21X1.lef
index 7c4d8a2..5c5f988 100644
--- a/cells/mag/AOI21X1.lef
+++ b/cells/mag/AOI21X1.lef
@@ -17,12 +17,6 @@
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
@@ -32,12 +26,6 @@
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 4.175 0.845 4.465 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-      LAYER mcon ;
-        RECT 4.235 1.840 4.405 2.010 ;
-    END
   END B
   PIN C
     ANTENNAGATEAREA 0.189000 ;
@@ -47,42 +35,17 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END C
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.215 2.760 3.505 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -91,72 +54,63 @@
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
         RECT 0.155 3.090 5.605 3.245 ;
-        RECT 3.195 2.740 3.525 3.090 ;
+        RECT 3.195 2.715 3.525 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 3.275 2.820 3.445 2.990 ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 3.275 2.795 3.445 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.383750 ;
     PORT
       LAYER met1 ;
-        RECT 0.575 2.195 0.865 2.485 ;
-        RECT 0.650 0.730 0.790 2.195 ;
-        RECT 0.575 0.655 0.865 0.730 ;
+        RECT 0.815 2.195 1.105 2.485 ;
+        RECT 0.890 0.730 1.030 2.195 ;
+        RECT 0.815 0.655 1.105 0.730 ;
         RECT 4.655 0.655 4.945 0.730 ;
-        RECT 0.575 0.515 4.945 0.655 ;
-        RECT 0.575 0.440 0.865 0.515 ;
+        RECT 0.815 0.515 4.945 0.655 ;
+        RECT 0.815 0.440 1.105 0.515 ;
         RECT 4.655 0.440 4.945 0.515 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.635 0.420 4.965 0.750 ;
-      LAYER mcon ;
-        RECT 4.715 0.500 4.885 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 0.420 0.885 0.750 ;
-      LAYER mcon ;
-        RECT 0.635 0.500 0.805 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 5.760 3.330 ;
       LAYER li1 ;
+        RECT 0.795 2.260 1.125 2.505 ;
         RECT 2.235 2.260 2.565 2.505 ;
         RECT 4.635 2.260 4.965 2.505 ;
+        RECT 0.795 2.175 1.105 2.260 ;
         RECT 2.235 2.175 2.545 2.260 ;
         RECT 4.655 2.175 4.965 2.260 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.295 0.825 1.605 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
         RECT 4.155 0.920 4.485 1.155 ;
         RECT 4.155 0.825 4.465 0.920 ;
+        RECT 0.795 0.420 1.125 0.750 ;
+        RECT 1.775 0.655 2.085 0.750 ;
+        RECT 1.755 0.420 2.085 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 1.835 0.240 2.005 0.420 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
+        RECT 0.875 2.255 1.045 2.425 ;
         RECT 2.315 2.255 2.485 2.425 ;
         RECT 4.715 2.255 4.885 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
       LAYER met1 ;
         RECT 2.255 2.410 2.545 2.485 ;
         RECT 4.655 2.410 4.945 2.485 ;
diff --git a/cells/mag/AOI21X1.mag b/cells/mag/AOI21X1.mag
index af6d4e0..608e5b9 100644
--- a/cells/mag/AOI21X1.mag
+++ b/cells/mag/AOI21X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953858
+timestamp 1636809580
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -15,17 +15,20 @@
 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 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 401 100 561 132
+rect 303 48 561 100
 rect 591 48 849 132
 rect 879 100 943 132
 rect 977 132 989 134
@@ -33,32 +36,32 @@
 rect 879 48 1037 100
 << pdiff >>
 rect 115 485 273 618
-rect 115 451 127 485
-rect 161 451 273 485
+rect 115 451 175 485
+rect 209 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 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 163 439 221 450
 rect 451 439 509 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 100 161 134
-rect 367 68 401 102
+rect 175 100 209 134
+rect 367 100 401 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 451 161 485
+rect 175 451 209 485
 rect 463 451 497 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -105,29 +108,19 @@
 rect 559 181 593 215
 rect 847 181 881 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 1152 683
+rect 0 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
 rect 447 485 513 501
+rect 209 451 221 452
+rect 159 435 221 451
 rect 447 451 463 485
 rect 497 452 513 485
 rect 927 485 993 501
@@ -150,9 +143,10 @@
 rect 881 368 897 402
 rect 831 352 897 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 165 321 181
 rect 543 215 609 231
 rect 543 181 559 215
 rect 593 181 609 215
@@ -162,47 +156,27 @@
 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 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
 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 367 48 401 84
 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
+rect 0 -17 367 17
+rect 401 -17 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 655 649 689 683
+rect 655 559 689 593
+rect 175 451 209 485
 rect 463 451 497 485
 rect 943 451 977 485
 rect 271 368 305 402
@@ -211,44 +185,22 @@
 rect 271 181 305 215
 rect 559 181 593 215
 rect 847 181 881 215
-rect 127 100 161 134
+rect 175 100 209 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
+rect 367 -17 401 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
 rect 451 485 509 497
 rect 451 451 463 485
 rect 497 482 509 485
@@ -260,7 +212,7 @@
 rect 931 451 943 454
 rect 977 451 989 485
 rect 931 439 989 451
-rect 130 146 158 439
+rect 178 146 206 439
 rect 259 402 317 414
 rect 259 368 271 402
 rect 305 368 317 402
@@ -288,31 +240,20 @@
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 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 209 103 943 131
+rect 209 100 221 103
+rect 163 88 221 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 -17 367 17
+rect 401 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -323,26 +264,20 @@
 port 3 se
 rlabel metal1 0 -48 1152 48 0 VGND
 port 3 se
-rlabel metal1 115 88 173 103 0 Y
+rlabel metal1 163 88 221 103 0 Y
 port 5 se
 rlabel metal1 931 88 989 103 0 Y
 port 5 se
-rlabel metal1 115 103 989 131 0 Y
+rlabel metal1 163 103 989 131 0 Y
 port 5 se
-rlabel metal1 115 131 173 146 0 Y
+rlabel metal1 163 131 221 146 0 Y
 port 5 se
 rlabel metal1 931 131 989 146 0 Y
 port 5 se
-rlabel metal1 130 146 158 439 0 Y
+rlabel metal1 178 146 206 439 0 Y
 port 5 se
-rlabel metal1 115 439 173 497 0 Y
+rlabel metal1 163 439 221 497 0 Y
 port 5 se
-rlabel metal1 547 169 605 227 0 A
-port 0 se
-rlabel metal1 562 227 590 356 0 A
-port 0 se
-rlabel metal1 547 356 605 414 0 A
-port 0 se
 rlabel metal1 259 169 317 227 0 C
 port 2 se
 rlabel metal1 274 227 302 356 0 C
@@ -355,6 +290,12 @@
 port 1 se
 rlabel metal1 835 356 893 414 0 B
 port 1 se
+rlabel metal1 547 169 605 227 0 A
+port 0 se
+rlabel metal1 562 227 590 356 0 A
+port 0 se
+rlabel metal1 547 356 605 414 0 A
+port 0 se
 rlabel locali 0 -17 1152 17 4 VGND
 port 3 se ground default abutment
 rlabel locali 31 17 1121 48 4 VGND
diff --git a/cells/mag/AOI21X1.mag.beforemagic b/cells/mag/AOI21X1.mag.beforemagic
index a1d350c..dcd324c 100644
--- a/cells/mag/AOI21X1.mag.beforemagic
+++ b/cells/mag/AOI21X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752678
+timestamp 1636754284
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -13,17 +13,20 @@
 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 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 401 100 561 132
+rect 303 48 561 100
 rect 591 48 849 132
 rect 879 100 943 132
 rect 977 132 989 134
@@ -31,32 +34,32 @@
 rect 879 48 1037 100
 << pdiff >>
 rect 115 485 273 618
-rect 115 451 127 485
-rect 161 451 273 485
+rect 115 451 175 485
+rect 209 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 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 163 439 221 450
 rect 451 439 509 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 100 161 134
-rect 367 68 401 102
+rect 175 100 209 134
+rect 367 100 401 134
 rect 943 100 977 134
 << pdiffc >>
-rect 127 451 161 485
+rect 175 451 209 485
 rect 463 451 497 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -104,29 +107,19 @@
 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 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
 rect 447 485 513 501
+rect 209 451 221 452
+rect 159 435 221 451
 rect 447 451 463 485
 rect 497 452 513 485
 rect 927 485 993 501
@@ -149,9 +142,10 @@
 rect 881 368 897 402
 rect 831 352 897 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 165 321 181
 rect 543 215 609 231
 rect 543 181 559 215
 rect 593 181 609 215
@@ -161,48 +155,28 @@
 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 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
 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 367 48 401 84
 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 -17 367 17
+rect 401 -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 655 649 689 683
+rect 655 559 689 593
+rect 175 451 209 485
 rect 463 451 497 485
 rect 943 451 977 485
 rect 271 368 305 402
@@ -211,44 +185,22 @@
 rect 271 181 305 215
 rect 559 181 593 215
 rect 847 181 881 215
-rect 127 100 161 134
+rect 175 100 209 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
+rect 367 -17 401 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 451 221 485
+rect 163 439 221 451
 rect 451 485 509 497
 rect 451 451 463 485
 rect 497 482 509 485
@@ -260,7 +212,7 @@
 rect 931 451 943 454
 rect 977 451 989 485
 rect 931 439 989 451
-rect 130 146 158 439
+rect 178 146 206 439
 rect 259 402 317 414
 rect 259 368 271 402
 rect 305 368 317 402
@@ -288,31 +240,20 @@
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 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 209 103 943 131
+rect 209 100 221 103
+rect 163 88 221 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 -17 367 17
+rect 401 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel locali 0 618 1152 714 0 VDD
@@ -323,37 +264,37 @@
 port 3 se
 rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 115 88 173 103 0 Y
+rlabel metal1 163 88 221 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
+rlabel metal1 163 103 989 131 0 Y
 port 7 se
-rlabel metal1 115 131 173 146 0 Y
+rlabel metal1 163 131 221 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
+rlabel metal1 178 146 206 439 0 Y
 port 10 se
-rlabel metal1 115 439 173 497 0 Y
+rlabel metal1 163 439 221 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
+port 12 se
 rlabel metal1 274 227 302 356 0 C
-port 16 se
+port 13 se
 rlabel metal1 259 356 317 414 0 C
-port 17 se
+port 14 se
 rlabel metal1 835 169 893 227 0 B
-port 18 se
+port 15 se
 rlabel metal1 850 227 878 356 0 B
-port 19 se
+port 16 se
 rlabel metal1 835 356 893 414 0 B
+port 17 se
+rlabel metal1 547 169 605 227 0 A
+port 18 se
+rlabel metal1 562 227 590 356 0 A
+port 19 se
+rlabel metal1 547 356 605 414 0 A
 port 20 se
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/AOI22X1.lef b/cells/mag/AOI22X1.lef
index 08b4e33..0de7672 100644
--- a/cells/mag/AOI22X1.lef
+++ b/cells/mag/AOI22X1.lef
@@ -17,12 +17,6 @@
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
@@ -32,13 +26,6 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.295 2.005 1.605 2.090 ;
-        RECT 1.275 1.760 1.605 2.005 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END B
   PIN C
     ANTENNAGATEAREA 0.189000 ;
@@ -48,12 +35,6 @@
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 4.175 0.845 4.465 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-      LAYER mcon ;
-        RECT 4.235 1.840 4.405 2.010 ;
-    END
   END C
   PIN D
     ANTENNAGATEAREA 0.189000 ;
@@ -63,45 +44,17 @@
         RECT 5.690 1.135 5.830 1.780 ;
         RECT 5.615 0.845 5.905 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 5.595 1.760 5.925 2.090 ;
-      LAYER mcon ;
-        RECT 5.675 1.840 5.845 2.010 ;
-    END
   END D
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
         RECT 0.000 -0.240 7.200 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 7.045 0.240 ;
-        RECT 0.000 -0.085 7.200 0.085 ;
-      LAYER mcon ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 7.200 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -110,80 +63,71 @@
       LAYER li1 ;
         RECT 0.000 3.245 7.200 3.415 ;
         RECT 0.155 3.090 7.045 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.803750 ;
     PORT
       LAYER met1 ;
-        RECT 5.135 2.195 5.425 2.485 ;
+        RECT 5.135 2.410 5.425 2.485 ;
+        RECT 5.135 2.270 6.310 2.410 ;
+        RECT 5.135 2.195 5.425 2.270 ;
+        RECT 6.170 0.730 6.310 2.270 ;
         RECT 0.815 0.655 1.105 0.730 ;
-        RECT 5.210 0.655 5.350 2.195 ;
         RECT 6.095 0.655 6.385 0.730 ;
         RECT 0.815 0.515 6.385 0.655 ;
         RECT 0.815 0.440 1.105 0.515 ;
         RECT 6.095 0.440 6.385 0.515 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 6.075 0.420 6.405 0.750 ;
-      LAYER mcon ;
-        RECT 6.155 0.500 6.325 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.795 0.655 1.105 0.750 ;
-        RECT 0.795 0.420 1.125 0.655 ;
-      LAYER mcon ;
-        RECT 0.875 0.500 1.045 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.115 2.260 5.445 2.505 ;
-        RECT 5.115 2.175 5.425 2.260 ;
-      LAYER mcon ;
-        RECT 5.195 2.255 5.365 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 7.200 3.330 ;
       LAYER li1 ;
         RECT 6.075 2.580 6.405 2.910 ;
-        RECT 0.795 2.175 1.125 2.505 ;
+        RECT 0.795 2.260 1.125 2.505 ;
         RECT 3.195 2.260 3.525 2.505 ;
+        RECT 0.795 2.175 1.105 2.260 ;
         RECT 3.215 2.175 3.525 2.260 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 5.115 2.260 5.445 2.505 ;
+        RECT 5.115 2.175 5.425 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.295 0.825 1.605 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
         RECT 4.155 0.825 4.485 1.155 ;
         RECT 5.595 0.920 5.925 1.155 ;
         RECT 5.595 0.825 5.905 0.920 ;
+        RECT 0.795 0.420 1.125 0.750 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 3.275 0.240 3.445 0.420 ;
+        RECT 0.155 0.085 7.045 0.240 ;
+        RECT 0.000 -0.085 7.200 0.085 ;
       LAYER mcon ;
         RECT 6.155 2.660 6.325 2.830 ;
         RECT 0.875 2.255 1.045 2.425 ;
         RECT 3.275 2.255 3.445 2.425 ;
+        RECT 5.195 2.255 5.365 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 5.675 0.905 5.845 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
       LAYER met1 ;
         RECT 6.095 2.815 6.385 2.890 ;
         RECT 3.290 2.675 6.385 2.815 ;
diff --git a/cells/mag/AOI22X1.mag b/cells/mag/AOI22X1.mag
index 2480a5d..1e77330 100644
--- a/cells/mag/AOI22X1.mag
+++ b/cells/mag/AOI22X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953859
+timestamp 1636809581
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -21,15 +21,17 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 48 1137 132
 rect 1167 100 1231 132
 rect 1265 132 1277 134
@@ -40,10 +42,10 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 849 618
 rect 591 451 655 485
 rect 689 451 849 485
@@ -61,11 +63,11 @@
 rect 1027 439 1085 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 1231 100 1265 134
 << pdiffc >>
 rect 175 451 209 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 rect 1039 451 1073 485
 rect 1231 532 1265 566
@@ -128,37 +130,24 @@
 rect 847 181 881 215
 rect 1135 181 1169 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 1440 683
+rect 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 209 452 225 485
 rect 639 485 705 501
 rect 639 452 655 485
-rect 159 435 225 451
+rect 209 451 221 452
+rect 159 435 221 451
 rect 643 451 655 452
 rect 689 451 705 485
 rect 643 435 705 451
@@ -167,9 +156,8 @@
 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 255 402 321 418
+rect 255 368 271 402
 rect 305 368 321 402
 rect 255 352 321 368
 rect 543 402 609 418
@@ -185,9 +173,10 @@
 rect 1169 368 1185 402
 rect 1119 352 1185 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 165 321 181
 rect 543 215 609 231
 rect 543 181 559 215
 rect 593 181 609 215
@@ -201,53 +190,26 @@
 rect 1169 184 1185 215
 rect 1169 181 1181 184
 rect 1119 165 1181 181
-rect 159 134 221 150
+rect 159 134 225 150
 rect 159 100 175 134
-rect 209 131 221 134
-rect 1215 134 1281 150
-rect 209 100 225 131
+rect 209 100 225 134
+rect 643 134 705 150
+rect 643 131 655 134
 rect 159 84 225 100
-rect 639 102 705 118
-rect 639 68 655 102
-rect 689 68 705 102
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 1215 134 1281 150
 rect 1215 100 1231 134
 rect 1265 100 1281 134
 rect 1215 84 1281 100
-rect 639 48 705 68
+rect 655 48 689 84
 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
+rect 0 -17 655 17
+rect 689 -17 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 367 649 401 683
+rect 367 559 401 593
 rect 1231 532 1265 566
 rect 175 451 209 485
 rect 655 451 689 485
@@ -262,46 +224,18 @@
 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
+rect 655 -17 689 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
 rect 1219 566 1277 578
 rect 1219 563 1231 566
+rect 355 547 413 559
 rect 658 535 1231 563
 rect 658 497 686 535
 rect 1219 532 1231 535
@@ -320,7 +254,9 @@
 rect 643 439 701 451
 rect 1027 485 1085 497
 rect 1027 451 1039 485
-rect 1073 451 1085 485
+rect 1073 482 1085 485
+rect 1073 454 1262 482
+rect 1073 451 1085 454
 rect 1027 439 1085 451
 rect 259 402 317 414
 rect 259 368 271 402
@@ -334,9 +270,14 @@
 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 181 317 215
@@ -349,19 +290,14 @@
 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 1234 146 1262 454
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
 rect 1219 134 1277 146
 rect 1219 131 1231 134
 rect 209 103 1231 131
@@ -371,22 +307,8 @@
 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 -17 655 17
+rect 689 -17 1440 17
 rect 0 -48 1440 -17
 << labels >>
 rlabel metal1 0 618 1440 714 0 VPWR
@@ -407,34 +329,38 @@
 port 6 se
 rlabel metal1 1219 131 1277 146 0 Y
 port 6 se
-rlabel metal1 1042 131 1070 439 0 Y
+rlabel metal1 1027 439 1085 454 0 Y
 port 6 se
-rlabel metal1 1027 439 1085 497 0 Y
+rlabel metal1 1234 146 1262 454 0 Y
 port 6 se
-rlabel metal1 1123 169 1181 227 0 D
-port 3 se
-rlabel metal1 1138 227 1166 356 0 D
-port 3 se
-rlabel metal1 1123 356 1181 414 0 D
-port 3 se
+rlabel metal1 1027 454 1262 482 0 Y
+port 6 se
+rlabel metal1 1027 482 1085 497 0 Y
+port 6 se
 rlabel metal1 259 169 317 227 0 B
 port 1 se
 rlabel metal1 274 227 302 356 0 B
 port 1 se
 rlabel metal1 259 356 317 414 0 B
 port 1 se
-rlabel metal1 835 169 893 227 0 C
-port 2 se
-rlabel metal1 850 227 878 356 0 C
-port 2 se
-rlabel metal1 835 356 893 414 0 C
-port 2 se
 rlabel metal1 547 169 605 227 0 A
 port 0 se
 rlabel metal1 562 227 590 356 0 A
 port 0 se
 rlabel metal1 547 356 605 414 0 A
 port 0 se
+rlabel metal1 1123 169 1181 227 0 D
+port 3 se
+rlabel metal1 1138 227 1166 356 0 D
+port 3 se
+rlabel metal1 1123 356 1181 414 0 D
+port 3 se
+rlabel metal1 835 169 893 227 0 C
+port 2 se
+rlabel metal1 850 227 878 356 0 C
+port 2 se
+rlabel metal1 835 356 893 414 0 C
+port 2 se
 rlabel locali 0 -17 1440 17 4 VGND
 port 4 se ground default abutment
 rlabel locali 31 17 1409 48 4 VGND
diff --git a/cells/mag/AOI22X1.mag.beforemagic b/cells/mag/AOI22X1.mag.beforemagic
index 96af52f..ac8cc8d 100644
--- a/cells/mag/AOI22X1.mag.beforemagic
+++ b/cells/mag/AOI22X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752751
+timestamp 1636754346
 << nwell >>
 rect 0 358 1440 666
 << nmos >>
@@ -19,15 +19,17 @@
 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 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 48 1137 132
 rect 1167 100 1231 132
 rect 1265 132 1277 134
@@ -38,10 +40,10 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 849 618
 rect 591 451 655 485
 rect 689 451 849 485
@@ -59,11 +61,11 @@
 rect 1027 439 1085 450
 << ndiffc >>
 rect 175 100 209 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 1231 100 1265 134
 << pdiffc >>
 rect 175 451 209 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 rect 1039 451 1073 485
 rect 1231 532 1265 566
@@ -127,37 +129,24 @@
 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 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 209 452 225 485
 rect 639 485 705 501
 rect 639 452 655 485
-rect 159 435 225 451
+rect 209 451 221 452
+rect 159 435 221 451
 rect 643 451 655 452
 rect 689 451 705 485
 rect 643 435 705 451
@@ -166,9 +155,8 @@
 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 255 402 321 418
+rect 255 368 271 402
 rect 305 368 321 402
 rect 255 352 321 368
 rect 543 402 609 418
@@ -184,9 +172,10 @@
 rect 1169 368 1185 402
 rect 1119 352 1185 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 165 321 181
 rect 543 215 609 231
 rect 543 181 559 215
 rect 593 181 609 215
@@ -200,54 +189,27 @@
 rect 1169 184 1185 215
 rect 1169 181 1181 184
 rect 1119 165 1181 181
-rect 159 134 221 150
+rect 159 134 225 150
 rect 159 100 175 134
-rect 209 131 221 134
-rect 1215 134 1281 150
-rect 209 100 225 131
+rect 209 100 225 134
+rect 643 134 705 150
+rect 643 131 655 134
 rect 159 84 225 100
-rect 639 102 705 118
-rect 639 68 655 102
-rect 689 68 705 102
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 1215 134 1281 150
 rect 1215 100 1231 134
 rect 1265 100 1281 134
 rect 1215 84 1281 100
-rect 639 48 705 68
+rect 655 48 689 84
 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 -17 655 17
+rect 689 -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 367 649 401 683
+rect 367 559 401 593
 rect 1231 532 1265 566
 rect 175 451 209 485
 rect 655 451 689 485
@@ -262,46 +224,18 @@
 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
+rect 655 -17 689 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
 rect 1219 566 1277 578
 rect 1219 563 1231 566
+rect 355 547 413 559
 rect 658 535 1231 563
 rect 658 497 686 535
 rect 1219 532 1231 535
@@ -320,7 +254,9 @@
 rect 643 439 701 451
 rect 1027 485 1085 497
 rect 1027 451 1039 485
-rect 1073 451 1085 485
+rect 1073 482 1085 485
+rect 1073 454 1262 482
+rect 1073 451 1085 454
 rect 1027 439 1085 451
 rect 259 402 317 414
 rect 259 368 271 402
@@ -334,9 +270,14 @@
 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 181 317 215
@@ -349,19 +290,14 @@
 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 1234 146 1262 454
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
 rect 1219 134 1277 146
 rect 1219 131 1231 134
 rect 209 103 1231 131
@@ -371,22 +307,8 @@
 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 -17 655 17
+rect 689 -17 1440 17
 rect 0 -48 1440 -17
 << labels >>
 rlabel locali 0 618 1440 714 0 VDD
@@ -407,34 +329,38 @@
 port 8 se
 rlabel metal1 1219 131 1277 146 0 Y
 port 9 se
-rlabel metal1 1042 131 1070 439 0 Y
+rlabel metal1 1027 439 1085 454 0 Y
 port 10 se
-rlabel metal1 1027 439 1085 497 0 Y
+rlabel metal1 1234 146 1262 454 0 Y
 port 11 se
-rlabel metal1 1123 169 1181 227 0 D
+rlabel metal1 1027 454 1262 482 0 Y
 port 12 se
-rlabel metal1 1138 227 1166 356 0 D
+rlabel metal1 1027 482 1085 497 0 Y
 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
+port 14 se
 rlabel metal1 274 227 302 356 0 B
-port 16 se
+port 15 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
+port 16 se
 rlabel metal1 547 169 605 227 0 A
-port 21 se
+port 17 se
 rlabel metal1 562 227 590 356 0 A
-port 22 se
+port 18 se
 rlabel metal1 547 356 605 414 0 A
+port 19 se
+rlabel metal1 1123 169 1181 227 0 D
+port 20 se
+rlabel metal1 1138 227 1166 356 0 D
+port 21 se
+rlabel metal1 1123 356 1181 414 0 D
+port 22 se
+rlabel metal1 835 169 893 227 0 C
 port 23 se
+rlabel metal1 850 227 878 356 0 C
+port 24 se
+rlabel metal1 835 356 893 414 0 C
+port 25 se
 << properties >>
 string FIXED_BBOX 0 0 1440 666
 << end >>
diff --git a/cells/mag/ASYNC2.lef b/cells/mag/ASYNC2.lef
new file mode 100644
index 0000000..d59a0fb
--- /dev/null
+++ b/cells/mag/ASYNC2.lef
@@ -0,0 +1,135 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO ASYNC2
+  CLASS CORE ;
+  FOREIGN ASYNC2 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 6.095 2.410 6.385 2.485 ;
+        RECT 4.250 2.270 6.385 2.410 ;
+        RECT 4.250 2.070 4.390 2.270 ;
+        RECT 6.095 2.195 6.385 2.270 ;
+        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 6.170 0.730 6.310 2.195 ;
+        RECT 6.095 0.440 6.385 0.730 ;
+    END
+  END C
+  PIN CN
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.661650 ;
+    PORT
+      LAYER met1 ;
+        RECT 3.215 2.195 3.505 2.485 ;
+        RECT 3.290 1.060 3.430 2.195 ;
+        RECT 5.615 1.780 5.905 2.070 ;
+        RECT 5.690 1.135 5.830 1.780 ;
+        RECT 5.615 1.060 5.905 1.135 ;
+        RECT 3.290 0.920 5.905 1.060 ;
+        RECT 3.290 0.730 3.430 0.920 ;
+        RECT 5.615 0.845 5.905 0.920 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+    END
+  END CN
+  PIN VGND
+    ANTENNADIFFAREA 0.914200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 4.655 2.735 4.945 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 0.663600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 7.200 3.415 ;
+        RECT 0.155 3.215 7.045 3.245 ;
+        RECT 0.155 3.090 4.465 3.215 ;
+        RECT 5.135 3.090 7.045 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
+      LAYER mcon ;
+        RECT 4.715 3.245 4.885 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
+    END
+  END VPWR
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 7.200 3.330 ;
+      LAYER li1 ;
+        RECT 4.635 2.715 4.965 3.045 ;
+        RECT 3.195 2.260 3.525 2.505 ;
+        RECT 6.075 2.260 6.405 2.505 ;
+        RECT 3.215 2.175 3.525 2.260 ;
+        RECT 6.095 2.175 6.405 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 4.235 1.155 4.405 1.760 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 4.655 0.655 4.965 0.750 ;
+        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 4.715 0.240 4.885 0.420 ;
+        RECT 0.155 0.085 7.045 0.240 ;
+        RECT 0.000 -0.085 7.200 0.085 ;
+      LAYER mcon ;
+        RECT 4.715 2.795 4.885 2.965 ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 6.155 2.255 6.325 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 4.715 -0.085 4.885 0.085 ;
+  END
+END ASYNC2
+END LIBRARY
+
diff --git a/cells/mag/ASYNC2.mag b/cells/mag/ASYNC2.mag
new file mode 100644
index 0000000..c9aca8d
--- /dev/null
+++ b/cells/mag/ASYNC2.mag
@@ -0,0 +1,369 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809582
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< 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 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 643 439 701 450
+rect 1219 439 1277 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 655 451 689 485
+rect 943 559 977 593
+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 649 943 683
+rect 977 649 1440 683
+rect 31 643 1409 649
+rect 31 618 893 643
+rect 1027 618 1409 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 643 435 705 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 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 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 943 48 977 84
+rect 31 17 1409 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+<< viali >>
+rect 943 649 977 683
+rect 127 559 161 593
+rect 943 559 977 593
+rect 655 451 689 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 1135 181 1169 215
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1231 100 1265 134
+rect 943 -17 977 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 943 683
+rect 977 649 1440 683
+rect 0 618 1440 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 643 439 701 451
+rect 850 454 1231 482
+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 658 212 686 439
+rect 850 414 878 454
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+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 1138 227 1166 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 658 184 1135 212
+rect 658 146 686 184
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1234 146 1262 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 130 48 158 88
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel metal1 0 618 1440 714 0 VPWR
+port 5 se
+rlabel metal1 0 618 1440 714 0 VPWR
+port 5 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 4 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 4 se
+rlabel metal1 1219 88 1277 146 0 C
+port 2 se
+rlabel metal1 835 356 893 414 0 C
+port 2 se
+rlabel metal1 1234 146 1262 439 0 C
+port 2 se
+rlabel metal1 850 414 878 454 0 C
+port 2 se
+rlabel metal1 1219 439 1277 454 0 C
+port 2 se
+rlabel metal1 850 454 1277 482 0 C
+port 2 se
+rlabel metal1 1219 482 1277 497 0 C
+port 2 se
+rlabel metal1 643 88 701 146 0 CN
+port 3 se
+rlabel metal1 658 146 686 184 0 CN
+port 3 se
+rlabel metal1 1123 169 1181 184 0 CN
+port 3 se
+rlabel metal1 658 184 1181 212 0 CN
+port 3 se
+rlabel metal1 1123 212 1181 227 0 CN
+port 3 se
+rlabel metal1 1138 227 1166 356 0 CN
+port 3 se
+rlabel metal1 1123 356 1181 414 0 CN
+port 3 se
+rlabel metal1 658 212 686 439 0 CN
+port 3 se
+rlabel metal1 643 439 701 497 0 CN
+port 3 se
+rlabel metal1 547 169 605 227 0 B
+port 1 se
+rlabel metal1 562 227 590 356 0 B
+port 1 se
+rlabel metal1 547 356 605 414 0 B
+port 1 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 274 227 302 356 0 A
+port 0 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
+rlabel locali 0 -17 1440 17 4 VGND
+port 4 se ground default abutment
+rlabel locali 31 17 1409 48 4 VGND
+port 4 se ground default abutment
+rlabel locali 0 649 1440 683 4 VPWR
+port 5 se power default abutment
+rlabel metal1 31 618 1409 649 4 VGND
+port 4 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/ASYNC2.mag.beforemagic b/cells/mag/ASYNC2.mag.beforemagic
new file mode 100644
index 0000000..f50b553
--- /dev/null
+++ b/cells/mag/ASYNC2.mag.beforemagic
@@ -0,0 +1,361 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636754524
+<< 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 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 643 439 701 450
+rect 1219 439 1277 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 655 451 689 485
+rect 943 559 977 593
+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 943 683
+rect 977 649 1440 683
+rect 0 643 1440 649
+rect 0 618 893 643
+rect 1027 618 1440 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 643 435 705 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 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 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 943 48 977 84
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< viali >>
+rect 943 649 977 683
+rect 127 559 161 593
+rect 943 559 977 593
+rect 655 451 689 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 1135 181 1169 215
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1231 100 1265 134
+rect 943 -17 977 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 943 683
+rect 977 649 1440 683
+rect 0 618 1440 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 643 439 701 451
+rect 850 454 1231 482
+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 658 212 686 439
+rect 850 414 878 454
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+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 1138 227 1166 356
+rect 1123 215 1181 227
+rect 1123 212 1135 215
+rect 658 184 1135 212
+rect 658 146 686 184
+rect 1123 181 1135 184
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 1234 146 1262 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 130 48 158 88
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel metal1 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 1219 88 1277 146 0 C
+port 5 se
+rlabel metal1 835 356 893 414 0 C
+port 6 se
+rlabel metal1 1234 146 1262 439 0 C
+port 7 se
+rlabel metal1 850 414 878 454 0 C
+port 8 se
+rlabel metal1 1219 439 1277 454 0 C
+port 9 se
+rlabel metal1 850 454 1277 482 0 C
+port 10 se
+rlabel metal1 1219 482 1277 497 0 C
+port 11 se
+rlabel metal1 643 88 701 146 0 CN
+port 12 se
+rlabel metal1 658 146 686 184 0 CN
+port 13 se
+rlabel metal1 1123 169 1181 184 0 CN
+port 14 se
+rlabel metal1 658 184 1181 212 0 CN
+port 15 se
+rlabel metal1 1123 212 1181 227 0 CN
+port 16 se
+rlabel metal1 1138 227 1166 356 0 CN
+port 17 se
+rlabel metal1 1123 356 1181 414 0 CN
+port 18 se
+rlabel metal1 658 212 686 439 0 CN
+port 19 se
+rlabel metal1 643 439 701 497 0 CN
+port 20 se
+rlabel metal1 547 169 605 227 0 B
+port 21 se
+rlabel metal1 562 227 590 356 0 B
+port 22 se
+rlabel metal1 547 356 605 414 0 B
+port 23 se
+rlabel metal1 259 169 317 227 0 A
+port 24 se
+rlabel metal1 274 227 302 356 0 A
+port 25 se
+rlabel metal1 259 356 317 414 0 A
+port 26 se
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/ASYNC3.lef b/cells/mag/ASYNC3.lef
new file mode 100644
index 0000000..2c12724
--- /dev/null
+++ b/cells/mag/ASYNC3.lef
@@ -0,0 +1,184 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO ASYNC3
+  CLASS CORE ;
+  FOREIGN ASYNC3 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+        RECT 1.370 0.655 1.510 0.845 ;
+        RECT 3.215 0.655 3.505 0.730 ;
+        RECT 1.370 0.515 3.505 0.655 ;
+        RECT 3.215 0.440 3.505 0.515 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.060 3.025 1.135 ;
+        RECT 8.495 1.060 8.785 1.135 ;
+        RECT 2.735 0.920 8.785 1.060 ;
+        RECT 2.735 0.845 3.025 0.920 ;
+        RECT 8.495 0.845 8.785 0.920 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 10.415 2.195 10.705 2.485 ;
+        RECT 10.490 0.730 10.630 2.195 ;
+        RECT 7.055 0.655 7.345 0.730 ;
+        RECT 10.415 0.655 10.705 0.730 ;
+        RECT 7.055 0.515 10.705 0.655 ;
+        RECT 7.055 0.440 7.345 0.515 ;
+        RECT 10.415 0.440 10.705 0.515 ;
+    END
+  END C
+  PIN CN
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.661650 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.775 1.995 2.065 2.070 ;
+        RECT 9.935 1.995 10.225 2.070 ;
+        RECT 1.775 1.855 10.225 1.995 ;
+        RECT 1.775 1.780 2.065 1.855 ;
+        RECT 9.935 1.780 10.225 1.855 ;
+        RECT 10.010 1.135 10.150 1.780 ;
+        RECT 9.935 0.845 10.225 1.135 ;
+    END
+  END CN
+  PIN VGND
+    ANTENNADIFFAREA 0.914200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 8.975 2.735 9.265 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 1.747200 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 11.520 3.415 ;
+        RECT 0.155 3.090 11.365 3.245 ;
+        RECT 4.635 2.715 4.965 3.090 ;
+        RECT 8.955 2.715 9.285 3.090 ;
+      LAYER mcon ;
+        RECT 4.715 3.245 4.885 3.415 ;
+        RECT 9.035 2.795 9.205 2.965 ;
+    END
+  END VPWR
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 11.520 3.330 ;
+      LAYER li1 ;
+        RECT 3.675 2.580 4.005 2.910 ;
+        RECT 6.315 2.580 6.645 2.910 ;
+        RECT 0.795 2.260 1.125 2.505 ;
+        RECT 0.795 2.175 1.105 2.260 ;
+        RECT 1.755 2.175 2.085 2.505 ;
+        RECT 7.515 2.260 7.845 2.505 ;
+        RECT 10.395 2.260 10.725 2.505 ;
+        RECT 7.535 2.175 7.845 2.260 ;
+        RECT 10.415 2.175 10.725 2.260 ;
+        RECT 1.275 2.005 1.585 2.090 ;
+        RECT 1.275 1.760 1.605 2.005 ;
+        RECT 1.355 1.155 1.525 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 1.835 0.750 2.005 2.175 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 7.035 1.760 7.365 2.090 ;
+        RECT 8.475 1.760 8.805 2.090 ;
+        RECT 9.915 1.760 10.245 2.090 ;
+        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 4.235 1.210 4.405 1.760 ;
+        RECT 3.275 1.155 4.405 1.210 ;
+        RECT 7.115 1.155 7.285 1.760 ;
+        RECT 2.715 0.825 3.045 1.155 ;
+        RECT 3.275 1.040 4.485 1.155 ;
+        RECT 0.795 0.655 1.105 0.750 ;
+        RECT 0.795 0.420 1.125 0.655 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.275 0.500 3.445 1.040 ;
+        RECT 4.155 0.920 4.485 1.040 ;
+        RECT 7.035 0.920 7.365 1.155 ;
+        RECT 4.175 0.825 4.465 0.920 ;
+        RECT 7.035 0.825 7.345 0.920 ;
+        RECT 3.675 0.420 4.005 0.750 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 6.315 0.420 6.645 0.750 ;
+        RECT 7.115 0.500 7.285 0.825 ;
+        RECT 7.595 0.750 7.765 1.615 ;
+        RECT 8.555 1.155 8.725 1.760 ;
+        RECT 8.475 0.920 8.805 1.155 ;
+        RECT 8.475 0.825 8.785 0.920 ;
+        RECT 9.915 0.825 10.245 1.155 ;
+        RECT 7.515 0.420 7.845 0.750 ;
+        RECT 8.955 0.420 9.285 0.750 ;
+        RECT 10.415 0.655 10.725 0.750 ;
+        RECT 10.395 0.420 10.725 0.655 ;
+        RECT 4.715 0.240 4.885 0.420 ;
+        RECT 9.035 0.240 9.205 0.420 ;
+        RECT 0.155 0.085 11.365 0.240 ;
+        RECT 0.000 -0.085 11.520 0.085 ;
+      LAYER mcon ;
+        RECT 3.755 2.660 3.925 2.830 ;
+        RECT 6.395 2.660 6.565 2.830 ;
+        RECT 0.875 2.255 1.045 2.425 ;
+        RECT 7.595 2.255 7.765 2.425 ;
+        RECT 10.475 2.255 10.645 2.425 ;
+        RECT 1.835 1.840 2.005 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 9.995 1.840 10.165 2.010 ;
+        RECT 7.595 1.445 7.765 1.615 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 3.755 0.500 3.925 0.670 ;
+        RECT 6.395 0.500 6.565 0.670 ;
+        RECT 8.555 0.905 8.725 1.075 ;
+        RECT 9.995 0.905 10.165 1.075 ;
+        RECT 10.475 0.500 10.645 0.670 ;
+        RECT 9.035 -0.085 9.205 0.085 ;
+      LAYER met1 ;
+        RECT 3.695 2.815 3.985 2.890 ;
+        RECT 6.335 2.815 6.625 2.890 ;
+        RECT 3.695 2.675 6.625 2.815 ;
+        RECT 3.695 2.600 3.985 2.675 ;
+        RECT 6.335 2.600 6.625 2.675 ;
+        RECT 0.815 2.410 1.105 2.485 ;
+        RECT 7.535 2.410 7.825 2.485 ;
+        RECT 0.815 2.270 7.825 2.410 ;
+        RECT 0.815 2.195 1.105 2.270 ;
+        RECT 7.535 2.195 7.825 2.270 ;
+        RECT 7.535 1.600 7.825 1.675 ;
+        RECT 0.890 1.460 7.825 1.600 ;
+        RECT 0.890 0.730 1.030 1.460 ;
+        RECT 7.535 1.385 7.825 1.460 ;
+        RECT 0.815 0.440 1.105 0.730 ;
+        RECT 3.695 0.655 3.985 0.730 ;
+        RECT 6.335 0.655 6.625 0.730 ;
+        RECT 3.695 0.515 6.625 0.655 ;
+        RECT 3.695 0.440 3.985 0.515 ;
+        RECT 6.335 0.440 6.625 0.515 ;
+  END
+END ASYNC3
+END LIBRARY
+
diff --git a/cells/mag/ASYNC3.mag b/cells/mag/ASYNC3.mag
new file mode 100644
index 0000000..eb8995c
--- /dev/null
+++ b/cells/mag/ASYNC3.mag
@@ -0,0 +1,556 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809583
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 2304 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1267 134 1325 146
+rect 977 100 1037 132
+rect 879 48 1037 100
+rect 1267 100 1279 134
+rect 1313 132 1325 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1313 100 1425 132
+rect 1267 48 1425 100
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 566 849 618
+rect 591 532 751 566
+rect 785 532 849 566
+rect 591 450 849 532
+rect 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
+rect 1267 566 1425 618
+rect 1267 532 1279 566
+rect 1313 532 1425 566
+rect 1267 450 1425 532
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 163 439 221 450
+rect 355 439 413 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 943 100 977 134
+rect 1279 100 1313 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 367 451 401 485
+rect 751 532 785 566
+rect 943 559 977 593
+rect 1279 532 1313 566
+rect 1519 451 1553 485
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 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 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 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 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 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+<< locali >>
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 31 618 2273 649
+rect 927 593 993 618
+rect 735 566 801 582
+rect 735 532 751 566
+rect 785 532 801 566
+rect 927 559 943 593
+rect 977 559 993 593
+rect 1791 593 1857 618
+rect 927 543 993 559
+rect 1263 566 1329 582
+rect 735 516 801 532
+rect 1263 532 1279 566
+rect 1313 532 1329 566
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 1263 516 1329 532
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 351 485 417 501
+rect 209 451 221 452
+rect 159 435 221 451
+rect 351 451 367 485
+rect 401 451 417 485
+rect 1503 485 1569 501
+rect 1503 452 1519 485
+rect 351 435 417 451
+rect 1507 451 1519 452
+rect 1553 451 1569 485
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 1507 435 1569 451
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+rect 255 402 317 418
+rect 255 368 271 402
+rect 305 401 317 402
+rect 367 402 401 435
+rect 305 368 321 401
+rect 255 352 321 368
+rect 271 231 305 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 367 150 401 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 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 559 231 593 352
+rect 847 242 881 352
+rect 655 231 881 242
+rect 1423 231 1457 352
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 655 215 897 231
+rect 655 208 847 215
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 351 134 417 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 100 367 134
+rect 401 100 417 134
+rect 655 134 689 208
+rect 831 184 847 208
+rect 835 181 847 184
+rect 881 184 897 215
+rect 1407 215 1473 231
+rect 881 181 893 184
+rect 835 165 893 181
+rect 1407 181 1423 215
+rect 1457 184 1473 215
+rect 1457 181 1469 184
+rect 1407 165 1469 181
+rect 735 134 801 150
+rect 735 100 751 134
+rect 785 100 801 134
+rect 351 84 417 100
+rect 735 84 801 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1263 134 1329 150
+rect 1263 100 1279 134
+rect 1313 100 1329 134
+rect 1423 134 1457 165
+rect 1519 150 1553 289
+rect 1711 231 1745 352
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1263 84 1329 100
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 2083 134 2145 150
+rect 2083 131 2095 134
+rect 1791 84 1857 100
+rect 2079 100 2095 131
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 943 48 977 84
+rect 1807 48 1841 84
+rect 31 17 2273 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+<< viali >>
+rect 943 649 977 683
+rect 751 532 785 566
+rect 1279 532 1313 566
+rect 1807 559 1841 593
+rect 175 451 209 485
+rect 1519 451 1553 485
+rect 2095 451 2129 485
+rect 367 368 401 402
+rect 271 181 305 215
+rect 1999 368 2033 402
+rect 1519 289 1553 323
+rect 559 181 593 215
+rect 175 100 209 134
+rect 655 100 689 134
+rect 751 100 785 134
+rect 1279 100 1313 134
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 1423 100 1457 134
+rect 2095 100 2129 134
+rect 1807 -17 1841 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 1795 593 1853 618
+rect 739 566 797 578
+rect 739 532 751 566
+rect 785 563 797 566
+rect 1267 566 1325 578
+rect 1267 563 1279 566
+rect 785 535 1279 563
+rect 785 532 797 535
+rect 739 520 797 532
+rect 1267 532 1279 535
+rect 1313 532 1325 566
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 1267 520 1325 532
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 1507 485 1565 497
+rect 1507 482 1519 485
+rect 209 454 1519 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 1507 451 1519 454
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 355 402 413 414
+rect 355 368 367 402
+rect 401 399 413 402
+rect 1987 402 2045 414
+rect 1987 399 1999 402
+rect 401 371 1999 399
+rect 401 368 413 371
+rect 355 356 413 368
+rect 1987 368 1999 371
+rect 2033 368 2045 402
+rect 1987 356 2045 368
+rect 1507 323 1565 335
+rect 1507 320 1519 323
+rect 178 292 1519 320
+rect 178 146 206 292
+rect 1507 289 1519 292
+rect 1553 289 1565 323
+rect 1507 277 1565 289
+rect 2002 227 2030 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 212 605 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 593 184 1711 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 1699 181 1711 184
+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 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 274 131 302 169
+rect 2098 146 2126 439
+rect 643 134 701 146
+rect 643 131 655 134
+rect 274 103 655 131
+rect 163 88 221 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1267 134 1325 146
+rect 1267 131 1279 134
+rect 785 103 1279 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1267 100 1279 103
+rect 1313 100 1325 134
+rect 1267 88 1325 100
+rect 1411 134 1469 146
+rect 1411 100 1423 134
+rect 1457 131 1469 134
+rect 2083 134 2141 146
+rect 2083 131 2095 134
+rect 1457 103 2095 131
+rect 1457 100 1469 103
+rect 1411 88 1469 100
+rect 2083 100 2095 103
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel metal1 0 618 2304 714 0 VPWR
+port 5 se
+rlabel metal1 0 618 2304 714 0 VPWR
+port 5 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 4 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 4 se
+rlabel metal1 1987 169 2045 227 0 CN
+port 3 se
+rlabel metal1 2002 227 2030 356 0 CN
+port 3 se
+rlabel metal1 355 356 413 371 0 CN
+port 3 se
+rlabel metal1 1987 356 2045 371 0 CN
+port 3 se
+rlabel metal1 355 371 2045 399 0 CN
+port 3 se
+rlabel metal1 355 399 413 414 0 CN
+port 3 se
+rlabel metal1 1987 399 2045 414 0 CN
+port 3 se
+rlabel metal1 1411 88 1469 103 0 C
+port 2 se
+rlabel metal1 2083 88 2141 103 0 C
+port 2 se
+rlabel metal1 1411 103 2141 131 0 C
+port 2 se
+rlabel metal1 1411 131 1469 146 0 C
+port 2 se
+rlabel metal1 2083 131 2141 146 0 C
+port 2 se
+rlabel metal1 2098 146 2126 439 0 C
+port 2 se
+rlabel metal1 2083 439 2141 497 0 C
+port 2 se
+rlabel metal1 643 88 701 103 0 A
+port 0 se
+rlabel metal1 274 103 701 131 0 A
+port 0 se
+rlabel metal1 643 131 701 146 0 A
+port 0 se
+rlabel metal1 274 131 302 169 0 A
+port 0 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 547 169 605 184 0 B
+port 1 se
+rlabel metal1 1699 169 1757 184 0 B
+port 1 se
+rlabel metal1 547 184 1757 212 0 B
+port 1 se
+rlabel metal1 547 212 605 227 0 B
+port 1 se
+rlabel metal1 1699 212 1757 227 0 B
+port 1 se
+rlabel locali 0 -17 2304 17 4 VGND
+port 4 se ground default abutment
+rlabel locali 31 17 2273 48 4 VGND
+port 4 se ground default abutment
+rlabel locali 0 649 2304 683 4 VPWR
+port 5 se power default abutment
+rlabel locali 31 618 2273 649 4 VGND
+port 4 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/ASYNC3.mag.beforemagic b/cells/mag/ASYNC3.mag.beforemagic
new file mode 100644
index 0000000..d2399c8
--- /dev/null
+++ b/cells/mag/ASYNC3.mag.beforemagic
@@ -0,0 +1,548 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636755469
+<< nwell >>
+rect 0 358 2304 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+<< ndiff >>
+rect 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1267 134 1325 146
+rect 977 100 1037 132
+rect 879 48 1037 100
+rect 1267 100 1279 134
+rect 1313 132 1325 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1313 100 1425 132
+rect 1267 48 1425 100
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 175 485
+rect 209 451 273 485
+rect 115 450 273 451
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 566 849 618
+rect 591 532 751 566
+rect 785 532 849 566
+rect 591 450 849 532
+rect 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
+rect 1267 566 1425 618
+rect 1267 532 1279 566
+rect 1313 532 1425 566
+rect 1267 450 1425 532
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 163 439 221 450
+rect 355 439 413 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 943 100 977 134
+rect 1279 100 1313 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 367 451 401 485
+rect 751 532 785 566
+rect 943 559 977 593
+rect 1279 532 1313 566
+rect 1519 451 1553 485
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 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 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 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 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 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+<< locali >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 927 593 993 618
+rect 735 566 801 582
+rect 735 532 751 566
+rect 785 532 801 566
+rect 927 559 943 593
+rect 977 559 993 593
+rect 1791 593 1857 618
+rect 927 543 993 559
+rect 1263 566 1329 582
+rect 735 516 801 532
+rect 1263 532 1279 566
+rect 1313 532 1329 566
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 1263 516 1329 532
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 351 485 417 501
+rect 209 451 221 452
+rect 159 435 221 451
+rect 351 451 367 485
+rect 401 451 417 485
+rect 1503 485 1569 501
+rect 1503 452 1519 485
+rect 351 435 417 451
+rect 1507 451 1519 452
+rect 1553 451 1569 485
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 1507 435 1569 451
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+rect 255 402 317 418
+rect 255 368 271 402
+rect 305 401 317 402
+rect 367 402 401 435
+rect 305 368 321 401
+rect 255 352 321 368
+rect 271 231 305 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 367 150 401 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 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 559 231 593 352
+rect 847 242 881 352
+rect 655 231 881 242
+rect 1423 231 1457 352
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 655 215 897 231
+rect 655 208 847 215
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 351 134 417 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 100 367 134
+rect 401 100 417 134
+rect 655 134 689 208
+rect 831 184 847 208
+rect 835 181 847 184
+rect 881 184 897 215
+rect 1407 215 1473 231
+rect 881 181 893 184
+rect 835 165 893 181
+rect 1407 181 1423 215
+rect 1457 184 1473 215
+rect 1457 181 1469 184
+rect 1407 165 1469 181
+rect 735 134 801 150
+rect 735 100 751 134
+rect 785 100 801 134
+rect 351 84 417 100
+rect 735 84 801 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1263 134 1329 150
+rect 1263 100 1279 134
+rect 1313 100 1329 134
+rect 1423 134 1457 165
+rect 1519 150 1553 289
+rect 1711 231 1745 352
+rect 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1263 84 1329 100
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 2083 134 2145 150
+rect 2083 131 2095 134
+rect 1791 84 1857 100
+rect 2079 100 2095 131
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 943 48 977 84
+rect 1807 48 1841 84
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< viali >>
+rect 943 649 977 683
+rect 751 532 785 566
+rect 1279 532 1313 566
+rect 1807 559 1841 593
+rect 175 451 209 485
+rect 1519 451 1553 485
+rect 2095 451 2129 485
+rect 367 368 401 402
+rect 271 181 305 215
+rect 1999 368 2033 402
+rect 1519 289 1553 323
+rect 559 181 593 215
+rect 175 100 209 134
+rect 655 100 689 134
+rect 751 100 785 134
+rect 1279 100 1313 134
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 1423 100 1457 134
+rect 2095 100 2129 134
+rect 1807 -17 1841 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 1795 593 1853 618
+rect 739 566 797 578
+rect 739 532 751 566
+rect 785 563 797 566
+rect 1267 566 1325 578
+rect 1267 563 1279 566
+rect 785 535 1279 563
+rect 785 532 797 535
+rect 739 520 797 532
+rect 1267 532 1279 535
+rect 1313 532 1325 566
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 1267 520 1325 532
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 1507 485 1565 497
+rect 1507 482 1519 485
+rect 209 454 1519 482
+rect 209 451 221 454
+rect 163 439 221 451
+rect 1507 451 1519 454
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 355 402 413 414
+rect 355 368 367 402
+rect 401 399 413 402
+rect 1987 402 2045 414
+rect 1987 399 1999 402
+rect 401 371 1999 399
+rect 401 368 413 371
+rect 355 356 413 368
+rect 1987 368 1999 371
+rect 2033 368 2045 402
+rect 1987 356 2045 368
+rect 1507 323 1565 335
+rect 1507 320 1519 323
+rect 178 292 1519 320
+rect 178 146 206 292
+rect 1507 289 1519 292
+rect 1553 289 1565 323
+rect 1507 277 1565 289
+rect 2002 227 2030 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 212 605 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 593 184 1711 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 1699 181 1711 184
+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 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 274 131 302 169
+rect 2098 146 2126 439
+rect 643 134 701 146
+rect 643 131 655 134
+rect 274 103 655 131
+rect 163 88 221 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1267 134 1325 146
+rect 1267 131 1279 134
+rect 785 103 1279 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1267 100 1279 103
+rect 1313 100 1325 134
+rect 1267 88 1325 100
+rect 1411 134 1469 146
+rect 1411 100 1423 134
+rect 1457 131 1469 134
+rect 2083 134 2141 146
+rect 2083 131 2095 134
+rect 1457 103 2095 131
+rect 1457 100 1469 103
+rect 1411 88 1469 100
+rect 2083 100 2095 103
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel locali 0 618 2304 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2304 714 0 VDD
+port 2 se
+rlabel locali 0 -48 2304 48 0 GND
+port 3 se
+rlabel metal1 0 -48 2304 48 0 GND
+port 4 se
+rlabel metal1 1987 169 2045 227 0 CN
+port 5 se
+rlabel metal1 2002 227 2030 356 0 CN
+port 6 se
+rlabel metal1 355 356 413 371 0 CN
+port 7 se
+rlabel metal1 1987 356 2045 371 0 CN
+port 8 se
+rlabel metal1 355 371 2045 399 0 CN
+port 9 se
+rlabel metal1 355 399 413 414 0 CN
+port 10 se
+rlabel metal1 1987 399 2045 414 0 CN
+port 11 se
+rlabel metal1 1411 88 1469 103 0 C
+port 12 se
+rlabel metal1 2083 88 2141 103 0 C
+port 13 se
+rlabel metal1 1411 103 2141 131 0 C
+port 14 se
+rlabel metal1 1411 131 1469 146 0 C
+port 15 se
+rlabel metal1 2083 131 2141 146 0 C
+port 16 se
+rlabel metal1 2098 146 2126 439 0 C
+port 17 se
+rlabel metal1 2083 439 2141 497 0 C
+port 18 se
+rlabel metal1 643 88 701 103 0 A
+port 19 se
+rlabel metal1 274 103 701 131 0 A
+port 20 se
+rlabel metal1 643 131 701 146 0 A
+port 21 se
+rlabel metal1 274 131 302 169 0 A
+port 22 se
+rlabel metal1 259 169 317 227 0 A
+port 23 se
+rlabel metal1 547 169 605 184 0 B
+port 24 se
+rlabel metal1 1699 169 1757 184 0 B
+port 25 se
+rlabel metal1 547 184 1757 212 0 B
+port 26 se
+rlabel metal1 547 212 605 227 0 B
+port 27 se
+rlabel metal1 1699 212 1757 227 0 B
+port 28 se
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/BUFX2.lef b/cells/mag/BUFX2.lef
index f8c0792..1a130ec 100644
--- a/cells/mag/BUFX2.lef
+++ b/cells/mag/BUFX2.lef
@@ -13,37 +13,23 @@
     ANTENNAGATEAREA 0.189000 ;
     PORT
       LAYER met1 ;
+        RECT 1.295 1.385 1.585 1.675 ;
+        RECT 1.370 1.135 1.510 1.385 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 4.165 0.240 ;
-        RECT 0.000 -0.085 4.320 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -52,18 +38,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 4.320 3.415 ;
         RECT 0.155 3.090 4.165 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -74,34 +52,36 @@
         RECT 3.290 0.730 3.430 2.195 ;
         RECT 3.215 0.440 3.505 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 3.195 2.175 3.525 2.505 ;
-      LAYER mcon ;
-        RECT 3.275 2.255 3.445 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 4.320 3.330 ;
       LAYER li1 ;
         RECT 0.555 2.175 0.885 2.505 ;
+        RECT 3.195 2.260 3.525 2.505 ;
+        RECT 3.215 2.175 3.525 2.260 ;
         RECT 1.275 1.760 1.605 2.090 ;
-        RECT 2.715 2.005 3.025 2.090 ;
-        RECT 2.715 1.760 3.045 2.005 ;
-        RECT 1.355 1.155 1.525 1.760 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 1.355 1.445 1.525 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
         RECT 2.715 0.920 3.045 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 2.715 0.825 3.025 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
         RECT 3.195 0.420 3.525 0.750 ;
+        RECT 0.155 0.085 4.165 0.240 ;
+        RECT 0.000 -0.085 4.320 0.085 ;
       LAYER mcon ;
         RECT 0.635 2.255 0.805 2.425 ;
+        RECT 3.275 2.255 3.445 2.425 ;
         RECT 2.795 1.840 2.965 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
         RECT 3.275 0.500 3.445 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
       LAYER met1 ;
         RECT 0.575 2.195 0.865 2.485 ;
         RECT 0.650 1.995 0.790 2.195 ;
diff --git a/cells/mag/BUFX2.mag b/cells/mag/BUFX2.mag
index 03c98bc..b5378da 100644
--- a/cells/mag/BUFX2.mag
+++ b/cells/mag/BUFX2.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953860
+timestamp 1636809584
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -16,14 +16,16 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
 rect 591 100 655 132
 rect 689 132 701 134
 rect 689 100 749 132
@@ -33,10 +35,10 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 749 618
 rect 591 451 655 485
 rect 689 451 749 485
@@ -45,11 +47,11 @@
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 655 100 689 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -82,44 +84,37 @@
 rect 271 181 305 215
 rect 559 181 593 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 864 683
+rect 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 639 452 655 485
+rect 111 435 177 451
+rect 643 451 655 452
 rect 689 451 705 485
-rect 639 435 705 451
+rect 643 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 402 609 418
 rect 543 368 559 402
-rect 593 401 605 402
-rect 593 368 609 401
+rect 593 368 609 402
 rect 543 352 609 368
-rect 271 231 305 352
+rect 271 323 305 352
 rect 255 215 321 231
 rect 255 181 271 215
-rect 305 181 321 215
-rect 255 165 321 181
+rect 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 rect 543 181 559 215
 rect 593 184 609 215
 rect 593 181 605 184
@@ -127,71 +122,40 @@
 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 639 134 705 150
 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
+rect 0 -17 367 17
+rect 401 -17 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 367 649 401 683
+rect 367 559 401 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 559 368 593 402
+rect 271 289 305 323
 rect 271 181 305 215
 rect 559 181 593 215
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 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
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 451 173 485
@@ -208,6 +172,11 @@
 rect 547 368 559 371
 rect 593 368 605 402
 rect 547 356 605 368
+rect 259 323 317 335
+rect 259 289 271 323
+rect 305 289 317 323
+rect 259 277 317 289
+rect 274 227 302 277
 rect 562 227 590 356
 rect 259 215 317 227
 rect 259 181 271 215
@@ -221,26 +190,19 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
 rect 643 100 655 134
 rect 689 100 701 134
 rect 643 88 701 100
-rect 355 48 413 68
+rect 370 48 398 88
 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 -17 367 17
+rect 401 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel metal1 0 618 864 714 0 VPWR
@@ -259,6 +221,10 @@
 port 3 se
 rlabel metal1 259 169 317 227 0 A
 port 0 se
+rlabel metal1 274 227 302 277 0 A
+port 0 se
+rlabel metal1 259 277 317 335 0 A
+port 0 se
 rlabel locali 0 -17 864 17 4 VGND
 port 1 se ground default abutment
 rlabel locali 31 17 833 48 4 VGND
diff --git a/cells/mag/BUFX2.mag.beforemagic b/cells/mag/BUFX2.mag.beforemagic
index f30402f..f553754 100644
--- a/cells/mag/BUFX2.mag.beforemagic
+++ b/cells/mag/BUFX2.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752844
+timestamp 1636755505
 << nwell >>
 rect 0 358 864 666
 << nmos >>
@@ -14,14 +14,16 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
 rect 591 100 655 132
 rect 689 132 701 134
 rect 689 100 749 132
@@ -31,10 +33,10 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 749 618
 rect 591 451 655 485
 rect 689 451 749 485
@@ -43,11 +45,11 @@
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 655 100 689 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -81,44 +83,37 @@
 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 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 639 452 655 485
+rect 111 435 177 451
+rect 643 451 655 452
 rect 689 451 705 485
-rect 639 435 705 451
+rect 643 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 402 609 418
 rect 543 368 559 402
-rect 593 401 605 402
-rect 593 368 609 401
+rect 593 368 609 402
 rect 543 352 609 368
-rect 271 231 305 352
+rect 271 323 305 352
 rect 255 215 321 231
 rect 255 181 271 215
-rect 305 181 321 215
-rect 255 165 321 181
+rect 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 rect 543 181 559 215
 rect 593 184 609 215
 rect 593 181 605 184
@@ -126,72 +121,41 @@
 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 639 134 705 150
 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 -17 367 17
+rect 401 -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 367 649 401 683
+rect 367 559 401 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 559 368 593 402
+rect 271 289 305 323
 rect 271 181 305 215
 rect 559 181 593 215
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 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
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 451 173 485
@@ -208,6 +172,11 @@
 rect 547 368 559 371
 rect 593 368 605 402
 rect 547 356 605 368
+rect 259 323 317 335
+rect 259 289 271 323
+rect 305 289 317 323
+rect 259 277 317 289
+rect 274 227 302 277
 rect 562 227 590 356
 rect 259 215 317 227
 rect 259 181 271 215
@@ -221,26 +190,19 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
 rect 643 100 655 134
 rect 689 100 701 134
 rect 643 88 701 100
-rect 355 48 413 68
+rect 370 48 398 88
 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 -17 367 17
+rect 401 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel locali 0 618 864 714 0 VDD
@@ -259,6 +221,10 @@
 port 7 se
 rlabel metal1 259 169 317 227 0 A
 port 8 se
+rlabel metal1 274 227 302 277 0 A
+port 9 se
+rlabel metal1 259 277 317 335 0 A
+port 10 se
 << properties >>
 string FIXED_BBOX 0 0 864 666
 << end >>
diff --git a/cells/mag/BUFX4.lef b/cells/mag/BUFX4.lef
index 6958308..fffe34f 100644
--- a/cells/mag/BUFX4.lef
+++ b/cells/mag/BUFX4.lef
@@ -13,137 +13,98 @@
     ANTENNAGATEAREA 0.189000 ;
     PORT
       LAYER met1 ;
-        RECT 1.295 1.780 1.585 2.070 ;
-        RECT 1.370 1.540 1.510 1.780 ;
-        RECT 1.295 1.250 1.585 1.540 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 1.295 0.845 1.585 1.135 ;
     END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.873600 ;
+    ANTENNADIFFAREA 0.914200 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 4.655 0.440 4.945 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 4.730 0.240 4.870 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 4.635 0.240 4.965 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
-        RECT 4.655 2.760 4.945 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 4.655 2.735 4.945 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 1.747200 ;
+    ANTENNADIFFAREA 1.083600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
-        RECT 0.155 3.090 5.605 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 4.635 2.740 4.965 3.090 ;
+        RECT 0.155 3.215 5.605 3.245 ;
+        RECT 0.155 3.090 4.465 3.215 ;
+        RECT 5.135 3.090 5.605 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
-        RECT 4.715 2.820 4.885 2.990 ;
+        RECT 4.715 3.245 4.885 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.661650 ;
     PORT
       LAYER met1 ;
-        RECT 3.695 2.410 3.985 2.485 ;
-        RECT 3.695 2.270 4.870 2.410 ;
-        RECT 3.695 2.195 3.985 2.270 ;
-        RECT 3.695 0.655 3.985 0.730 ;
-        RECT 4.730 0.655 4.870 2.270 ;
-        RECT 3.695 0.515 4.870 0.655 ;
-        RECT 3.695 0.440 3.985 0.515 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.675 0.420 4.005 0.750 ;
-      LAYER mcon ;
-        RECT 3.755 0.500 3.925 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.675 2.175 4.005 2.505 ;
-      LAYER mcon ;
-        RECT 3.755 2.255 3.925 2.425 ;
+        RECT 3.215 0.440 3.505 0.730 ;
     END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 5.760 3.330 ;
       LAYER li1 ;
+        RECT 4.635 2.715 4.965 3.045 ;
         RECT 0.555 2.175 0.885 2.505 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-        RECT 4.175 2.005 4.485 2.090 ;
-        RECT 4.155 1.760 4.485 2.005 ;
-        RECT 1.355 1.155 1.525 1.480 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 3.195 2.175 3.525 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 2.005 3.025 2.090 ;
+        RECT 2.715 1.760 3.045 2.005 ;
+        RECT 1.355 1.155 1.525 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
+        RECT 3.275 0.750 3.445 2.175 ;
+        RECT 4.155 1.760 4.485 2.090 ;
         RECT 4.155 0.920 4.485 1.155 ;
-        RECT 4.175 0.825 4.485 0.920 ;
+        RECT 4.155 0.825 4.465 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
+        RECT 4.715 2.795 4.885 2.965 ;
         RECT 0.635 2.255 0.805 2.425 ;
         RECT 2.795 1.840 2.965 2.010 ;
-        RECT 4.235 1.840 4.405 2.010 ;
-        RECT 1.355 1.310 1.525 1.480 ;
+        RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 1.840 4.405 2.010 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 4.715 -0.085 4.885 0.085 ;
       LAYER met1 ;
         RECT 0.575 2.195 0.865 2.485 ;
-        RECT 0.650 1.060 0.790 2.195 ;
-        RECT 2.735 1.780 3.025 2.070 ;
-        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 0.650 1.995 0.790 2.195 ;
+        RECT 2.735 1.995 3.025 2.070 ;
+        RECT 4.175 1.995 4.465 2.070 ;
+        RECT 0.650 1.855 4.465 1.995 ;
+        RECT 0.650 0.730 0.790 1.855 ;
+        RECT 2.735 1.780 3.025 1.855 ;
+        RECT 4.175 1.780 4.465 1.855 ;
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 4.250 1.135 4.390 1.780 ;
-        RECT 2.735 1.060 3.025 1.135 ;
-        RECT 4.175 1.060 4.465 1.135 ;
-        RECT 0.650 0.920 4.465 1.060 ;
-        RECT 0.650 0.730 0.790 0.920 ;
-        RECT 2.735 0.845 3.025 0.920 ;
-        RECT 4.175 0.845 4.465 0.920 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+        RECT 4.175 0.845 4.465 1.135 ;
         RECT 0.575 0.440 0.865 0.730 ;
   END
 END BUFX4
diff --git a/cells/mag/BUFX4.mag b/cells/mag/BUFX4.mag
index 6930eb9..07d0290 100644
--- a/cells/mag/BUFX4.mag
+++ b/cells/mag/BUFX4.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953861
+timestamp 1636809584
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -18,51 +18,55 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 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
+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 598 561 618
-rect 303 564 367 598
-rect 401 564 561 598
-rect 303 450 561 564
+rect 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 849 618
-rect 591 451 751 485
-rect 785 451 849 485
+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 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
 rect 115 439 173 450
-rect 739 439 797 450
+rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
-rect 751 100 785 134
-rect 943 68 977 102
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-rect 751 451 785 485
-rect 943 564 977 598
+rect 367 559 401 593
+rect 655 451 689 485
+rect 943 559 977 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -108,228 +112,158 @@
 rect 559 181 593 215
 rect 847 181 881 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 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 0 649 943 683
+rect 977 649 1152 683
+rect 31 643 1121 649
+rect 31 618 893 643
+rect 1027 618 1121 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 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 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 609 418
+rect 543 402 605 418
 rect 543 368 559 402
-rect 593 368 609 402
-rect 835 402 897 418
-rect 835 401 847 402
+rect 593 401 605 402
+rect 593 368 609 401
 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 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 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 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 655 150 689 435
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+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 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 643 134 705 150
+rect 643 131 655 134
+rect 351 84 417 100
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
 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
+rect 0 -17 943 17
+rect 977 -17 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 943 649 977 683
+rect 367 559 401 593
+rect 943 559 977 593
 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 271 181 305 215
 rect 559 181 593 215
+rect 847 368 881 402
 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
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 943 -17 977 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 649 943 683
+rect 977 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 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 130 399 158 439
 rect 547 402 605 414
-rect 547 368 559 402
-rect 593 368 605 402
-rect 547 356 605 368
+rect 547 399 559 402
+rect 130 371 559 399
+rect 130 146 158 371
+rect 547 368 559 371
+rect 593 399 605 402
 rect 835 402 893 414
-rect 835 368 847 402
+rect 835 399 847 402
+rect 593 371 847 399
+rect 593 368 605 371
+rect 547 356 605 368
+rect 835 368 847 371
 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 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 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 181 559 215
+rect 593 181 605 215
 rect 547 169 605 181
-rect 835 181 847 184
+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 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 370 48 398 88
+rect 946 48 974 88
 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 -17 943 17
+rect 977 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -340,25 +274,9 @@
 port 1 se
 rlabel metal1 0 -48 1152 48 0 VGND
 port 1 se
-rlabel metal1 739 88 797 103 0 Y
+rlabel metal1 643 88 701 146 0 Y
 port 3 se
-rlabel metal1 739 103 974 131 0 Y
-port 3 se
-rlabel metal1 739 131 797 146 0 Y
-port 3 se
-rlabel metal1 739 439 797 454 0 Y
-port 3 se
-rlabel metal1 946 131 974 454 0 Y
-port 3 se
-rlabel metal1 739 454 974 482 0 Y
-port 3 se
-rlabel metal1 739 482 797 497 0 Y
-port 3 se
-rlabel metal1 259 250 317 308 0 A
-port 0 se
-rlabel metal1 274 308 302 356 0 A
-port 0 se
-rlabel metal1 259 356 317 414 0 A
+rlabel metal1 259 169 317 227 0 A
 port 0 se
 rlabel locali 0 -17 1152 17 4 VGND
 port 1 se ground default abutment
@@ -366,7 +284,7 @@
 port 1 se ground default abutment
 rlabel locali 0 649 1152 683 4 VPWR
 port 2 se power default abutment
-rlabel locali 31 618 1121 649 4 VGND
+rlabel metal1 31 618 1121 649 4 VGND
 port 1 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/BUFX4.mag.beforemagic b/cells/mag/BUFX4.mag.beforemagic
index db22af4..edee361 100644
--- a/cells/mag/BUFX4.mag.beforemagic
+++ b/cells/mag/BUFX4.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752885
+timestamp 1636755568
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -16,51 +16,55 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 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
+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 598 561 618
-rect 303 564 367 598
-rect 401 564 561 598
-rect 303 450 561 564
+rect 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 849 618
-rect 591 451 751 485
-rect 785 451 849 485
+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 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
 rect 115 439 173 450
-rect 739 439 797 450
+rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
-rect 751 100 785 134
-rect 943 68 977 102
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-rect 751 451 785 485
-rect 943 564 977 598
+rect 367 559 401 593
+rect 655 451 689 485
+rect 943 559 977 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -107,232 +111,162 @@
 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 0 649 943 683
+rect 977 649 1152 683
+rect 0 643 1152 649
+rect 0 618 893 643
+rect 1027 618 1152 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 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 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 609 418
+rect 543 402 605 418
 rect 543 368 559 402
-rect 593 368 609 402
-rect 835 402 897 418
-rect 835 401 847 402
+rect 593 401 605 402
+rect 593 368 609 401
 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 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 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 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 655 150 689 435
+rect 831 402 897 418
+rect 831 368 847 402
+rect 881 368 897 402
+rect 831 352 897 368
+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 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 643 134 705 150
+rect 643 131 655 134
+rect 351 84 417 100
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 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 -17 943 17
+rect 977 -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 943 649 977 683
+rect 367 559 401 593
+rect 943 559 977 593
 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 271 181 305 215
 rect 559 181 593 215
+rect 847 368 881 402
 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
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 943 -17 977 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 649 943 683
+rect 977 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 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 130 399 158 439
 rect 547 402 605 414
-rect 547 368 559 402
-rect 593 368 605 402
-rect 547 356 605 368
+rect 547 399 559 402
+rect 130 371 559 399
+rect 130 146 158 371
+rect 547 368 559 371
+rect 593 399 605 402
 rect 835 402 893 414
-rect 835 368 847 402
+rect 835 399 847 402
+rect 593 371 847 399
+rect 593 368 605 371
+rect 547 356 605 368
+rect 835 368 847 371
 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 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 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 181 559 215
+rect 593 181 605 215
 rect 547 169 605 181
-rect 835 181 847 184
+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 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 370 48 398 88
+rect 946 48 974 88
 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 -17 943 17
+rect 977 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 618 1152 714 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
@@ -340,26 +274,10 @@
 port 3 se
 rlabel metal1 0 -48 1152 48 0 GND
 port 4 se
-rlabel metal1 739 88 797 103 0 Y
+rlabel metal1 643 88 701 146 0 Y
 port 5 se
-rlabel metal1 739 103 974 131 0 Y
+rlabel metal1 259 169 317 227 0 A
 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.lef b/cells/mag/CLKBUF1.lef
index 2e59128..0d5ac6a 100644
--- a/cells/mag/CLKBUF1.lef
+++ b/cells/mag/CLKBUF1.lef
@@ -19,249 +19,182 @@
         RECT 1.295 1.780 1.585 2.070 ;
         RECT 2.735 1.780 3.025 2.070 ;
         RECT 1.370 1.135 1.510 1.780 ;
-        RECT 2.810 1.540 2.950 1.780 ;
-        RECT 2.735 1.250 3.025 1.540 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.795 1.155 2.965 1.480 ;
-        RECT 2.715 0.825 3.045 1.155 ;
-      LAYER mcon ;
-        RECT 2.795 1.310 2.965 1.480 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END A
   PIN VGND
-    ANTENNADIFFAREA 2.289000 ;
+    ANTENNADIFFAREA 2.390500 ;
     PORT
       LAYER met1 ;
-        RECT 0.575 0.240 0.865 0.570 ;
-        RECT 3.215 0.240 3.505 0.570 ;
-        RECT 6.095 0.240 6.385 0.570 ;
-        RECT 8.975 0.240 9.265 0.570 ;
-        RECT 11.855 0.240 12.145 0.570 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 6.095 0.440 6.385 0.730 ;
+        RECT 8.975 0.440 9.265 0.730 ;
+        RECT 11.855 0.440 12.145 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 9.050 0.240 9.190 0.440 ;
+        RECT 11.930 0.240 12.070 0.440 ;
         RECT 0.000 -0.240 12.960 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 0.555 0.240 0.885 0.590 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 6.075 0.240 6.405 0.590 ;
-        RECT 8.955 0.240 9.285 0.590 ;
-        RECT 11.835 0.240 12.165 0.590 ;
-        RECT 0.155 0.085 12.805 0.240 ;
-        RECT 0.000 -0.085 12.960 0.085 ;
-      LAYER mcon ;
-        RECT 0.635 0.340 0.805 0.510 ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 6.155 0.340 6.325 0.510 ;
-        RECT 9.035 0.340 9.205 0.510 ;
-        RECT 11.915 0.340 12.085 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-        RECT 7.355 -0.085 7.525 0.085 ;
-        RECT 7.835 -0.085 8.005 0.085 ;
-        RECT 8.315 -0.085 8.485 0.085 ;
-        RECT 8.795 -0.085 8.965 0.085 ;
-        RECT 9.275 -0.085 9.445 0.085 ;
-        RECT 9.755 -0.085 9.925 0.085 ;
-        RECT 10.235 -0.085 10.405 0.085 ;
-        RECT 10.715 -0.085 10.885 0.085 ;
-        RECT 11.195 -0.085 11.365 0.085 ;
-        RECT 11.675 -0.085 11.845 0.085 ;
-        RECT 12.155 -0.085 12.325 0.085 ;
-        RECT 12.635 -0.085 12.805 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 12.960 3.570 ;
-        RECT 0.575 2.760 0.865 3.090 ;
-        RECT 3.215 2.760 3.505 3.090 ;
-        RECT 6.095 2.760 6.385 3.090 ;
-        RECT 8.975 2.760 9.265 3.090 ;
-        RECT 11.855 2.760 12.145 3.090 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
+        RECT 6.095 2.735 6.385 3.090 ;
+        RECT 8.975 2.735 9.265 3.090 ;
+        RECT 11.855 2.735 12.145 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 4.578000 ;
+    ANTENNADIFFAREA 3.494400 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 12.960 3.415 ;
-        RECT 0.155 3.090 12.805 3.245 ;
-        RECT 0.555 2.740 0.885 3.090 ;
-        RECT 3.195 2.740 3.525 3.090 ;
-        RECT 6.075 2.740 6.405 3.090 ;
-        RECT 8.955 2.740 9.285 3.090 ;
-        RECT 11.835 2.740 12.165 3.090 ;
+        RECT 0.155 3.215 12.805 3.245 ;
+        RECT 0.155 3.090 3.025 3.215 ;
+        RECT 3.695 3.090 12.805 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
+        RECT 6.075 2.715 6.405 3.090 ;
+        RECT 8.955 2.715 9.285 3.090 ;
+        RECT 11.835 2.715 12.165 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 7.355 3.245 7.525 3.415 ;
-        RECT 7.835 3.245 8.005 3.415 ;
-        RECT 8.315 3.245 8.485 3.415 ;
-        RECT 8.795 3.245 8.965 3.415 ;
-        RECT 9.275 3.245 9.445 3.415 ;
-        RECT 9.755 3.245 9.925 3.415 ;
-        RECT 10.235 3.245 10.405 3.415 ;
-        RECT 10.715 3.245 10.885 3.415 ;
-        RECT 11.195 3.245 11.365 3.415 ;
-        RECT 11.675 3.245 11.845 3.415 ;
-        RECT 12.155 3.245 12.325 3.415 ;
-        RECT 12.635 3.245 12.805 3.415 ;
-        RECT 0.635 2.820 0.805 2.990 ;
-        RECT 3.275 2.820 3.445 2.990 ;
-        RECT 6.155 2.820 6.325 2.990 ;
-        RECT 9.035 2.820 9.205 2.990 ;
-        RECT 11.915 2.820 12.085 2.990 ;
+        RECT 6.155 3.245 6.325 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
+        RECT 6.155 2.795 6.325 2.965 ;
+        RECT 9.035 2.795 9.205 2.965 ;
+        RECT 11.915 2.795 12.085 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.661650 ;
     PORT
       LAYER met1 ;
-        RECT 10.415 0.440 10.705 0.730 ;
+        RECT 10.415 2.195 10.705 2.485 ;
+        RECT 10.490 1.540 10.630 2.195 ;
+        RECT 10.415 1.250 10.705 1.540 ;
     END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 12.960 3.330 ;
       LAYER li1 ;
+        RECT 3.195 2.715 3.525 3.045 ;
         RECT 1.755 2.260 2.085 2.505 ;
-        RECT 4.635 2.260 4.965 2.505 ;
         RECT 1.775 2.175 2.085 2.260 ;
-        RECT 4.655 2.175 4.965 2.260 ;
-        RECT 5.675 2.090 5.845 2.830 ;
-        RECT 7.515 2.175 7.845 2.505 ;
-        RECT 8.555 2.090 8.725 2.830 ;
+        RECT 4.635 2.175 4.965 2.505 ;
+        RECT 7.515 2.260 7.845 2.505 ;
         RECT 10.395 2.260 10.725 2.505 ;
+        RECT 7.535 2.175 7.845 2.260 ;
         RECT 10.415 2.175 10.725 2.260 ;
-        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 2.005 4.465 2.090 ;
+        RECT 4.155 1.760 4.485 2.005 ;
         RECT 5.595 1.760 5.925 2.090 ;
-        RECT 7.035 2.005 7.345 2.090 ;
-        RECT 7.035 1.760 7.365 2.005 ;
+        RECT 7.035 1.760 7.365 2.090 ;
         RECT 8.475 1.760 8.805 2.090 ;
         RECT 9.915 1.760 10.245 2.090 ;
-        RECT 5.675 1.445 5.845 1.760 ;
-        RECT 8.555 1.445 8.725 1.760 ;
-        RECT 1.275 0.825 1.605 1.155 ;
-        RECT 4.155 0.920 4.485 1.155 ;
-        RECT 4.155 0.825 4.465 0.920 ;
-        RECT 5.595 0.825 5.925 1.155 ;
-        RECT 7.035 0.920 7.365 1.155 ;
-        RECT 7.035 0.825 7.345 0.920 ;
-        RECT 8.475 0.825 8.805 1.155 ;
-        RECT 9.915 0.920 10.245 1.155 ;
-        RECT 9.915 0.825 10.225 0.920 ;
-        RECT 10.475 0.750 10.645 2.175 ;
         RECT 11.355 1.760 11.685 2.090 ;
-        RECT 11.355 0.825 11.685 1.155 ;
+        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 5.675 1.155 5.845 1.760 ;
+        RECT 8.555 1.155 8.725 1.760 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 7.035 0.920 7.365 1.155 ;
+        RECT 8.475 0.920 8.805 1.155 ;
+        RECT 9.915 0.920 10.245 1.155 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 7.035 0.825 7.345 0.920 ;
+        RECT 8.475 0.825 8.785 0.920 ;
+        RECT 9.915 0.825 10.225 0.920 ;
+        RECT 10.475 0.750 10.645 1.480 ;
+        RECT 11.355 0.920 11.685 1.155 ;
+        RECT 11.355 0.825 11.665 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
         RECT 1.775 0.655 2.085 0.750 ;
         RECT 1.755 0.420 2.085 0.655 ;
-        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 4.655 0.655 4.965 0.750 ;
+        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
         RECT 7.515 0.420 7.845 0.750 ;
+        RECT 8.955 0.420 9.285 0.750 ;
         RECT 10.395 0.420 10.725 0.750 ;
+        RECT 11.835 0.420 12.165 0.750 ;
+        RECT 0.155 0.085 12.805 0.240 ;
+        RECT 0.000 -0.085 12.960 0.085 ;
       LAYER mcon ;
-        RECT 5.675 2.660 5.845 2.830 ;
+        RECT 3.275 2.795 3.445 2.965 ;
         RECT 1.835 2.255 2.005 2.425 ;
         RECT 4.715 2.255 4.885 2.425 ;
-        RECT 8.555 2.660 8.725 2.830 ;
         RECT 7.595 2.255 7.765 2.425 ;
+        RECT 10.475 2.255 10.645 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
         RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
         RECT 7.115 1.840 7.285 2.010 ;
+        RECT 8.555 1.840 8.725 2.010 ;
         RECT 9.995 1.840 10.165 2.010 ;
+        RECT 11.435 1.840 11.605 2.010 ;
+        RECT 10.475 1.310 10.645 1.480 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
-        RECT 5.675 0.905 5.845 1.075 ;
         RECT 7.115 0.905 7.285 1.075 ;
-        RECT 8.555 0.905 8.725 1.075 ;
         RECT 9.995 0.905 10.165 1.075 ;
-        RECT 11.435 1.840 11.605 2.010 ;
         RECT 11.435 0.905 11.605 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
         RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
         RECT 7.595 0.500 7.765 0.670 ;
-        RECT 10.475 0.500 10.645 0.670 ;
+        RECT 9.035 0.500 9.205 0.670 ;
+        RECT 11.915 0.500 12.085 0.670 ;
+        RECT 6.155 -0.085 6.325 0.085 ;
       LAYER met1 ;
-        RECT 5.615 2.815 5.905 2.890 ;
-        RECT 8.495 2.815 8.785 2.890 ;
-        RECT 4.250 2.675 5.905 2.815 ;
+        RECT 4.250 2.675 5.830 2.815 ;
         RECT 1.775 2.195 2.065 2.485 ;
         RECT 1.850 1.060 1.990 2.195 ;
         RECT 4.250 2.070 4.390 2.675 ;
-        RECT 5.615 2.600 5.905 2.675 ;
-        RECT 7.130 2.675 8.785 2.815 ;
         RECT 4.655 2.195 4.945 2.485 ;
         RECT 4.175 1.780 4.465 2.070 ;
-        RECT 4.730 1.995 4.870 2.195 ;
-        RECT 7.130 2.070 7.270 2.675 ;
-        RECT 8.495 2.600 8.785 2.675 ;
-        RECT 7.535 2.195 7.825 2.485 ;
-        RECT 7.055 1.995 7.345 2.070 ;
-        RECT 4.730 1.855 7.345 1.995 ;
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 4.175 1.060 4.465 1.135 ;
         RECT 1.850 0.920 4.465 1.060 ;
         RECT 1.850 0.730 1.990 0.920 ;
         RECT 4.175 0.845 4.465 0.920 ;
-        RECT 4.730 0.730 4.870 1.855 ;
-        RECT 7.055 1.780 7.345 1.855 ;
-        RECT 7.610 1.995 7.750 2.195 ;
-        RECT 9.935 1.995 10.225 2.070 ;
-        RECT 11.375 1.995 11.665 2.070 ;
-        RECT 7.610 1.855 11.665 1.995 ;
-        RECT 5.615 1.385 5.905 1.675 ;
-        RECT 5.690 1.135 5.830 1.385 ;
+        RECT 4.730 1.060 4.870 2.195 ;
+        RECT 5.690 2.070 5.830 2.675 ;
+        RECT 7.130 2.675 8.710 2.815 ;
+        RECT 7.130 2.070 7.270 2.675 ;
+        RECT 7.535 2.195 7.825 2.485 ;
+        RECT 5.615 1.780 5.905 2.070 ;
+        RECT 7.055 1.780 7.345 2.070 ;
         RECT 7.130 1.135 7.270 1.780 ;
-        RECT 5.615 0.845 5.905 1.135 ;
-        RECT 7.055 0.845 7.345 1.135 ;
-        RECT 7.610 0.730 7.750 1.855 ;
-        RECT 9.935 1.780 10.225 1.855 ;
-        RECT 11.375 1.780 11.665 1.855 ;
-        RECT 8.495 1.385 8.785 1.675 ;
-        RECT 8.570 1.135 8.710 1.385 ;
+        RECT 7.055 1.060 7.345 1.135 ;
+        RECT 4.730 0.920 7.345 1.060 ;
+        RECT 4.730 0.730 4.870 0.920 ;
+        RECT 7.055 0.845 7.345 0.920 ;
+        RECT 7.610 1.060 7.750 2.195 ;
+        RECT 8.570 2.070 8.710 2.675 ;
+        RECT 8.495 1.780 8.785 2.070 ;
+        RECT 9.935 1.780 10.225 2.070 ;
+        RECT 11.375 1.780 11.665 2.070 ;
         RECT 10.010 1.135 10.150 1.780 ;
         RECT 11.450 1.135 11.590 1.780 ;
-        RECT 8.495 0.845 8.785 1.135 ;
-        RECT 9.935 0.845 10.225 1.135 ;
-        RECT 11.375 0.845 11.665 1.135 ;
+        RECT 9.935 1.060 10.225 1.135 ;
+        RECT 11.375 1.060 11.665 1.135 ;
+        RECT 7.610 0.920 11.665 1.060 ;
+        RECT 7.610 0.730 7.750 0.920 ;
+        RECT 9.935 0.845 10.225 0.920 ;
+        RECT 11.375 0.845 11.665 0.920 ;
         RECT 1.775 0.440 2.065 0.730 ;
         RECT 4.655 0.440 4.945 0.730 ;
         RECT 7.535 0.440 7.825 0.730 ;
diff --git a/cells/mag/CLKBUF1.mag b/cells/mag/CLKBUF1.mag
index d78d118..40d2db9 100644
--- a/cells/mag/CLKBUF1.mag
+++ b/cells/mag/CLKBUF1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953862
+timestamp 1636809585
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -25,111 +25,120 @@
 rect 2001 450 2031 618
 rect 2289 450 2319 618
 << ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 367 132
 rect 401 132 413 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
-rect 1507 134 1565 146
-rect 1507 132 1519 134
+rect 1219 134 1277 146
+rect 1219 132 1231 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 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
 rect 1455 100 1519 132
 rect 1553 132 1565 134
-rect 2083 134 2141 146
-rect 2083 132 2095 134
+rect 1795 134 1853 146
+rect 1795 132 1807 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 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
 rect 2031 100 2095 132
 rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 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
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2417 100 2477 132
+rect 2319 48 2477 100
 << pdiff >>
-rect 115 598 273 618
-rect 115 564 127 598
-rect 161 564 273 598
-rect 115 450 273 564
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 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 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
 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 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
 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 2319 593 2477 618
+rect 2319 559 2383 593
+rect 2417 559 2477 593
+rect 2319 450 2477 559
 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 127 100 161 134
 rect 367 100 401 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
-rect 1231 68 1265 102
+rect 1231 100 1265 134
 rect 1519 100 1553 134
-rect 1807 68 1841 102
+rect 1807 100 1841 134
 rect 2095 100 2129 134
-rect 2383 68 2417 102
+rect 2383 100 2417 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
-rect 1231 564 1265 598
+rect 1231 559 1265 593
 rect 1519 451 1553 485
-rect 1807 564 1841 598
+rect 1807 559 1841 593
 rect 2095 451 2129 485
-rect 2383 564 2417 598
+rect 2383 559 2417 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -245,73 +254,47 @@
 rect 1999 181 2033 215
 rect 2287 181 2321 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 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 0 649 1231 683
+rect 1265 649 2592 683
+rect 31 643 2561 649
+rect 31 618 605 643
+rect 739 618 2561 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 1215 593 1281 618
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1215 543 1281 559
+rect 1791 593 1857 618
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 2367 593 2433 618
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2367 543 2433 559
 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 927 485 993 501
+rect 927 451 943 485
 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 1503 452 1519 485
+rect 927 435 993 451
+rect 1507 451 1519 452
 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 1507 435 1569 451
 rect 2083 451 2095 452
 rect 2129 451 2145 485
 rect 2083 435 2145 451
@@ -323,20 +306,20 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
-rect 831 352 897 368
+rect 881 401 893 402
 rect 1119 402 1185 418
+rect 881 368 897 401
+rect 831 352 897 368
 rect 1119 368 1135 402
 rect 1169 368 1185 402
 rect 1119 352 1185 368
-rect 1407 402 1469 418
+rect 1407 402 1473 418
 rect 1407 368 1423 402
-rect 1457 401 1469 402
-rect 1695 402 1761 418
-rect 1457 368 1473 401
+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
@@ -344,248 +327,142 @@
 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 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 559 231 593 352
+rect 1135 231 1169 352
+rect 1711 231 1745 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 593 184 609 215
 rect 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
 rect 831 181 847 215
-rect 881 184 897 215
+rect 881 181 897 215
+rect 831 165 897 181
 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 1169 184 1185 215
 rect 1407 215 1473 231
+rect 1169 181 1181 184
+rect 1119 165 1181 181
 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 1745 184 1761 215
 rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
 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 2095 150 2129 262
 rect 2271 215 2337 231
 rect 2271 181 2287 215
-rect 2321 181 2337 215
-rect 2271 165 2337 181
+rect 2321 184 2337 215
+rect 2321 181 2333 184
+rect 2271 165 2333 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
 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 111 84 177 100
 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 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
 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 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1503 134 1569 150
 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 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
 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 2367 134 2433 150
+rect 2367 100 2383 134
+rect 2417 100 2433 134
+rect 2367 84 2433 100
 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
+rect 0 -17 1231 17
+rect 1265 -17 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 1231 649 1265 683
+rect 127 559 161 593
+rect 655 559 689 593
+rect 1231 559 1265 593
+rect 1807 559 1841 593
+rect 2383 559 2417 593
 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 2095 451 2129 485
 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 559 262 593 296
-rect 1135 289 1169 323
-rect 1711 289 1745 323
+rect 2287 368 2321 402
+rect 2095 262 2129 296
 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 127 100 161 134
 rect 367 100 401 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
-rect 1231 68 1265 102
+rect 1231 100 1265 134
 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
+rect 1807 100 1841 134
+rect 2383 100 2417 134
+rect 1231 -17 1265 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 649 1231 683
+rect 1265 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 643 593 701 618
+rect 115 547 173 559
 rect 274 535 590 563
-rect 643 552 701 564
-rect 1123 566 1181 578
-rect 1123 563 1135 566
+rect 643 559 655 593
+rect 689 559 701 593
+rect 1219 593 1277 618
+rect 643 547 701 559
 rect 274 414 302 535
 rect 355 485 413 497
 rect 355 451 367 485
@@ -602,18 +479,12 @@
 rect 259 169 317 181
 rect 370 212 398 439
 rect 562 414 590 535
-rect 850 535 1135 563
+rect 850 535 1166 563
+rect 1219 559 1231 593
+rect 1265 559 1277 593
+rect 1795 593 1853 618
+rect 1219 547 1277 559
 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
@@ -626,30 +497,6 @@
 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
@@ -658,123 +505,116 @@
 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 946 212 974 439
+rect 1138 414 1166 535
+rect 1426 535 1742 563
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 2371 593 2429 618
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2371 547 2429 559
+rect 1426 414 1454 535
+rect 1507 485 1565 497
+rect 1507 451 1519 485
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1411 402 1469 414
+rect 1411 368 1423 402
 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 1411 212 1423 215
+rect 946 184 1423 212
+rect 946 146 974 184
+rect 1411 181 1423 184
 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 1522 212 1550 439
+rect 1714 414 1742 535
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1987 402 2045 414
+rect 1987 368 1999 402
+rect 2033 368 2045 402
 rect 1987 356 2045 368
-rect 2275 368 2287 371
+rect 2002 227 2030 356
+rect 2098 308 2126 439
+rect 2275 402 2333 414
+rect 2275 368 2287 402
 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 2083 296 2141 308
+rect 2083 262 2095 296
+rect 2129 262 2141 296
+rect 2083 250 2141 262
 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 1987 212 1999 215
+rect 1522 184 1999 212
+rect 1522 146 1550 184
+rect 1987 181 1999 184
+rect 2033 212 2045 215
 rect 2275 215 2333 227
-rect 2275 181 2287 215
+rect 2275 212 2287 215
+rect 2033 184 2287 212
+rect 2033 181 2045 184
+rect 1987 169 2045 181
+rect 2275 181 2287 184
 rect 2321 181 2333 215
 rect 2275 169 2333 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 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 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1507 134 1565 146
 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 1795 134 1853 146
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 2371 134 2429 146
+rect 2371 100 2383 134
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 130 48 158 88
+rect 658 48 686 88
+rect 1234 48 1262 88
+rect 1810 48 1838 88
+rect 2386 48 2414 88
 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 -17 1231 17
+rect 1265 -17 2592 17
 rect 0 -48 2592 -17
 << labels >>
 rlabel metal1 0 618 2592 714 0 VPWR
@@ -785,16 +625,16 @@
 port 1 se
 rlabel metal1 0 -48 2592 48 0 VGND
 port 1 se
-rlabel metal1 2083 88 2141 146 0 Y
+rlabel metal1 2083 250 2141 308 0 Y
+port 3 se
+rlabel metal1 2098 308 2126 439 0 Y
+port 3 se
+rlabel metal1 2083 439 2141 497 0 Y
 port 3 se
 rlabel metal1 259 169 317 227 0 A
 port 0 se
-rlabel metal1 547 250 605 308 0 A
-port 0 se
 rlabel metal1 274 227 302 356 0 A
 port 0 se
-rlabel metal1 562 308 590 356 0 A
-port 0 se
 rlabel metal1 259 356 317 414 0 A
 port 0 se
 rlabel metal1 547 356 605 414 0 A
@@ -811,7 +651,7 @@
 port 1 se ground default abutment
 rlabel locali 0 649 2592 683 4 VPWR
 port 2 se power default abutment
-rlabel locali 31 618 2561 649 4 VGND
+rlabel metal1 31 618 2561 649 4 VGND
 port 1 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 2592 666
diff --git a/cells/mag/CLKBUF1.mag.beforemagic b/cells/mag/CLKBUF1.mag.beforemagic
index e650ffe..2d80530 100644
--- a/cells/mag/CLKBUF1.mag.beforemagic
+++ b/cells/mag/CLKBUF1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624752971
+timestamp 1636755646
 << nwell >>
 rect 0 358 2592 666
 << nmos >>
@@ -23,111 +23,120 @@
 rect 2001 450 2031 618
 rect 2289 450 2319 618
 << ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 367 132
 rect 401 132 413 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
-rect 1507 134 1565 146
-rect 1507 132 1519 134
+rect 1219 134 1277 146
+rect 1219 132 1231 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 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
 rect 1455 100 1519 132
 rect 1553 132 1565 134
-rect 2083 134 2141 146
-rect 2083 132 2095 134
+rect 1795 134 1853 146
+rect 1795 132 1807 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 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
 rect 2031 100 2095 132
 rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 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
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2417 100 2477 132
+rect 2319 48 2477 100
 << pdiff >>
-rect 115 598 273 618
-rect 115 564 127 598
-rect 161 564 273 598
-rect 115 450 273 564
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 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 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
 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 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
 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 2319 593 2477 618
+rect 2319 559 2383 593
+rect 2417 559 2477 593
+rect 2319 450 2477 559
 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 127 100 161 134
 rect 367 100 401 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
-rect 1231 68 1265 102
+rect 1231 100 1265 134
 rect 1519 100 1553 134
-rect 1807 68 1841 102
+rect 1807 100 1841 134
 rect 2095 100 2129 134
-rect 2383 68 2417 102
+rect 2383 100 2417 134
 << pdiffc >>
-rect 127 564 161 598
+rect 127 559 161 593
 rect 367 451 401 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
-rect 1231 564 1265 598
+rect 1231 559 1265 593
 rect 1519 451 1553 485
-rect 1807 564 1841 598
+rect 1807 559 1841 593
 rect 2095 451 2129 485
-rect 2383 564 2417 598
+rect 2383 559 2417 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -244,73 +253,47 @@
 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 0 649 1231 683
+rect 1265 649 2592 683
+rect 0 643 2592 649
+rect 0 618 605 643
+rect 739 618 2592 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 1215 593 1281 618
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1215 543 1281 559
+rect 1791 593 1857 618
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 2367 593 2433 618
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2367 543 2433 559
 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 927 485 993 501
+rect 927 451 943 485
 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 1503 452 1519 485
+rect 927 435 993 451
+rect 1507 451 1519 452
 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 1507 435 1569 451
 rect 2083 451 2095 452
 rect 2129 451 2145 485
 rect 2083 435 2145 451
@@ -322,20 +305,20 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
-rect 831 352 897 368
+rect 881 401 893 402
 rect 1119 402 1185 418
+rect 881 368 897 401
+rect 831 352 897 368
 rect 1119 368 1135 402
 rect 1169 368 1185 402
 rect 1119 352 1185 368
-rect 1407 402 1469 418
+rect 1407 402 1473 418
 rect 1407 368 1423 402
-rect 1457 401 1469 402
-rect 1695 402 1761 418
-rect 1457 368 1473 401
+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
@@ -343,249 +326,143 @@
 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 2271 402 2337 418
+rect 2271 368 2287 402
+rect 2321 368 2337 402
+rect 2271 352 2337 368
+rect 559 231 593 352
+rect 1135 231 1169 352
+rect 1711 231 1745 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 593 184 609 215
 rect 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
 rect 831 181 847 215
-rect 881 184 897 215
+rect 881 181 897 215
+rect 831 165 897 181
 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 1169 184 1185 215
 rect 1407 215 1473 231
+rect 1169 181 1181 184
+rect 1119 165 1181 181
 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 1745 184 1761 215
 rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
 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 2095 150 2129 262
 rect 2271 215 2337 231
 rect 2271 181 2287 215
-rect 2321 181 2337 215
-rect 2271 165 2337 181
+rect 2321 184 2337 215
+rect 2321 181 2333 184
+rect 2271 165 2333 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
 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 111 84 177 100
 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 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
 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 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1503 134 1569 150
 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 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
 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 2367 134 2433 150
+rect 2367 100 2383 134
+rect 2417 100 2433 134
+rect 2367 84 2433 100
 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 -17 1231 17
+rect 1265 -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 1231 649 1265 683
+rect 127 559 161 593
+rect 655 559 689 593
+rect 1231 559 1265 593
+rect 1807 559 1841 593
+rect 2383 559 2417 593
 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 2095 451 2129 485
 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 559 262 593 296
-rect 1135 289 1169 323
-rect 1711 289 1745 323
+rect 2287 368 2321 402
+rect 2095 262 2129 296
 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 127 100 161 134
 rect 367 100 401 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
-rect 1231 68 1265 102
+rect 1231 100 1265 134
 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
+rect 1807 100 1841 134
+rect 2383 100 2417 134
+rect 1231 -17 1265 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 649 1231 683
+rect 1265 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 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 643 593 701 618
+rect 115 547 173 559
 rect 274 535 590 563
-rect 643 552 701 564
-rect 1123 566 1181 578
-rect 1123 563 1135 566
+rect 643 559 655 593
+rect 689 559 701 593
+rect 1219 593 1277 618
+rect 643 547 701 559
 rect 274 414 302 535
 rect 355 485 413 497
 rect 355 451 367 485
@@ -602,18 +479,12 @@
 rect 259 169 317 181
 rect 370 212 398 439
 rect 562 414 590 535
-rect 850 535 1135 563
+rect 850 535 1166 563
+rect 1219 559 1231 593
+rect 1265 559 1277 593
+rect 1795 593 1853 618
+rect 1219 547 1277 559
 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
@@ -626,30 +497,6 @@
 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
@@ -658,126 +505,119 @@
 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 946 212 974 439
+rect 1138 414 1166 535
+rect 1426 535 1742 563
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 2371 593 2429 618
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2371 547 2429 559
+rect 1426 414 1454 535
+rect 1507 485 1565 497
+rect 1507 451 1519 485
+rect 1553 451 1565 485
+rect 1507 439 1565 451
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1411 402 1469 414
+rect 1411 368 1423 402
 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 1411 212 1423 215
+rect 946 184 1423 212
+rect 946 146 974 184
+rect 1411 181 1423 184
 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 1522 212 1550 439
+rect 1714 414 1742 535
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1987 402 2045 414
+rect 1987 368 1999 402
+rect 2033 368 2045 402
 rect 1987 356 2045 368
-rect 2275 368 2287 371
+rect 2002 227 2030 356
+rect 2098 308 2126 439
+rect 2275 402 2333 414
+rect 2275 368 2287 402
 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 2083 296 2141 308
+rect 2083 262 2095 296
+rect 2129 262 2141 296
+rect 2083 250 2141 262
 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 1987 212 1999 215
+rect 1522 184 1999 212
+rect 1522 146 1550 184
+rect 1987 181 1999 184
+rect 2033 212 2045 215
 rect 2275 215 2333 227
-rect 2275 181 2287 215
+rect 2275 212 2287 215
+rect 2033 184 2287 212
+rect 2033 181 2045 184
+rect 1987 169 2045 181
+rect 2275 181 2287 184
 rect 2321 181 2333 215
 rect 2275 169 2333 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 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 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1507 134 1565 146
 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 1795 134 1853 146
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 2371 134 2429 146
+rect 2371 100 2383 134
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 130 48 158 88
+rect 658 48 686 88
+rect 1234 48 1262 88
+rect 1810 48 1838 88
+rect 2386 48 2414 88
 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 -17 1231 17
+rect 1265 -17 2592 17
 rect 0 -48 2592 -17
 << labels >>
-rlabel locali 0 618 2592 714 0 VDD
+rlabel metal1 0 618 2592 714 0 VDD
 port 1 se
 rlabel metal1 0 618 2592 714 0 VDD
 port 2 se
@@ -785,15 +625,15 @@
 port 3 se
 rlabel metal1 0 -48 2592 48 0 GND
 port 4 se
-rlabel metal1 2083 88 2141 146 0 Y
+rlabel metal1 2083 250 2141 308 0 Y
 port 5 se
-rlabel metal1 259 169 317 227 0 A
+rlabel metal1 2098 308 2126 439 0 Y
 port 6 se
-rlabel metal1 547 250 605 308 0 A
+rlabel metal1 2083 439 2141 497 0 Y
 port 7 se
-rlabel metal1 274 227 302 356 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel metal1 562 308 590 356 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
 rlabel metal1 259 356 317 414 0 A
 port 10 se
diff --git a/cells/mag/CLKBUF2.lef b/cells/mag/CLKBUF2.lef
new file mode 100644
index 0000000..44ff7c2
--- /dev/null
+++ b/cells/mag/CLKBUF2.lef
@@ -0,0 +1,291 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO CLKBUF2
+  CLASS CORE ;
+  FOREIGN CLKBUF2 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 18.720 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.370 2.675 2.950 2.815 ;
+        RECT 1.370 2.070 1.510 2.675 ;
+        RECT 2.810 2.070 2.950 2.675 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END A
+  PIN VGND
+    ANTENNADIFFAREA 3.514700 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 6.095 0.440 6.385 0.730 ;
+        RECT 8.975 0.440 9.265 0.730 ;
+        RECT 11.855 0.440 12.145 0.730 ;
+        RECT 14.735 0.440 15.025 0.730 ;
+        RECT 17.615 0.440 17.905 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 9.050 0.240 9.190 0.440 ;
+        RECT 11.930 0.240 12.070 0.440 ;
+        RECT 14.810 0.240 14.950 0.440 ;
+        RECT 17.690 0.240 17.830 0.440 ;
+        RECT 0.000 -0.240 18.720 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 18.720 3.570 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
+        RECT 6.095 2.735 6.385 3.090 ;
+        RECT 8.975 2.735 9.265 3.090 ;
+        RECT 11.855 2.735 12.145 3.090 ;
+        RECT 14.735 2.735 15.025 3.090 ;
+        RECT 17.615 2.735 17.905 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 5.661600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 18.720 3.415 ;
+        RECT 0.155 3.215 18.565 3.245 ;
+        RECT 0.155 3.090 3.025 3.215 ;
+        RECT 3.695 3.090 18.565 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
+        RECT 6.075 2.715 6.405 3.090 ;
+        RECT 8.955 2.715 9.285 3.090 ;
+        RECT 11.835 2.715 12.165 3.090 ;
+        RECT 14.715 2.715 15.045 3.090 ;
+        RECT 17.595 2.715 17.925 3.090 ;
+      LAYER mcon ;
+        RECT 9.035 3.245 9.205 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
+        RECT 6.155 2.795 6.325 2.965 ;
+        RECT 9.035 2.795 9.205 2.965 ;
+        RECT 11.915 2.795 12.085 2.965 ;
+        RECT 14.795 2.795 14.965 2.965 ;
+        RECT 17.675 2.795 17.845 2.965 ;
+    END
+  END VPWR
+  PIN Y
+    ANTENNADIFFAREA 1.661650 ;
+    PORT
+      LAYER met1 ;
+        RECT 16.175 0.440 16.465 0.730 ;
+    END
+  END Y
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 18.720 3.330 ;
+      LAYER li1 ;
+        RECT 3.195 2.715 3.525 3.045 ;
+        RECT 1.755 2.260 2.085 2.505 ;
+        RECT 1.775 2.175 2.085 2.260 ;
+        RECT 4.635 2.175 4.965 2.505 ;
+        RECT 5.675 2.090 5.845 2.830 ;
+        RECT 7.515 2.260 7.845 2.505 ;
+        RECT 7.535 2.175 7.845 2.260 ;
+        RECT 8.555 2.090 8.725 2.830 ;
+        RECT 10.395 2.260 10.725 2.505 ;
+        RECT 10.415 2.175 10.725 2.260 ;
+        RECT 11.435 2.090 11.605 2.830 ;
+        RECT 13.275 2.260 13.605 2.505 ;
+        RECT 13.295 2.175 13.605 2.260 ;
+        RECT 14.315 2.090 14.485 2.830 ;
+        RECT 16.155 2.175 16.485 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 2.005 4.465 2.090 ;
+        RECT 4.155 1.760 4.485 2.005 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 7.035 1.760 7.365 2.090 ;
+        RECT 8.475 1.760 8.805 2.090 ;
+        RECT 9.915 1.760 10.245 2.090 ;
+        RECT 11.355 1.760 11.685 2.090 ;
+        RECT 12.795 1.760 13.125 2.090 ;
+        RECT 14.235 1.760 14.565 2.090 ;
+        RECT 15.675 2.005 15.985 2.090 ;
+        RECT 15.675 1.760 16.005 2.005 ;
+        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 5.675 1.445 5.845 1.760 ;
+        RECT 8.555 1.445 8.725 1.760 ;
+        RECT 11.435 1.445 11.605 1.760 ;
+        RECT 14.315 1.445 14.485 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 2.715 0.825 3.045 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 5.595 0.825 5.925 1.155 ;
+        RECT 7.035 0.920 7.365 1.155 ;
+        RECT 8.475 0.920 8.805 1.155 ;
+        RECT 9.915 0.920 10.245 1.155 ;
+        RECT 7.035 0.825 7.345 0.920 ;
+        RECT 8.475 0.825 8.785 0.920 ;
+        RECT 9.915 0.825 10.225 0.920 ;
+        RECT 11.355 0.825 11.685 1.155 ;
+        RECT 12.795 0.920 13.125 1.155 ;
+        RECT 14.235 0.920 14.565 1.155 ;
+        RECT 15.675 0.920 16.005 1.155 ;
+        RECT 12.795 0.825 13.105 0.920 ;
+        RECT 14.235 0.825 14.545 0.920 ;
+        RECT 15.675 0.825 15.985 0.920 ;
+        RECT 16.235 0.750 16.405 2.175 ;
+        RECT 17.115 1.760 17.445 2.090 ;
+        RECT 17.115 0.825 17.445 1.155 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 6.095 0.655 6.405 0.750 ;
+        RECT 6.075 0.420 6.405 0.655 ;
+        RECT 7.515 0.420 7.845 0.750 ;
+        RECT 8.955 0.420 9.285 0.750 ;
+        RECT 10.395 0.420 10.725 0.750 ;
+        RECT 11.855 0.655 12.165 0.750 ;
+        RECT 11.835 0.420 12.165 0.655 ;
+        RECT 13.275 0.420 13.605 0.750 ;
+        RECT 14.715 0.420 15.045 0.750 ;
+        RECT 16.155 0.420 16.485 0.750 ;
+        RECT 17.615 0.655 17.925 0.750 ;
+        RECT 17.595 0.420 17.925 0.655 ;
+        RECT 0.155 0.085 18.565 0.240 ;
+        RECT 0.000 -0.085 18.720 0.085 ;
+      LAYER mcon ;
+        RECT 3.275 2.795 3.445 2.965 ;
+        RECT 5.675 2.660 5.845 2.830 ;
+        RECT 1.835 2.255 2.005 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
+        RECT 8.555 2.660 8.725 2.830 ;
+        RECT 7.595 2.255 7.765 2.425 ;
+        RECT 11.435 2.660 11.605 2.830 ;
+        RECT 10.475 2.255 10.645 2.425 ;
+        RECT 14.315 2.660 14.485 2.830 ;
+        RECT 13.355 2.255 13.525 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 7.115 1.840 7.285 2.010 ;
+        RECT 9.995 1.840 10.165 2.010 ;
+        RECT 12.875 1.840 13.045 2.010 ;
+        RECT 15.755 1.840 15.925 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 7.115 0.905 7.285 1.075 ;
+        RECT 8.555 0.905 8.725 1.075 ;
+        RECT 9.995 0.905 10.165 1.075 ;
+        RECT 11.435 0.905 11.605 1.075 ;
+        RECT 12.875 0.905 13.045 1.075 ;
+        RECT 14.315 0.905 14.485 1.075 ;
+        RECT 15.755 0.905 15.925 1.075 ;
+        RECT 17.195 1.840 17.365 2.010 ;
+        RECT 17.195 0.905 17.365 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 7.595 0.500 7.765 0.670 ;
+        RECT 9.035 0.500 9.205 0.670 ;
+        RECT 10.475 0.500 10.645 0.670 ;
+        RECT 11.915 0.500 12.085 0.670 ;
+        RECT 13.355 0.500 13.525 0.670 ;
+        RECT 14.795 0.500 14.965 0.670 ;
+        RECT 16.235 0.500 16.405 0.670 ;
+        RECT 17.675 0.500 17.845 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
+      LAYER met1 ;
+        RECT 5.615 2.815 5.905 2.890 ;
+        RECT 8.495 2.815 8.785 2.890 ;
+        RECT 11.375 2.815 11.665 2.890 ;
+        RECT 14.255 2.815 14.545 2.890 ;
+        RECT 4.250 2.675 5.905 2.815 ;
+        RECT 1.775 2.195 2.065 2.485 ;
+        RECT 1.850 1.060 1.990 2.195 ;
+        RECT 4.250 2.070 4.390 2.675 ;
+        RECT 5.615 2.600 5.905 2.675 ;
+        RECT 7.130 2.675 8.785 2.815 ;
+        RECT 4.655 2.195 4.945 2.485 ;
+        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 4.730 1.995 4.870 2.195 ;
+        RECT 7.130 2.070 7.270 2.675 ;
+        RECT 8.495 2.600 8.785 2.675 ;
+        RECT 10.010 2.675 11.665 2.815 ;
+        RECT 7.535 2.195 7.825 2.485 ;
+        RECT 7.055 1.995 7.345 2.070 ;
+        RECT 4.730 1.855 7.345 1.995 ;
+        RECT 4.250 1.135 4.390 1.780 ;
+        RECT 4.175 1.060 4.465 1.135 ;
+        RECT 1.850 0.920 4.465 1.060 ;
+        RECT 1.850 0.730 1.990 0.920 ;
+        RECT 4.175 0.845 4.465 0.920 ;
+        RECT 4.730 0.730 4.870 1.855 ;
+        RECT 7.055 1.780 7.345 1.855 ;
+        RECT 7.610 1.995 7.750 2.195 ;
+        RECT 10.010 2.070 10.150 2.675 ;
+        RECT 11.375 2.600 11.665 2.675 ;
+        RECT 12.890 2.675 14.545 2.815 ;
+        RECT 10.415 2.195 10.705 2.485 ;
+        RECT 9.935 1.995 10.225 2.070 ;
+        RECT 7.610 1.855 10.225 1.995 ;
+        RECT 5.615 1.385 5.905 1.675 ;
+        RECT 5.690 1.135 5.830 1.385 ;
+        RECT 7.130 1.135 7.270 1.780 ;
+        RECT 5.615 0.845 5.905 1.135 ;
+        RECT 7.055 0.845 7.345 1.135 ;
+        RECT 7.610 0.730 7.750 1.855 ;
+        RECT 9.935 1.780 10.225 1.855 ;
+        RECT 10.490 1.995 10.630 2.195 ;
+        RECT 12.890 2.070 13.030 2.675 ;
+        RECT 14.255 2.600 14.545 2.675 ;
+        RECT 13.295 2.195 13.585 2.485 ;
+        RECT 12.815 1.995 13.105 2.070 ;
+        RECT 10.490 1.855 13.105 1.995 ;
+        RECT 8.495 1.385 8.785 1.675 ;
+        RECT 8.570 1.135 8.710 1.385 ;
+        RECT 10.010 1.135 10.150 1.780 ;
+        RECT 8.495 0.845 8.785 1.135 ;
+        RECT 9.935 0.845 10.225 1.135 ;
+        RECT 10.490 0.730 10.630 1.855 ;
+        RECT 12.815 1.780 13.105 1.855 ;
+        RECT 13.370 1.995 13.510 2.195 ;
+        RECT 15.695 1.995 15.985 2.070 ;
+        RECT 17.135 1.995 17.425 2.070 ;
+        RECT 13.370 1.855 17.425 1.995 ;
+        RECT 11.375 1.385 11.665 1.675 ;
+        RECT 11.450 1.135 11.590 1.385 ;
+        RECT 12.890 1.135 13.030 1.780 ;
+        RECT 11.375 0.845 11.665 1.135 ;
+        RECT 12.815 0.845 13.105 1.135 ;
+        RECT 13.370 0.730 13.510 1.855 ;
+        RECT 15.695 1.780 15.985 1.855 ;
+        RECT 17.135 1.780 17.425 1.855 ;
+        RECT 14.255 1.385 14.545 1.675 ;
+        RECT 14.330 1.135 14.470 1.385 ;
+        RECT 15.770 1.135 15.910 1.780 ;
+        RECT 17.210 1.135 17.350 1.780 ;
+        RECT 14.255 0.845 14.545 1.135 ;
+        RECT 15.695 0.845 15.985 1.135 ;
+        RECT 17.135 0.845 17.425 1.135 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 4.655 0.440 4.945 0.730 ;
+        RECT 7.535 0.440 7.825 0.730 ;
+        RECT 10.415 0.440 10.705 0.730 ;
+        RECT 13.295 0.440 13.585 0.730 ;
+  END
+END CLKBUF2
+END LIBRARY
+
diff --git a/cells/mag/CLKBUF2.mag b/cells/mag/CLKBUF2.mag
new file mode 100644
index 0000000..f6e3006
--- /dev/null
+++ b/cells/mag/CLKBUF2.mag
@@ -0,0 +1,970 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809586
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 3744 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
+rect 2577 48 2607 132
+rect 2865 48 2895 132
+rect 3153 48 3183 132
+rect 3441 48 3471 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
+rect 2577 450 2607 618
+rect 2865 450 2895 618
+rect 3153 450 3183 618
+rect 3441 450 3471 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2659 134 2717 146
+rect 2659 132 2671 134
+rect 2417 100 2577 132
+rect 2319 48 2577 100
+rect 2607 100 2671 132
+rect 2705 132 2717 134
+rect 2947 134 3005 146
+rect 2947 132 2959 134
+rect 2705 100 2865 132
+rect 2607 48 2865 100
+rect 2895 100 2959 132
+rect 2993 132 3005 134
+rect 3235 134 3293 146
+rect 3235 132 3247 134
+rect 2993 100 3153 132
+rect 2895 48 3153 100
+rect 3183 100 3247 132
+rect 3281 132 3293 134
+rect 3523 134 3581 146
+rect 3523 132 3535 134
+rect 3281 100 3441 132
+rect 3183 48 3441 100
+rect 3471 100 3535 132
+rect 3569 132 3581 134
+rect 3569 100 3629 132
+rect 3471 48 3629 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2289 618
+rect 2031 451 2095 485
+rect 2129 451 2289 485
+rect 2031 450 2289 451
+rect 2319 593 2577 618
+rect 2319 559 2383 593
+rect 2417 559 2577 593
+rect 2319 450 2577 559
+rect 2607 485 2865 618
+rect 2607 451 2671 485
+rect 2705 451 2865 485
+rect 2607 450 2865 451
+rect 2895 593 3153 618
+rect 2895 559 2959 593
+rect 2993 559 3153 593
+rect 2895 450 3153 559
+rect 3183 485 3441 618
+rect 3183 451 3247 485
+rect 3281 451 3441 485
+rect 3183 450 3441 451
+rect 3471 593 3629 618
+rect 3471 559 3535 593
+rect 3569 559 3629 593
+rect 3471 450 3629 559
+rect 355 439 413 450
+rect 931 439 989 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
+rect 2659 439 2717 450
+rect 3235 439 3293 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2671 100 2705 134
+rect 2959 100 2993 134
+rect 3247 100 3281 134
+rect 3535 100 3569 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 367 451 401 485
+rect 655 559 689 593
+rect 943 451 977 485
+rect 1231 559 1265 593
+rect 1519 451 1553 485
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+rect 2383 559 2417 593
+rect 2671 451 2705 485
+rect 2959 559 2993 593
+rect 3247 451 3281 485
+rect 3535 559 3569 593
+<< 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 2577 618 2607 644
+rect 2865 618 2895 644
+rect 3153 618 3183 644
+rect 3441 618 3471 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 2577 418 2607 450
+rect 2865 418 2895 450
+rect 3153 418 3183 450
+rect 3441 418 3471 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 2559 402 2625 418
+rect 2559 368 2575 402
+rect 2609 368 2625 402
+rect 2559 352 2625 368
+rect 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 3135 402 3201 418
+rect 3135 368 3151 402
+rect 3185 368 3201 402
+rect 3135 352 3201 368
+rect 3423 402 3489 418
+rect 3423 368 3439 402
+rect 3473 368 3489 402
+rect 3423 352 3489 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 2559 215 2625 231
+rect 2559 181 2575 215
+rect 2609 181 2625 215
+rect 2559 165 2625 181
+rect 2847 215 2913 231
+rect 2847 181 2863 215
+rect 2897 181 2913 215
+rect 2847 165 2913 181
+rect 3135 215 3201 231
+rect 3135 181 3151 215
+rect 3185 181 3201 215
+rect 3135 165 3201 181
+rect 3423 215 3489 231
+rect 3423 181 3439 215
+rect 3473 181 3489 215
+rect 3423 165 3489 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 2577 132 2607 165
+rect 2865 132 2895 165
+rect 3153 132 3183 165
+rect 3441 132 3471 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
+rect 2577 22 2607 48
+rect 2865 22 2895 48
+rect 3153 22 3183 48
+rect 3441 22 3471 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 2575 368 2609 402
+rect 2863 368 2897 402
+rect 3151 368 3185 402
+rect 3439 368 3473 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
+rect 2575 181 2609 215
+rect 2863 181 2897 215
+rect 3151 181 3185 215
+rect 3439 181 3473 215
+<< locali >>
+rect 0 649 1807 683
+rect 1841 649 3744 683
+rect 31 643 3713 649
+rect 31 618 605 643
+rect 739 618 3713 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 1215 593 1281 618
+rect 639 543 705 559
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1791 593 1857 618
+rect 1215 543 1281 559
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 355 435 417 451
+rect 927 485 993 501
+rect 927 451 943 485
+rect 977 451 993 485
+rect 927 435 993 451
+rect 1135 418 1169 532
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 2367 593 2433 618
+rect 1791 543 1857 559
+rect 1503 485 1569 501
+rect 1503 452 1519 485
+rect 1507 451 1519 452
+rect 1553 451 1569 485
+rect 1507 435 1569 451
+rect 1711 418 1745 532
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2943 593 3009 618
+rect 2367 543 2433 559
+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 2287 418 2321 532
+rect 2943 559 2959 593
+rect 2993 559 3009 593
+rect 2943 543 3009 559
+rect 3519 593 3585 618
+rect 3519 559 3535 593
+rect 3569 559 3585 593
+rect 3519 543 3585 559
+rect 2655 485 2721 501
+rect 2655 452 2671 485
+rect 2659 451 2671 452
+rect 2705 451 2721 485
+rect 2659 435 2721 451
+rect 2863 418 2897 532
+rect 3231 485 3297 501
+rect 3231 451 3247 485
+rect 3281 451 3297 485
+rect 3231 435 3297 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 893 418
+rect 831 368 847 402
+rect 881 401 893 402
+rect 1119 402 1185 418
+rect 881 368 897 401
+rect 831 352 897 368
+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 2559 402 2625 418
+rect 2559 368 2575 402
+rect 2609 368 2625 402
+rect 2559 352 2625 368
+rect 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 3135 402 3197 418
+rect 3135 368 3151 402
+rect 3185 401 3197 402
+rect 3185 368 3201 401
+rect 3135 352 3201 368
+rect 559 231 593 352
+rect 1135 323 1169 352
+rect 1711 323 1745 352
+rect 2287 323 2321 352
+rect 2863 323 2897 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2271 215 2337 231
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 2559 215 2625 231
+rect 2559 181 2575 215
+rect 2609 184 2625 215
+rect 2847 215 2913 231
+rect 2609 181 2621 184
+rect 2559 165 2621 181
+rect 2847 181 2863 215
+rect 2897 184 2913 215
+rect 3135 215 3201 231
+rect 2897 181 2909 184
+rect 2847 165 2909 181
+rect 3135 181 3151 215
+rect 3185 184 3201 215
+rect 3185 181 3197 184
+rect 3135 165 3197 181
+rect 3247 150 3281 435
+rect 3423 402 3489 418
+rect 3423 368 3439 402
+rect 3473 368 3489 402
+rect 3423 352 3489 368
+rect 3423 215 3489 231
+rect 3423 181 3439 215
+rect 3473 181 3489 215
+rect 3423 165 3489 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 643 134 705 150
+rect 643 131 655 134
+rect 351 84 417 100
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 927 84 993 100
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2371 134 2433 150
+rect 2371 131 2383 134
+rect 2079 84 2145 100
+rect 2367 100 2383 131
+rect 2417 100 2433 134
+rect 2367 84 2433 100
+rect 2655 134 2721 150
+rect 2655 100 2671 134
+rect 2705 100 2721 134
+rect 2655 84 2721 100
+rect 2943 134 3009 150
+rect 2943 100 2959 134
+rect 2993 100 3009 134
+rect 2943 84 3009 100
+rect 3231 134 3297 150
+rect 3231 100 3247 134
+rect 3281 100 3297 134
+rect 3523 134 3585 150
+rect 3523 131 3535 134
+rect 3231 84 3297 100
+rect 3519 100 3535 131
+rect 3569 100 3585 134
+rect 3519 84 3585 100
+rect 31 17 3713 48
+rect 0 -17 655 17
+rect 689 -17 3744 17
+<< viali >>
+rect 1807 649 1841 683
+rect 127 559 161 593
+rect 655 559 689 593
+rect 1135 532 1169 566
+rect 1231 559 1265 593
+rect 367 451 401 485
+rect 943 451 977 485
+rect 1711 532 1745 566
+rect 1807 559 1841 593
+rect 1519 451 1553 485
+rect 2287 532 2321 566
+rect 2383 559 2417 593
+rect 2095 451 2129 485
+rect 2863 532 2897 566
+rect 2959 559 2993 593
+rect 3535 559 3569 593
+rect 2671 451 2705 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 2575 368 2609 402
+rect 3151 368 3185 402
+rect 1135 289 1169 323
+rect 1711 289 1745 323
+rect 2287 289 2321 323
+rect 2863 289 2897 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 181 2321 215
+rect 2575 181 2609 215
+rect 2863 181 2897 215
+rect 3151 181 3185 215
+rect 3439 368 3473 402
+rect 3439 181 3473 215
+rect 127 100 161 134
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2671 100 2705 134
+rect 2959 100 2993 134
+rect 3247 100 3281 134
+rect 3535 100 3569 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 3744 714
+rect 0 649 1807 683
+rect 1841 649 3744 683
+rect 0 618 3744 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 643 593 701 618
+rect 115 547 173 559
+rect 274 535 590 563
+rect 643 559 655 593
+rect 689 559 701 593
+rect 1219 593 1277 618
+rect 1123 566 1181 578
+rect 1123 563 1135 566
+rect 643 547 701 559
+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 559 1231 593
+rect 1265 559 1277 593
+rect 1795 593 1853 618
+rect 1699 566 1757 578
+rect 1699 563 1711 566
+rect 1219 547 1277 559
+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 559 1807 593
+rect 1841 559 1853 593
+rect 2371 593 2429 618
+rect 2275 566 2333 578
+rect 2275 563 2287 566
+rect 1795 547 1853 559
+rect 1699 520 1757 532
+rect 2002 535 2287 563
+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 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 2002 414 2030 535
+rect 2275 532 2287 535
+rect 2321 532 2333 566
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2947 593 3005 618
+rect 2851 566 2909 578
+rect 2851 563 2863 566
+rect 2371 547 2429 559
+rect 2275 520 2333 532
+rect 2578 535 2863 563
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+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 368 2045 402
+rect 1987 356 2045 368
+rect 2098 399 2126 439
+rect 2578 414 2606 535
+rect 2851 532 2863 535
+rect 2897 532 2909 566
+rect 2947 559 2959 593
+rect 2993 559 3005 593
+rect 2947 547 3005 559
+rect 3523 593 3581 618
+rect 3523 559 3535 593
+rect 3569 559 3581 593
+rect 3523 547 3581 559
+rect 2851 520 2909 532
+rect 2659 485 2717 497
+rect 2659 451 2671 485
+rect 2705 451 2717 485
+rect 2659 439 2717 451
+rect 2563 402 2621 414
+rect 2563 399 2575 402
+rect 2098 371 2575 399
+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 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 2098 146 2126 371
+rect 2563 368 2575 371
+rect 2609 368 2621 402
+rect 2563 356 2621 368
+rect 2674 399 2702 439
+rect 3139 402 3197 414
+rect 3139 399 3151 402
+rect 2674 371 3151 399
+rect 2275 323 2333 335
+rect 2275 289 2287 323
+rect 2321 289 2333 323
+rect 2275 277 2333 289
+rect 2290 227 2318 277
+rect 2578 227 2606 356
+rect 2275 215 2333 227
+rect 2275 181 2287 215
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 2563 215 2621 227
+rect 2563 181 2575 215
+rect 2609 181 2621 215
+rect 2563 169 2621 181
+rect 2674 146 2702 371
+rect 3139 368 3151 371
+rect 3185 399 3197 402
+rect 3427 402 3485 414
+rect 3427 399 3439 402
+rect 3185 371 3439 399
+rect 3185 368 3197 371
+rect 3139 356 3197 368
+rect 3427 368 3439 371
+rect 3473 368 3485 402
+rect 3427 356 3485 368
+rect 2851 323 2909 335
+rect 2851 289 2863 323
+rect 2897 289 2909 323
+rect 2851 277 2909 289
+rect 2866 227 2894 277
+rect 3154 227 3182 356
+rect 3442 227 3470 356
+rect 2851 215 2909 227
+rect 2851 181 2863 215
+rect 2897 181 2909 215
+rect 2851 169 2909 181
+rect 3139 215 3197 227
+rect 3139 181 3151 215
+rect 3185 181 3197 215
+rect 3139 169 3197 181
+rect 3427 215 3485 227
+rect 3427 181 3439 215
+rect 3473 181 3485 215
+rect 3427 169 3485 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1507 134 1565 146
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 1795 134 1853 146
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 2083 134 2141 146
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 2371 134 2429 146
+rect 2371 100 2383 134
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 2659 134 2717 146
+rect 2659 100 2671 134
+rect 2705 100 2717 134
+rect 2659 88 2717 100
+rect 2947 134 3005 146
+rect 2947 100 2959 134
+rect 2993 100 3005 134
+rect 2947 88 3005 100
+rect 3235 134 3293 146
+rect 3235 100 3247 134
+rect 3281 100 3293 134
+rect 3235 88 3293 100
+rect 3523 134 3581 146
+rect 3523 100 3535 134
+rect 3569 100 3581 134
+rect 3523 88 3581 100
+rect 130 48 158 88
+rect 658 48 686 88
+rect 1234 48 1262 88
+rect 1810 48 1838 88
+rect 2386 48 2414 88
+rect 2962 48 2990 88
+rect 3538 48 3566 88
+rect 0 17 3744 48
+rect 0 -17 655 17
+rect 689 -17 3744 17
+rect 0 -48 3744 -17
+<< labels >>
+rlabel metal1 0 618 3744 714 0 VPWR
+port 2 se
+rlabel metal1 0 618 3744 714 0 VPWR
+port 2 se
+rlabel metal1 0 -48 3744 48 0 VGND
+port 1 se
+rlabel metal1 0 -48 3744 48 0 VGND
+port 1 se
+rlabel metal1 3235 88 3293 146 0 Y
+port 3 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 274 227 302 356 0 A
+port 0 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
+rlabel metal1 547 356 605 414 0 A
+port 0 se
+rlabel metal1 274 414 302 535 0 A
+port 0 se
+rlabel metal1 562 414 590 535 0 A
+port 0 se
+rlabel metal1 274 535 590 563 0 A
+port 0 se
+rlabel locali 0 -17 3744 17 4 VGND
+port 1 se ground default abutment
+rlabel locali 31 17 3713 48 4 VGND
+port 1 se ground default abutment
+rlabel locali 0 649 3744 683 4 VPWR
+port 2 se power default abutment
+rlabel metal1 31 618 3713 649 4 VGND
+port 1 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 3744 666
+<< end >>
diff --git a/cells/mag/CLKBUF2.mag.beforemagic b/cells/mag/CLKBUF2.mag.beforemagic
new file mode 100644
index 0000000..4309f58
--- /dev/null
+++ b/cells/mag/CLKBUF2.mag.beforemagic
@@ -0,0 +1,962 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636804204
+<< nwell >>
+rect 0 358 3744 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
+rect 2577 48 2607 132
+rect 2865 48 2895 132
+rect 3153 48 3183 132
+rect 3441 48 3471 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
+rect 2577 450 2607 618
+rect 2865 450 2895 618
+rect 3153 450 3183 618
+rect 3441 450 3471 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2659 134 2717 146
+rect 2659 132 2671 134
+rect 2417 100 2577 132
+rect 2319 48 2577 100
+rect 2607 100 2671 132
+rect 2705 132 2717 134
+rect 2947 134 3005 146
+rect 2947 132 2959 134
+rect 2705 100 2865 132
+rect 2607 48 2865 100
+rect 2895 100 2959 132
+rect 2993 132 3005 134
+rect 3235 134 3293 146
+rect 3235 132 3247 134
+rect 2993 100 3153 132
+rect 2895 48 3153 100
+rect 3183 100 3247 132
+rect 3281 132 3293 134
+rect 3523 134 3581 146
+rect 3523 132 3535 134
+rect 3281 100 3441 132
+rect 3183 48 3441 100
+rect 3471 100 3535 132
+rect 3569 132 3581 134
+rect 3569 100 3629 132
+rect 3471 48 3629 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 485 1137 618
+rect 879 451 943 485
+rect 977 451 1137 485
+rect 879 450 1137 451
+rect 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
+rect 1455 485 1713 618
+rect 1455 451 1519 485
+rect 1553 451 1713 485
+rect 1455 450 1713 451
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2289 618
+rect 2031 451 2095 485
+rect 2129 451 2289 485
+rect 2031 450 2289 451
+rect 2319 593 2577 618
+rect 2319 559 2383 593
+rect 2417 559 2577 593
+rect 2319 450 2577 559
+rect 2607 485 2865 618
+rect 2607 451 2671 485
+rect 2705 451 2865 485
+rect 2607 450 2865 451
+rect 2895 593 3153 618
+rect 2895 559 2959 593
+rect 2993 559 3153 593
+rect 2895 450 3153 559
+rect 3183 485 3441 618
+rect 3183 451 3247 485
+rect 3281 451 3441 485
+rect 3183 450 3441 451
+rect 3471 593 3629 618
+rect 3471 559 3535 593
+rect 3569 559 3629 593
+rect 3471 450 3629 559
+rect 355 439 413 450
+rect 931 439 989 450
+rect 1507 439 1565 450
+rect 2083 439 2141 450
+rect 2659 439 2717 450
+rect 3235 439 3293 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2671 100 2705 134
+rect 2959 100 2993 134
+rect 3247 100 3281 134
+rect 3535 100 3569 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 367 451 401 485
+rect 655 559 689 593
+rect 943 451 977 485
+rect 1231 559 1265 593
+rect 1519 451 1553 485
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+rect 2383 559 2417 593
+rect 2671 451 2705 485
+rect 2959 559 2993 593
+rect 3247 451 3281 485
+rect 3535 559 3569 593
+<< 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 2577 618 2607 644
+rect 2865 618 2895 644
+rect 3153 618 3183 644
+rect 3441 618 3471 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 2577 418 2607 450
+rect 2865 418 2895 450
+rect 3153 418 3183 450
+rect 3441 418 3471 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 2559 402 2625 418
+rect 2559 368 2575 402
+rect 2609 368 2625 402
+rect 2559 352 2625 368
+rect 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 3135 402 3201 418
+rect 3135 368 3151 402
+rect 3185 368 3201 402
+rect 3135 352 3201 368
+rect 3423 402 3489 418
+rect 3423 368 3439 402
+rect 3473 368 3489 402
+rect 3423 352 3489 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 2559 215 2625 231
+rect 2559 181 2575 215
+rect 2609 181 2625 215
+rect 2559 165 2625 181
+rect 2847 215 2913 231
+rect 2847 181 2863 215
+rect 2897 181 2913 215
+rect 2847 165 2913 181
+rect 3135 215 3201 231
+rect 3135 181 3151 215
+rect 3185 181 3201 215
+rect 3135 165 3201 181
+rect 3423 215 3489 231
+rect 3423 181 3439 215
+rect 3473 181 3489 215
+rect 3423 165 3489 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 2577 132 2607 165
+rect 2865 132 2895 165
+rect 3153 132 3183 165
+rect 3441 132 3471 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
+rect 2577 22 2607 48
+rect 2865 22 2895 48
+rect 3153 22 3183 48
+rect 3441 22 3471 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 2575 368 2609 402
+rect 2863 368 2897 402
+rect 3151 368 3185 402
+rect 3439 368 3473 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
+rect 2575 181 2609 215
+rect 2863 181 2897 215
+rect 3151 181 3185 215
+rect 3439 181 3473 215
+<< locali >>
+rect 0 683 3744 714
+rect 0 649 1807 683
+rect 1841 649 3744 683
+rect 0 643 3744 649
+rect 0 618 605 643
+rect 739 618 3744 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 593 705 609
+rect 639 559 655 593
+rect 689 559 705 593
+rect 1215 593 1281 618
+rect 639 543 705 559
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1791 593 1857 618
+rect 1215 543 1281 559
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 355 435 417 451
+rect 927 485 993 501
+rect 927 451 943 485
+rect 977 451 993 485
+rect 927 435 993 451
+rect 1135 418 1169 532
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 2367 593 2433 618
+rect 1791 543 1857 559
+rect 1503 485 1569 501
+rect 1503 452 1519 485
+rect 1507 451 1519 452
+rect 1553 451 1569 485
+rect 1507 435 1569 451
+rect 1711 418 1745 532
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2943 593 3009 618
+rect 2367 543 2433 559
+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 2287 418 2321 532
+rect 2943 559 2959 593
+rect 2993 559 3009 593
+rect 2943 543 3009 559
+rect 3519 593 3585 618
+rect 3519 559 3535 593
+rect 3569 559 3585 593
+rect 3519 543 3585 559
+rect 2655 485 2721 501
+rect 2655 452 2671 485
+rect 2659 451 2671 452
+rect 2705 451 2721 485
+rect 2659 435 2721 451
+rect 2863 418 2897 532
+rect 3231 485 3297 501
+rect 3231 451 3247 485
+rect 3281 451 3297 485
+rect 3231 435 3297 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 893 418
+rect 831 368 847 402
+rect 881 401 893 402
+rect 1119 402 1185 418
+rect 881 368 897 401
+rect 831 352 897 368
+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 2559 402 2625 418
+rect 2559 368 2575 402
+rect 2609 368 2625 402
+rect 2559 352 2625 368
+rect 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 3135 402 3197 418
+rect 3135 368 3151 402
+rect 3185 401 3197 402
+rect 3185 368 3201 401
+rect 3135 352 3201 368
+rect 559 231 593 352
+rect 1135 323 1169 352
+rect 1711 323 1745 352
+rect 2287 323 2321 352
+rect 2863 323 2897 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2271 215 2337 231
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 2271 181 2287 215
+rect 2321 181 2337 215
+rect 2271 165 2337 181
+rect 2559 215 2625 231
+rect 2559 181 2575 215
+rect 2609 184 2625 215
+rect 2847 215 2913 231
+rect 2609 181 2621 184
+rect 2559 165 2621 181
+rect 2847 181 2863 215
+rect 2897 184 2913 215
+rect 3135 215 3201 231
+rect 2897 181 2909 184
+rect 2847 165 2909 181
+rect 3135 181 3151 215
+rect 3185 184 3201 215
+rect 3185 181 3197 184
+rect 3135 165 3197 181
+rect 3247 150 3281 435
+rect 3423 402 3489 418
+rect 3423 368 3439 402
+rect 3473 368 3489 402
+rect 3423 352 3489 368
+rect 3423 215 3489 231
+rect 3423 181 3439 215
+rect 3473 181 3489 215
+rect 3423 165 3489 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 643 134 705 150
+rect 643 131 655 134
+rect 351 84 417 100
+rect 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 927 84 993 100
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2371 134 2433 150
+rect 2371 131 2383 134
+rect 2079 84 2145 100
+rect 2367 100 2383 131
+rect 2417 100 2433 134
+rect 2367 84 2433 100
+rect 2655 134 2721 150
+rect 2655 100 2671 134
+rect 2705 100 2721 134
+rect 2655 84 2721 100
+rect 2943 134 3009 150
+rect 2943 100 2959 134
+rect 2993 100 3009 134
+rect 2943 84 3009 100
+rect 3231 134 3297 150
+rect 3231 100 3247 134
+rect 3281 100 3297 134
+rect 3523 134 3585 150
+rect 3523 131 3535 134
+rect 3231 84 3297 100
+rect 3519 100 3535 131
+rect 3569 100 3585 134
+rect 3519 84 3585 100
+rect 0 17 3744 48
+rect 0 -17 655 17
+rect 689 -17 3744 17
+rect 0 -48 3744 -17
+<< viali >>
+rect 1807 649 1841 683
+rect 127 559 161 593
+rect 655 559 689 593
+rect 1135 532 1169 566
+rect 1231 559 1265 593
+rect 367 451 401 485
+rect 943 451 977 485
+rect 1711 532 1745 566
+rect 1807 559 1841 593
+rect 1519 451 1553 485
+rect 2287 532 2321 566
+rect 2383 559 2417 593
+rect 2095 451 2129 485
+rect 2863 532 2897 566
+rect 2959 559 2993 593
+rect 3535 559 3569 593
+rect 2671 451 2705 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 2575 368 2609 402
+rect 3151 368 3185 402
+rect 1135 289 1169 323
+rect 1711 289 1745 323
+rect 2287 289 2321 323
+rect 2863 289 2897 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 181 2321 215
+rect 2575 181 2609 215
+rect 2863 181 2897 215
+rect 3151 181 3185 215
+rect 3439 368 3473 402
+rect 3439 181 3473 215
+rect 127 100 161 134
+rect 367 100 401 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+rect 1519 100 1553 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2671 100 2705 134
+rect 2959 100 2993 134
+rect 3247 100 3281 134
+rect 3535 100 3569 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 3744 714
+rect 0 649 1807 683
+rect 1841 649 3744 683
+rect 0 618 3744 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 643 593 701 618
+rect 115 547 173 559
+rect 274 535 590 563
+rect 643 559 655 593
+rect 689 559 701 593
+rect 1219 593 1277 618
+rect 1123 566 1181 578
+rect 1123 563 1135 566
+rect 643 547 701 559
+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 559 1231 593
+rect 1265 559 1277 593
+rect 1795 593 1853 618
+rect 1699 566 1757 578
+rect 1699 563 1711 566
+rect 1219 547 1277 559
+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 559 1807 593
+rect 1841 559 1853 593
+rect 2371 593 2429 618
+rect 2275 566 2333 578
+rect 2275 563 2287 566
+rect 1795 547 1853 559
+rect 1699 520 1757 532
+rect 2002 535 2287 563
+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 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 2002 414 2030 535
+rect 2275 532 2287 535
+rect 2321 532 2333 566
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2947 593 3005 618
+rect 2851 566 2909 578
+rect 2851 563 2863 566
+rect 2371 547 2429 559
+rect 2275 520 2333 532
+rect 2578 535 2863 563
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+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 368 2045 402
+rect 1987 356 2045 368
+rect 2098 399 2126 439
+rect 2578 414 2606 535
+rect 2851 532 2863 535
+rect 2897 532 2909 566
+rect 2947 559 2959 593
+rect 2993 559 3005 593
+rect 2947 547 3005 559
+rect 3523 593 3581 618
+rect 3523 559 3535 593
+rect 3569 559 3581 593
+rect 3523 547 3581 559
+rect 2851 520 2909 532
+rect 2659 485 2717 497
+rect 2659 451 2671 485
+rect 2705 451 2717 485
+rect 2659 439 2717 451
+rect 2563 402 2621 414
+rect 2563 399 2575 402
+rect 2098 371 2575 399
+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 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 2098 146 2126 371
+rect 2563 368 2575 371
+rect 2609 368 2621 402
+rect 2563 356 2621 368
+rect 2674 399 2702 439
+rect 3139 402 3197 414
+rect 3139 399 3151 402
+rect 2674 371 3151 399
+rect 2275 323 2333 335
+rect 2275 289 2287 323
+rect 2321 289 2333 323
+rect 2275 277 2333 289
+rect 2290 227 2318 277
+rect 2578 227 2606 356
+rect 2275 215 2333 227
+rect 2275 181 2287 215
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 2563 215 2621 227
+rect 2563 181 2575 215
+rect 2609 181 2621 215
+rect 2563 169 2621 181
+rect 2674 146 2702 371
+rect 3139 368 3151 371
+rect 3185 399 3197 402
+rect 3427 402 3485 414
+rect 3427 399 3439 402
+rect 3185 371 3439 399
+rect 3185 368 3197 371
+rect 3139 356 3197 368
+rect 3427 368 3439 371
+rect 3473 368 3485 402
+rect 3427 356 3485 368
+rect 2851 323 2909 335
+rect 2851 289 2863 323
+rect 2897 289 2909 323
+rect 2851 277 2909 289
+rect 2866 227 2894 277
+rect 3154 227 3182 356
+rect 3442 227 3470 356
+rect 2851 215 2909 227
+rect 2851 181 2863 215
+rect 2897 181 2909 215
+rect 2851 169 2909 181
+rect 3139 215 3197 227
+rect 3139 181 3151 215
+rect 3185 181 3197 215
+rect 3139 169 3197 181
+rect 3427 215 3485 227
+rect 3427 181 3439 215
+rect 3473 181 3485 215
+rect 3427 169 3485 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1507 134 1565 146
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 1795 134 1853 146
+rect 1795 100 1807 134
+rect 1841 100 1853 134
+rect 1795 88 1853 100
+rect 2083 134 2141 146
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 2371 134 2429 146
+rect 2371 100 2383 134
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 2659 134 2717 146
+rect 2659 100 2671 134
+rect 2705 100 2717 134
+rect 2659 88 2717 100
+rect 2947 134 3005 146
+rect 2947 100 2959 134
+rect 2993 100 3005 134
+rect 2947 88 3005 100
+rect 3235 134 3293 146
+rect 3235 100 3247 134
+rect 3281 100 3293 134
+rect 3235 88 3293 100
+rect 3523 134 3581 146
+rect 3523 100 3535 134
+rect 3569 100 3581 134
+rect 3523 88 3581 100
+rect 130 48 158 88
+rect 658 48 686 88
+rect 1234 48 1262 88
+rect 1810 48 1838 88
+rect 2386 48 2414 88
+rect 2962 48 2990 88
+rect 3538 48 3566 88
+rect 0 17 3744 48
+rect 0 -17 655 17
+rect 689 -17 3744 17
+rect 0 -48 3744 -17
+<< labels >>
+rlabel metal1 0 618 3744 714 0 VDD
+port 1 se
+rlabel metal1 0 618 3744 714 0 VDD
+port 2 se
+rlabel locali 0 -48 3744 48 0 GND
+port 3 se
+rlabel metal1 0 -48 3744 48 0 GND
+port 4 se
+rlabel metal1 3235 88 3293 146 0 Y
+port 5 se
+rlabel metal1 259 169 317 227 0 A
+port 6 se
+rlabel metal1 274 227 302 356 0 A
+port 7 se
+rlabel metal1 259 356 317 414 0 A
+port 8 se
+rlabel metal1 547 356 605 414 0 A
+port 9 se
+rlabel metal1 274 414 302 535 0 A
+port 10 se
+rlabel metal1 562 414 590 535 0 A
+port 11 se
+rlabel metal1 274 535 590 563 0 A
+port 12 se
+<< properties >>
+string FIXED_BBOX 0 0 3744 666
+<< end >>
diff --git a/cells/mag/HAX1.lef b/cells/mag/HAX1.lef
new file mode 100644
index 0000000..0a950dc
--- /dev/null
+++ b/cells/mag/HAX1.lef
@@ -0,0 +1,213 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO HAX1
+  CLASS CORE ;
+  FOREIGN HAX1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 15.840 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 5.615 1.780 5.905 2.070 ;
+        RECT 11.375 1.780 11.665 2.070 ;
+        RECT 5.690 1.135 5.830 1.780 ;
+        RECT 11.450 1.135 11.590 1.780 ;
+        RECT 5.615 1.060 5.905 1.135 ;
+        RECT 11.375 1.060 11.665 1.135 ;
+        RECT 5.615 0.920 11.665 1.060 ;
+        RECT 5.615 0.845 5.905 0.920 ;
+        RECT 11.375 0.845 11.665 0.920 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 4.175 2.815 4.465 2.890 ;
+        RECT 4.175 2.675 10.150 2.815 ;
+        RECT 4.175 2.600 4.465 2.675 ;
+        RECT 10.010 2.070 10.150 2.675 ;
+        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 9.935 1.780 10.225 2.070 ;
+        RECT 4.250 1.135 4.390 1.780 ;
+        RECT 4.175 0.845 4.465 1.135 ;
+    END
+  END B
+  PIN VGND
+    ANTENNADIFFAREA 1.408400 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 6.095 0.440 6.385 0.730 ;
+        RECT 7.775 0.440 8.065 0.730 ;
+        RECT 13.535 0.440 13.825 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 6.170 0.240 6.310 0.440 ;
+        RECT 7.850 0.240 7.990 0.440 ;
+        RECT 13.610 0.240 13.750 0.440 ;
+        RECT 0.000 -0.240 15.840 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 15.840 3.570 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 11.855 2.735 12.145 3.090 ;
+        RECT 13.535 2.735 13.825 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 3.074400 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 15.840 3.415 ;
+        RECT 0.155 3.215 15.685 3.245 ;
+        RECT 0.155 3.090 11.665 3.215 ;
+        RECT 12.335 3.090 15.685 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
+        RECT 4.635 2.715 4.965 3.090 ;
+        RECT 7.755 2.715 8.085 3.090 ;
+        RECT 13.515 2.715 13.845 3.090 ;
+      LAYER mcon ;
+        RECT 4.715 3.245 4.885 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
+        RECT 13.595 2.795 13.765 2.965 ;
+    END
+  END VPWR
+  PIN YC
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.575 2.195 0.865 2.485 ;
+        RECT 0.650 0.730 0.790 2.195 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+    END
+  END YC
+  PIN YS
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 14.735 2.195 15.025 2.485 ;
+        RECT 14.810 0.730 14.950 2.195 ;
+        RECT 14.735 0.440 15.025 0.730 ;
+    END
+  END YS
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 15.840 3.330 ;
+      LAYER li1 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 3.435 2.175 3.765 2.505 ;
+        RECT 4.235 2.090 4.405 2.830 ;
+        RECT 11.835 2.715 12.165 3.045 ;
+        RECT 6.075 2.260 6.405 2.505 ;
+        RECT 6.095 2.175 6.405 2.260 ;
+        RECT 9.435 2.260 9.765 2.505 ;
+        RECT 14.715 2.260 15.045 2.505 ;
+        RECT 9.435 2.175 9.745 2.260 ;
+        RECT 14.735 2.175 15.045 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 8.475 1.760 8.805 2.090 ;
+        RECT 9.915 1.760 10.245 2.090 ;
+        RECT 11.355 1.760 11.685 2.090 ;
+        RECT 14.235 1.760 14.565 2.090 ;
+        RECT 8.555 1.155 8.725 1.760 ;
+        RECT 9.995 1.155 10.165 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 5.595 0.825 5.925 1.155 ;
+        RECT 8.475 0.825 8.805 1.155 ;
+        RECT 9.915 0.920 10.245 1.155 ;
+        RECT 9.935 0.825 10.225 0.920 ;
+        RECT 10.475 0.750 10.645 1.480 ;
+        RECT 11.355 0.920 11.685 1.155 ;
+        RECT 14.235 0.920 14.565 1.155 ;
+        RECT 11.355 0.825 11.665 0.920 ;
+        RECT 14.235 0.825 14.545 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.435 0.420 3.765 0.750 ;
+        RECT 6.095 0.655 6.405 0.750 ;
+        RECT 6.075 0.420 6.405 0.655 ;
+        RECT 7.755 0.420 8.085 0.750 ;
+        RECT 9.435 0.420 9.765 0.750 ;
+        RECT 10.395 0.420 10.725 0.750 ;
+        RECT 11.835 0.420 12.165 0.750 ;
+        RECT 13.515 0.420 13.845 0.750 ;
+        RECT 14.715 0.420 15.045 0.750 ;
+        RECT 0.155 0.085 15.685 0.240 ;
+        RECT 0.000 -0.085 15.840 0.085 ;
+      LAYER mcon ;
+        RECT 4.235 2.660 4.405 2.830 ;
+        RECT 11.915 2.795 12.085 2.965 ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 3.515 2.255 3.685 2.425 ;
+        RECT 6.155 2.255 6.325 2.425 ;
+        RECT 9.515 2.255 9.685 2.425 ;
+        RECT 14.795 2.255 14.965 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 8.555 1.840 8.725 2.010 ;
+        RECT 9.995 1.840 10.165 2.010 ;
+        RECT 11.435 1.840 11.605 2.010 ;
+        RECT 14.315 1.840 14.485 2.010 ;
+        RECT 10.475 1.310 10.645 1.480 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 11.435 0.905 11.605 1.075 ;
+        RECT 14.315 0.905 14.485 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.515 0.500 3.685 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 7.835 0.500 8.005 0.670 ;
+        RECT 9.515 0.500 9.685 0.670 ;
+        RECT 11.915 0.500 12.085 0.670 ;
+        RECT 13.595 0.500 13.765 0.670 ;
+        RECT 14.795 0.500 14.965 0.670 ;
+        RECT 7.835 -0.085 8.005 0.085 ;
+      LAYER met1 ;
+        RECT 3.455 2.410 3.745 2.485 ;
+        RECT 6.095 2.410 6.385 2.485 ;
+        RECT 3.455 2.270 8.710 2.410 ;
+        RECT 3.455 2.195 3.745 2.270 ;
+        RECT 6.095 2.195 6.385 2.270 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 1.060 1.585 1.135 ;
+        RECT 3.530 1.060 3.670 2.195 ;
+        RECT 8.570 2.070 8.710 2.270 ;
+        RECT 9.455 2.195 9.745 2.485 ;
+        RECT 10.490 2.270 14.470 2.410 ;
+        RECT 8.495 1.780 8.785 2.070 ;
+        RECT 9.530 1.465 9.670 2.195 ;
+        RECT 10.490 1.540 10.630 2.270 ;
+        RECT 14.330 2.070 14.470 2.270 ;
+        RECT 14.255 1.780 14.545 2.070 ;
+        RECT 10.415 1.465 10.705 1.540 ;
+        RECT 9.530 1.325 10.705 1.465 ;
+        RECT 10.415 1.250 10.705 1.325 ;
+        RECT 14.330 1.135 14.470 1.780 ;
+        RECT 1.295 0.920 3.670 1.060 ;
+        RECT 1.295 0.845 1.585 0.920 ;
+        RECT 3.530 0.730 3.670 0.920 ;
+        RECT 14.255 0.845 14.545 1.135 ;
+        RECT 3.455 0.440 3.745 0.730 ;
+        RECT 9.455 0.655 9.745 0.730 ;
+        RECT 11.855 0.655 12.145 0.730 ;
+        RECT 9.455 0.515 12.145 0.655 ;
+        RECT 9.455 0.440 9.745 0.515 ;
+        RECT 11.855 0.440 12.145 0.515 ;
+  END
+END HAX1
+END LIBRARY
+
diff --git a/cells/mag/HAX1.mag b/cells/mag/HAX1.mag
new file mode 100644
index 0000000..f55e118
--- /dev/null
+++ b/cells/mag/HAX1.mag
@@ -0,0 +1,668 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809587
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 3168 666
+<< nmos >>
+rect 273 48 303 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+rect 2289 48 2319 132
+rect 2865 48 2895 132
+<< pmos >>
+rect 273 450 303 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+rect 2289 450 2319 618
+rect 2865 450 2895 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 691 134 749 146
+rect 401 100 461 132
+rect 303 48 461 100
+rect 691 100 703 134
+rect 737 132 749 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 737 100 849 132
+rect 691 48 849 100
+rect 879 48 1137 132
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1555 134 1613 146
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+rect 1555 100 1567 134
+rect 1601 132 1613 134
+rect 1891 134 1949 146
+rect 1891 132 1903 134
+rect 1601 100 1713 132
+rect 1555 48 1713 100
+rect 1743 100 1903 132
+rect 1937 132 1949 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1937 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2707 134 2765 146
+rect 2417 100 2477 132
+rect 2319 48 2477 100
+rect 2707 100 2719 134
+rect 2753 132 2765 134
+rect 2947 134 3005 146
+rect 2947 132 2959 134
+rect 2753 100 2865 132
+rect 2707 48 2865 100
+rect 2895 100 2959 132
+rect 2993 132 3005 134
+rect 2993 100 3053 132
+rect 2895 48 3053 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
+rect 691 485 849 618
+rect 691 451 703 485
+rect 737 451 849 485
+rect 691 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 1555 593 1713 618
+rect 1555 559 1567 593
+rect 1601 559 1713 593
+rect 1555 450 1713 559
+rect 1743 485 2001 618
+rect 1743 451 1903 485
+rect 1937 451 2001 485
+rect 1743 450 2001 451
+rect 2031 450 2289 618
+rect 2319 593 2477 618
+rect 2319 559 2383 593
+rect 2417 559 2477 593
+rect 2319 450 2477 559
+rect 2707 593 2865 618
+rect 2707 559 2719 593
+rect 2753 559 2865 593
+rect 2707 450 2865 559
+rect 2895 485 3053 618
+rect 2895 451 2959 485
+rect 2993 451 3053 485
+rect 2895 450 3053 451
+rect 115 439 173 450
+rect 691 439 749 450
+rect 1219 439 1277 450
+rect 1891 439 1949 450
+rect 2947 439 3005 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 703 100 737 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1903 100 1937 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2719 100 2753 134
+rect 2959 100 2993 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 559 401 593
+rect 703 451 737 485
+rect 943 559 977 593
+rect 1231 451 1265 485
+rect 1567 559 1601 593
+rect 1903 451 1937 485
+rect 2383 559 2417 593
+rect 2719 559 2753 593
+rect 2959 451 2993 485
+<< poly >>
+rect 273 618 303 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 2289 618 2319 644
+rect 2865 618 2895 644
+rect 273 418 303 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1713 418 1743 450
+rect 2001 418 2031 450
+rect 2289 418 2319 450
+rect 2865 418 2895 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 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 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 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 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 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 2847 215 2913 231
+rect 2847 181 2863 215
+rect 2897 181 2913 215
+rect 2847 165 2913 181
+rect 273 132 303 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 2289 132 2319 165
+rect 2865 132 2895 165
+rect 273 22 303 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+rect 2289 22 2319 48
+rect 2865 22 2895 48
+<< polycont >>
+rect 271 368 305 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 2863 368 2897 402
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 181 2321 215
+rect 2863 181 2897 215
+<< locali >>
+rect 0 649 943 683
+rect 977 649 3168 683
+rect 31 643 3137 649
+rect 31 618 2333 643
+rect 2467 618 3137 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 927 593 993 618
+rect 351 543 417 559
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 1551 593 1617 618
+rect 1551 559 1567 593
+rect 1601 559 1617 593
+rect 1551 543 1617 559
+rect 2367 593 2433 609
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2367 543 2433 559
+rect 2703 593 2769 618
+rect 2703 559 2719 593
+rect 2753 559 2769 593
+rect 2703 543 2769 559
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 687 485 753 501
+rect 687 451 703 485
+rect 737 451 753 485
+rect 687 435 753 451
+rect 847 418 881 532
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 451
+rect 1887 485 1953 501
+rect 1887 451 1903 485
+rect 1937 452 1953 485
+rect 2943 485 3009 501
+rect 2943 452 2959 485
+rect 1937 451 1949 452
+rect 1887 435 1949 451
+rect 2947 451 2959 452
+rect 2993 451 3009 485
+rect 2947 435 3009 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 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 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 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 1711 231 1745 352
+rect 1999 231 2033 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 831 215 897 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1983 215 2049 231
+rect 1983 184 1999 215
+rect 1695 165 1761 181
+rect 1987 181 1999 184
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1987 165 2045 181
+rect 2095 150 2129 262
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 184 2337 215
+rect 2847 215 2913 231
+rect 2321 181 2333 184
+rect 2271 165 2333 181
+rect 2847 181 2863 215
+rect 2897 184 2913 215
+rect 2897 181 2909 184
+rect 2847 165 2909 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 687 134 753 150
+rect 687 100 703 134
+rect 737 100 753 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 687 84 753 100
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1551 134 1617 150
+rect 1551 100 1567 134
+rect 1601 100 1617 134
+rect 1551 84 1617 100
+rect 1887 134 1953 150
+rect 1887 100 1903 134
+rect 1937 100 1953 134
+rect 1887 84 1953 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 2367 134 2433 150
+rect 2367 100 2383 134
+rect 2417 100 2433 134
+rect 2367 84 2433 100
+rect 2703 134 2769 150
+rect 2703 100 2719 134
+rect 2753 100 2769 134
+rect 2703 84 2769 100
+rect 2943 134 3009 150
+rect 2943 100 2959 134
+rect 2993 100 3009 134
+rect 2943 84 3009 100
+rect 31 17 3137 48
+rect 0 -17 1567 17
+rect 1601 -17 3168 17
+<< viali >>
+rect 943 649 977 683
+rect 367 559 401 593
+rect 847 532 881 566
+rect 2383 559 2417 593
+rect 2719 559 2753 593
+rect 127 451 161 485
+rect 703 451 737 485
+rect 1231 451 1265 485
+rect 1903 451 1937 485
+rect 2959 451 2993 485
+rect 271 368 305 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 2863 368 2897 402
+rect 2095 262 2129 296
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 2287 181 2321 215
+rect 2863 181 2897 215
+rect 127 100 161 134
+rect 367 100 401 134
+rect 703 100 737 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1903 100 1937 134
+rect 2383 100 2417 134
+rect 2719 100 2753 134
+rect 2959 100 2993 134
+rect 1567 -17 1601 17
+<< metal1 >>
+rect 0 683 3168 714
+rect 0 649 943 683
+rect 977 649 3168 683
+rect 0 618 3168 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 2371 593 2429 618
+rect 355 547 413 559
+rect 835 566 893 578
+rect 835 532 847 566
+rect 881 563 893 566
+rect 881 535 2030 563
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2371 547 2429 559
+rect 2707 593 2765 618
+rect 2707 559 2719 593
+rect 2753 559 2765 593
+rect 2707 547 2765 559
+rect 881 532 893 535
+rect 835 520 893 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 691 485 749 497
+rect 691 451 703 485
+rect 737 482 749 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 737 454 1231 482
+rect 737 451 749 454
+rect 691 439 749 451
+rect 1219 451 1231 454
+rect 1265 482 1277 485
+rect 1891 485 1949 497
+rect 1265 454 1742 482
+rect 1265 451 1277 454
+rect 1219 439 1277 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 212 317 215
+rect 706 212 734 439
+rect 1714 414 1742 454
+rect 1891 451 1903 485
+rect 1937 451 1949 485
+rect 1891 439 1949 451
+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 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 850 227 878 356
+rect 1138 227 1166 356
+rect 1906 293 1934 439
+rect 2002 414 2030 535
+rect 2947 485 3005 497
+rect 2098 454 2894 482
+rect 1987 402 2045 414
+rect 1987 368 1999 402
+rect 2033 368 2045 402
+rect 1987 356 2045 368
+rect 2098 308 2126 454
+rect 2866 414 2894 454
+rect 2947 451 2959 485
+rect 2993 451 3005 485
+rect 2947 439 3005 451
+rect 2275 402 2333 414
+rect 2275 368 2287 402
+rect 2321 368 2333 402
+rect 2275 356 2333 368
+rect 2851 402 2909 414
+rect 2851 368 2863 402
+rect 2897 368 2909 402
+rect 2851 356 2909 368
+rect 2083 296 2141 308
+rect 2083 293 2095 296
+rect 1906 265 2095 293
+rect 2083 262 2095 265
+rect 2129 262 2141 296
+rect 2083 250 2141 262
+rect 2290 227 2318 356
+rect 2866 227 2894 356
+rect 305 184 734 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 706 146 734 184
+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 2275 215 2333 227
+rect 2275 212 2287 215
+rect 1169 184 2287 212
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 2275 181 2287 184
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 2851 215 2909 227
+rect 2851 181 2863 215
+rect 2897 181 2909 215
+rect 2851 169 2909 181
+rect 2962 146 2990 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 691 134 749 146
+rect 691 100 703 134
+rect 737 100 749 134
+rect 691 88 749 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1555 134 1613 146
+rect 1555 100 1567 134
+rect 1601 100 1613 134
+rect 1555 88 1613 100
+rect 1891 134 1949 146
+rect 1891 100 1903 134
+rect 1937 131 1949 134
+rect 2371 134 2429 146
+rect 2371 131 2383 134
+rect 1937 103 2383 131
+rect 1937 100 1949 103
+rect 1891 88 1949 100
+rect 2371 100 2383 103
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 2707 134 2765 146
+rect 2707 100 2719 134
+rect 2753 100 2765 134
+rect 2707 88 2765 100
+rect 2947 134 3005 146
+rect 2947 100 2959 134
+rect 2993 100 3005 134
+rect 2947 88 3005 100
+rect 370 48 398 88
+rect 1234 48 1262 88
+rect 1570 48 1598 88
+rect 2722 48 2750 88
+rect 0 17 3168 48
+rect 0 -17 1567 17
+rect 1601 -17 3168 17
+rect 0 -48 3168 -17
+<< labels >>
+rlabel metal1 0 618 3168 714 0 VPWR
+port 3 se
+rlabel metal1 0 618 3168 714 0 VPWR
+port 3 se
+rlabel metal1 0 -48 3168 48 0 VGND
+port 2 se
+rlabel metal1 0 -48 3168 48 0 VGND
+port 2 se
+rlabel metal1 115 88 173 146 0 YC
+port 4 se
+rlabel metal1 130 146 158 439 0 YC
+port 4 se
+rlabel metal1 115 439 173 497 0 YC
+port 4 se
+rlabel metal1 2947 88 3005 146 0 YS
+port 5 se
+rlabel metal1 2962 146 2990 439 0 YS
+port 5 se
+rlabel metal1 2947 439 3005 497 0 YS
+port 5 se
+rlabel metal1 835 169 893 227 0 B
+port 1 se
+rlabel metal1 850 227 878 356 0 B
+port 1 se
+rlabel metal1 835 356 893 414 0 B
+port 1 se
+rlabel metal1 1123 169 1181 184 0 A
+port 0 se
+rlabel metal1 2275 169 2333 184 0 A
+port 0 se
+rlabel metal1 1123 184 2333 212 0 A
+port 0 se
+rlabel metal1 1123 212 1181 227 0 A
+port 0 se
+rlabel metal1 2275 212 2333 227 0 A
+port 0 se
+rlabel metal1 1138 227 1166 356 0 A
+port 0 se
+rlabel metal1 2290 227 2318 356 0 A
+port 0 se
+rlabel metal1 1123 356 1181 414 0 A
+port 0 se
+rlabel metal1 2275 356 2333 414 0 A
+port 0 se
+rlabel locali 0 -17 3168 17 4 VGND
+port 2 se ground default abutment
+rlabel locali 31 17 3137 48 4 VGND
+port 2 se ground default abutment
+rlabel locali 0 649 3168 683 4 VPWR
+port 3 se power default abutment
+rlabel metal1 31 618 3137 649 4 VGND
+port 2 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 3168 666
+<< end >>
diff --git a/cells/mag/HAX1.mag.beforemagic b/cells/mag/HAX1.mag.beforemagic
new file mode 100644
index 0000000..936fee1
--- /dev/null
+++ b/cells/mag/HAX1.mag.beforemagic
@@ -0,0 +1,660 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636755754
+<< nwell >>
+rect 0 358 3168 666
+<< nmos >>
+rect 273 48 303 132
+rect 849 48 879 132
+rect 1137 48 1167 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+rect 2289 48 2319 132
+rect 2865 48 2895 132
+<< pmos >>
+rect 273 450 303 618
+rect 849 450 879 618
+rect 1137 450 1167 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+rect 2289 450 2319 618
+rect 2865 450 2895 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 691 134 749 146
+rect 401 100 461 132
+rect 303 48 461 100
+rect 691 100 703 134
+rect 737 132 749 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 737 100 849 132
+rect 691 48 849 100
+rect 879 48 1137 132
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1555 134 1613 146
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+rect 1555 100 1567 134
+rect 1601 132 1613 134
+rect 1891 134 1949 146
+rect 1891 132 1903 134
+rect 1601 100 1713 132
+rect 1555 48 1713 100
+rect 1743 100 1903 132
+rect 1937 132 1949 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1937 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2371 134 2429 146
+rect 2371 132 2383 134
+rect 2129 100 2289 132
+rect 2031 48 2289 100
+rect 2319 100 2383 132
+rect 2417 132 2429 134
+rect 2707 134 2765 146
+rect 2417 100 2477 132
+rect 2319 48 2477 100
+rect 2707 100 2719 134
+rect 2753 132 2765 134
+rect 2947 134 3005 146
+rect 2947 132 2959 134
+rect 2753 100 2865 132
+rect 2707 48 2865 100
+rect 2895 100 2959 132
+rect 2993 132 3005 134
+rect 2993 100 3053 132
+rect 2895 48 3053 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
+rect 691 485 849 618
+rect 691 451 703 485
+rect 737 451 849 485
+rect 691 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 1555 593 1713 618
+rect 1555 559 1567 593
+rect 1601 559 1713 593
+rect 1555 450 1713 559
+rect 1743 485 2001 618
+rect 1743 451 1903 485
+rect 1937 451 2001 485
+rect 1743 450 2001 451
+rect 2031 450 2289 618
+rect 2319 593 2477 618
+rect 2319 559 2383 593
+rect 2417 559 2477 593
+rect 2319 450 2477 559
+rect 2707 593 2865 618
+rect 2707 559 2719 593
+rect 2753 559 2865 593
+rect 2707 450 2865 559
+rect 2895 485 3053 618
+rect 2895 451 2959 485
+rect 2993 451 3053 485
+rect 2895 450 3053 451
+rect 115 439 173 450
+rect 691 439 749 450
+rect 1219 439 1277 450
+rect 1891 439 1949 450
+rect 2947 439 3005 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 703 100 737 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1903 100 1937 134
+rect 2095 100 2129 134
+rect 2383 100 2417 134
+rect 2719 100 2753 134
+rect 2959 100 2993 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 559 401 593
+rect 703 451 737 485
+rect 943 559 977 593
+rect 1231 451 1265 485
+rect 1567 559 1601 593
+rect 1903 451 1937 485
+rect 2383 559 2417 593
+rect 2719 559 2753 593
+rect 2959 451 2993 485
+<< poly >>
+rect 273 618 303 644
+rect 849 618 879 644
+rect 1137 618 1167 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 2289 618 2319 644
+rect 2865 618 2895 644
+rect 273 418 303 450
+rect 849 418 879 450
+rect 1137 418 1167 450
+rect 1713 418 1743 450
+rect 2001 418 2031 450
+rect 2289 418 2319 450
+rect 2865 418 2895 450
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 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 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 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 181 321 215
+rect 255 165 321 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 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 2847 215 2913 231
+rect 2847 181 2863 215
+rect 2897 181 2913 215
+rect 2847 165 2913 181
+rect 273 132 303 165
+rect 849 132 879 165
+rect 1137 132 1167 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 2289 132 2319 165
+rect 2865 132 2895 165
+rect 273 22 303 48
+rect 849 22 879 48
+rect 1137 22 1167 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+rect 2289 22 2319 48
+rect 2865 22 2895 48
+<< polycont >>
+rect 271 368 305 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 2863 368 2897 402
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 2287 181 2321 215
+rect 2863 181 2897 215
+<< locali >>
+rect 0 683 3168 714
+rect 0 649 943 683
+rect 977 649 3168 683
+rect 0 643 3168 649
+rect 0 618 2333 643
+rect 2467 618 3168 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 927 593 993 618
+rect 351 543 417 559
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 1551 593 1617 618
+rect 1551 559 1567 593
+rect 1601 559 1617 593
+rect 1551 543 1617 559
+rect 2367 593 2433 609
+rect 2367 559 2383 593
+rect 2417 559 2433 593
+rect 2367 543 2433 559
+rect 2703 593 2769 618
+rect 2703 559 2719 593
+rect 2753 559 2769 593
+rect 2703 543 2769 559
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 687 485 753 501
+rect 687 451 703 485
+rect 737 451 753 485
+rect 687 435 753 451
+rect 847 418 881 532
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 451
+rect 1887 485 1953 501
+rect 1887 451 1903 485
+rect 1937 452 1953 485
+rect 2943 485 3009 501
+rect 2943 452 2959 485
+rect 1937 451 1949 452
+rect 1887 435 1949 451
+rect 2947 451 2959 452
+rect 2993 451 3009 485
+rect 2947 435 3009 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 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 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 2847 402 2913 418
+rect 2847 368 2863 402
+rect 2897 368 2913 402
+rect 2847 352 2913 368
+rect 1711 231 1745 352
+rect 1999 231 2033 352
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 831 215 897 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 1695 215 1761 231
+rect 1695 181 1711 215
+rect 1745 181 1761 215
+rect 1983 215 2049 231
+rect 1983 184 1999 215
+rect 1695 165 1761 181
+rect 1987 181 1999 184
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1987 165 2045 181
+rect 2095 150 2129 262
+rect 2271 215 2337 231
+rect 2271 181 2287 215
+rect 2321 184 2337 215
+rect 2847 215 2913 231
+rect 2321 181 2333 184
+rect 2271 165 2333 181
+rect 2847 181 2863 215
+rect 2897 184 2913 215
+rect 2897 181 2909 184
+rect 2847 165 2909 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 687 134 753 150
+rect 687 100 703 134
+rect 737 100 753 134
+rect 1219 134 1281 150
+rect 1219 131 1231 134
+rect 687 84 753 100
+rect 1215 100 1231 131
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1551 134 1617 150
+rect 1551 100 1567 134
+rect 1601 100 1617 134
+rect 1551 84 1617 100
+rect 1887 134 1953 150
+rect 1887 100 1903 134
+rect 1937 100 1953 134
+rect 1887 84 1953 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 2367 134 2433 150
+rect 2367 100 2383 134
+rect 2417 100 2433 134
+rect 2367 84 2433 100
+rect 2703 134 2769 150
+rect 2703 100 2719 134
+rect 2753 100 2769 134
+rect 2703 84 2769 100
+rect 2943 134 3009 150
+rect 2943 100 2959 134
+rect 2993 100 3009 134
+rect 2943 84 3009 100
+rect 0 17 3168 48
+rect 0 -17 1567 17
+rect 1601 -17 3168 17
+rect 0 -48 3168 -17
+<< viali >>
+rect 943 649 977 683
+rect 367 559 401 593
+rect 847 532 881 566
+rect 2383 559 2417 593
+rect 2719 559 2753 593
+rect 127 451 161 485
+rect 703 451 737 485
+rect 1231 451 1265 485
+rect 1903 451 1937 485
+rect 2959 451 2993 485
+rect 271 368 305 402
+rect 847 368 881 402
+rect 1135 368 1169 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 2287 368 2321 402
+rect 2863 368 2897 402
+rect 2095 262 2129 296
+rect 271 181 305 215
+rect 847 181 881 215
+rect 1135 181 1169 215
+rect 2287 181 2321 215
+rect 2863 181 2897 215
+rect 127 100 161 134
+rect 367 100 401 134
+rect 703 100 737 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1903 100 1937 134
+rect 2383 100 2417 134
+rect 2719 100 2753 134
+rect 2959 100 2993 134
+rect 1567 -17 1601 17
+<< metal1 >>
+rect 0 683 3168 714
+rect 0 649 943 683
+rect 977 649 3168 683
+rect 0 618 3168 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 2371 593 2429 618
+rect 355 547 413 559
+rect 835 566 893 578
+rect 835 532 847 566
+rect 881 563 893 566
+rect 881 535 2030 563
+rect 2371 559 2383 593
+rect 2417 559 2429 593
+rect 2371 547 2429 559
+rect 2707 593 2765 618
+rect 2707 559 2719 593
+rect 2753 559 2765 593
+rect 2707 547 2765 559
+rect 881 532 893 535
+rect 835 520 893 532
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 691 485 749 497
+rect 691 451 703 485
+rect 737 482 749 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 737 454 1231 482
+rect 737 451 749 454
+rect 691 439 749 451
+rect 1219 451 1231 454
+rect 1265 482 1277 485
+rect 1891 485 1949 497
+rect 1265 454 1742 482
+rect 1265 451 1277 454
+rect 1219 439 1277 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 212 317 215
+rect 706 212 734 439
+rect 1714 414 1742 454
+rect 1891 451 1903 485
+rect 1937 451 1949 485
+rect 1891 439 1949 451
+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 1699 402 1757 414
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 850 227 878 356
+rect 1138 227 1166 356
+rect 1906 293 1934 439
+rect 2002 414 2030 535
+rect 2947 485 3005 497
+rect 2098 454 2894 482
+rect 1987 402 2045 414
+rect 1987 368 1999 402
+rect 2033 368 2045 402
+rect 1987 356 2045 368
+rect 2098 308 2126 454
+rect 2866 414 2894 454
+rect 2947 451 2959 485
+rect 2993 451 3005 485
+rect 2947 439 3005 451
+rect 2275 402 2333 414
+rect 2275 368 2287 402
+rect 2321 368 2333 402
+rect 2275 356 2333 368
+rect 2851 402 2909 414
+rect 2851 368 2863 402
+rect 2897 368 2909 402
+rect 2851 356 2909 368
+rect 2083 296 2141 308
+rect 2083 293 2095 296
+rect 1906 265 2095 293
+rect 2083 262 2095 265
+rect 2129 262 2141 296
+rect 2083 250 2141 262
+rect 2290 227 2318 356
+rect 2866 227 2894 356
+rect 305 184 734 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 706 146 734 184
+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 2275 215 2333 227
+rect 2275 212 2287 215
+rect 1169 184 2287 212
+rect 1169 181 1181 184
+rect 1123 169 1181 181
+rect 2275 181 2287 184
+rect 2321 181 2333 215
+rect 2275 169 2333 181
+rect 2851 215 2909 227
+rect 2851 181 2863 215
+rect 2897 181 2909 215
+rect 2851 169 2909 181
+rect 2962 146 2990 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 691 134 749 146
+rect 691 100 703 134
+rect 737 100 749 134
+rect 691 88 749 100
+rect 1219 134 1277 146
+rect 1219 100 1231 134
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 1555 134 1613 146
+rect 1555 100 1567 134
+rect 1601 100 1613 134
+rect 1555 88 1613 100
+rect 1891 134 1949 146
+rect 1891 100 1903 134
+rect 1937 131 1949 134
+rect 2371 134 2429 146
+rect 2371 131 2383 134
+rect 1937 103 2383 131
+rect 1937 100 1949 103
+rect 1891 88 1949 100
+rect 2371 100 2383 103
+rect 2417 100 2429 134
+rect 2371 88 2429 100
+rect 2707 134 2765 146
+rect 2707 100 2719 134
+rect 2753 100 2765 134
+rect 2707 88 2765 100
+rect 2947 134 3005 146
+rect 2947 100 2959 134
+rect 2993 100 3005 134
+rect 2947 88 3005 100
+rect 370 48 398 88
+rect 1234 48 1262 88
+rect 1570 48 1598 88
+rect 2722 48 2750 88
+rect 0 17 3168 48
+rect 0 -17 1567 17
+rect 1601 -17 3168 17
+rect 0 -48 3168 -17
+<< labels >>
+rlabel metal1 0 618 3168 714 0 VDD
+port 1 se
+rlabel metal1 0 618 3168 714 0 VDD
+port 2 se
+rlabel locali 0 -48 3168 48 0 GND
+port 3 se
+rlabel metal1 0 -48 3168 48 0 GND
+port 4 se
+rlabel metal1 115 88 173 146 0 YC
+port 5 se
+rlabel metal1 130 146 158 439 0 YC
+port 6 se
+rlabel metal1 115 439 173 497 0 YC
+port 7 se
+rlabel metal1 2947 88 3005 146 0 YS
+port 8 se
+rlabel metal1 2962 146 2990 439 0 YS
+port 9 se
+rlabel metal1 2947 439 3005 497 0 YS
+port 10 se
+rlabel metal1 835 169 893 227 0 B
+port 11 se
+rlabel metal1 850 227 878 356 0 B
+port 12 se
+rlabel metal1 835 356 893 414 0 B
+port 13 se
+rlabel metal1 1123 169 1181 184 0 A
+port 14 se
+rlabel metal1 2275 169 2333 184 0 A
+port 15 se
+rlabel metal1 1123 184 2333 212 0 A
+port 16 se
+rlabel metal1 1123 212 1181 227 0 A
+port 17 se
+rlabel metal1 2275 212 2333 227 0 A
+port 18 se
+rlabel metal1 1138 227 1166 356 0 A
+port 19 se
+rlabel metal1 2290 227 2318 356 0 A
+port 20 se
+rlabel metal1 1123 356 1181 414 0 A
+port 21 se
+rlabel metal1 2275 356 2333 414 0 A
+port 22 se
+<< properties >>
+string FIXED_BBOX 0 0 3168 666
+<< end >>
diff --git a/cells/mag/INV.lef b/cells/mag/INV.lef
index d0194d2..cf2463e 100644
--- a/cells/mag/INV.lef
+++ b/cells/mag/INV.lef
@@ -17,38 +17,19 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.331800 ;
+    ANTENNADIFFAREA 0.352100 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 2.725 0.240 ;
-        RECT 0.000 -0.085 2.880 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -57,15 +38,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 2.880 3.415 ;
         RECT 0.155 3.090 2.725 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -76,22 +52,26 @@
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 0.575 0.440 0.865 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 2.880 3.330 ;
       LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 0.155 0.085 2.725 0.240 ;
+        RECT 0.000 -0.085 2.880 0.085 ;
       LAYER mcon ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
   END
 END INV
 END LIBRARY
diff --git a/cells/mag/INV.mag b/cells/mag/INV.mag
index 9bff3f1..f18c9e1 100644
--- a/cells/mag/INV.mag
+++ b/cells/mag/INV.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953863
+timestamp 1636809588
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -14,28 +14,30 @@
 rect 115 134 173 146
 rect 115 100 127 134
 rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 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
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 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 461 618
-rect 303 564 367 598
-rect 401 564 461 598
-rect 303 450 461 564
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 << poly >>
 rect 273 618 303 644
 rect 273 418 303 450
@@ -53,18 +55,13 @@
 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 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -75,57 +72,38 @@
 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 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
 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
+rect 0 -17 367 17
+rect 401 -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 367 649 401 683
+rect 367 559 401 593
 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
+rect 367 100 401 134
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 451 173 485
@@ -144,18 +122,14 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
 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 -17 367 17
+rect 401 -17 576 17
 rect 0 -48 576 -17
 << labels >>
 rlabel metal1 0 618 576 714 0 VPWR
diff --git a/cells/mag/INV.mag.beforemagic b/cells/mag/INV.mag.beforemagic
index 4c9a00f..72403a1 100644
--- a/cells/mag/INV.mag.beforemagic
+++ b/cells/mag/INV.mag.beforemagic
@@ -1,104 +1,157 @@
 magic
-# Generated by librecell
 tech sky130A
 magscale 1 2
-timestamp 1624753132
+timestamp 1636755779
 << 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 >>
+<< 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 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
-rect 115 450 461 618
-<< polycont >>
-rect 271 181 305 215
-rect 271 368 305 402
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-<< ndiffc >>
-rect 367 68 401 102
+rect 367 559 401 593
+<< 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 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+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 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
+<< viali >>
+rect 367 649 401 683
+rect 367 559 401 593
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
 rect 127 100 161 134
-<< allnactivetap >>
-<< allpactivetap >>
+rect 367 100 401 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+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 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 618 576 714 0 VDD
+rlabel locali 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 618 576 714 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -48 576 48 0 GND
+rlabel locali 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -48 576 48 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 115 88 173 146 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 130 146 158 439 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 115 439 173 497 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 259 169 317 227 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 274 227 302 356 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 259 356 317 414 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INVX1.lef b/cells/mag/INVX1.lef
index 49571c6..c148cac 100644
--- a/cells/mag/INVX1.lef
+++ b/cells/mag/INVX1.lef
@@ -17,38 +17,19 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.331800 ;
+    ANTENNADIFFAREA 0.352100 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 2.725 0.240 ;
-        RECT 0.000 -0.085 2.880 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -57,15 +38,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 2.880 3.415 ;
         RECT 0.155 3.090 2.725 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -76,22 +52,26 @@
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 0.575 0.440 0.865 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 2.880 3.330 ;
       LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 0.155 0.085 2.725 0.240 ;
+        RECT 0.000 -0.085 2.880 0.085 ;
       LAYER mcon ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
   END
 END INVX1
 END LIBRARY
diff --git a/cells/mag/INVX1.mag b/cells/mag/INVX1.mag
index 9425b6a..05e0eb7 100644
--- a/cells/mag/INVX1.mag
+++ b/cells/mag/INVX1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953864
+timestamp 1636809589
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -14,28 +14,30 @@
 rect 115 134 173 146
 rect 115 100 127 134
 rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 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
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 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 461 618
-rect 303 564 367 598
-rect 401 564 461 598
-rect 303 450 461 564
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 << poly >>
 rect 273 618 303 644
 rect 273 418 303 450
@@ -53,18 +55,13 @@
 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 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -75,57 +72,38 @@
 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 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
 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
+rect 0 -17 367 17
+rect 401 -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 367 649 401 683
+rect 367 559 401 593
 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
+rect 367 100 401 134
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 451 173 485
@@ -144,18 +122,14 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
 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 -17 367 17
+rect 401 -17 576 17
 rect 0 -48 576 -17
 << labels >>
 rlabel metal1 0 618 576 714 0 VPWR
diff --git a/cells/mag/INVX1.mag.beforemagic b/cells/mag/INVX1.mag.beforemagic
index bb7f05e..9c6f710 100644
--- a/cells/mag/INVX1.mag.beforemagic
+++ b/cells/mag/INVX1.mag.beforemagic
@@ -1,104 +1,157 @@
 magic
-# Generated by librecell
 tech sky130A
 magscale 1 2
-timestamp 1624753163
+timestamp 1636755811
 << 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 >>
+<< 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 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
-rect 115 450 461 618
-<< polycont >>
-rect 271 181 305 215
-rect 271 368 305 402
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-<< ndiffc >>
-rect 367 68 401 102
+rect 367 559 401 593
+<< 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 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+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 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
+<< viali >>
+rect 367 649 401 683
+rect 367 559 401 593
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
 rect 127 100 161 134
-<< allnactivetap >>
-<< allpactivetap >>
+rect 367 100 401 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+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 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 618 576 714 0 VDD
+rlabel locali 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 618 576 714 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -48 576 48 0 GND
+rlabel locali 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -48 576 48 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 115 88 173 146 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 130 146 158 439 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 115 439 173 497 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 259 169 317 227 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 274 227 302 356 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 259 356 317 414 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INVX2.lef b/cells/mag/INVX2.lef
index 49f7723..3be1f1c 100644
--- a/cells/mag/INVX2.lef
+++ b/cells/mag/INVX2.lef
@@ -17,38 +17,19 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.331800 ;
+    ANTENNADIFFAREA 0.352100 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 2.880 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 2.725 0.240 ;
-        RECT 0.000 -0.085 2.880 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 2.880 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -57,15 +38,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 2.880 3.415 ;
         RECT 0.155 3.090 2.725 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -76,22 +52,26 @@
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 0.575 0.440 0.865 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 2.880 3.330 ;
       LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 0.155 0.085 2.725 0.240 ;
+        RECT 0.000 -0.085 2.880 0.085 ;
       LAYER mcon ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
   END
 END INVX2
 END LIBRARY
diff --git a/cells/mag/INVX2.mag b/cells/mag/INVX2.mag
index cbac091..271d7a9 100644
--- a/cells/mag/INVX2.mag
+++ b/cells/mag/INVX2.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953865
+timestamp 1636809590
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -14,28 +14,30 @@
 rect 115 134 173 146
 rect 115 100 127 134
 rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 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
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 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 461 618
-rect 303 564 367 598
-rect 401 564 461 598
-rect 303 450 461 564
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 << poly >>
 rect 273 618 303 644
 rect 273 418 303 450
@@ -53,18 +55,13 @@
 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 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -75,57 +72,38 @@
 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 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
 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
+rect 0 -17 367 17
+rect 401 -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 367 649 401 683
+rect 367 559 401 593
 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
+rect 367 100 401 134
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 451 173 485
@@ -144,18 +122,14 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
 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 -17 367 17
+rect 401 -17 576 17
 rect 0 -48 576 -17
 << labels >>
 rlabel metal1 0 618 576 714 0 VPWR
diff --git a/cells/mag/INVX2.mag.beforemagic b/cells/mag/INVX2.mag.beforemagic
index 8c0f0f8..7303948 100644
--- a/cells/mag/INVX2.mag.beforemagic
+++ b/cells/mag/INVX2.mag.beforemagic
@@ -1,104 +1,157 @@
 magic
-# Generated by librecell
 tech sky130A
 magscale 1 2
-timestamp 1624753191
+timestamp 1636755843
 << 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 >>
+<< 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 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 401 100 461 132
+rect 303 48 461 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 593 461 618
+rect 303 559 367 593
+rect 401 559 461 593
+rect 303 450 461 559
 rect 115 439 173 450
-rect 115 450 461 618
-<< polycont >>
-rect 271 181 305 215
-rect 271 368 305 402
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-<< ndiffc >>
-rect 367 68 401 102
+rect 367 559 401 593
+<< 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 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+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 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
+<< viali >>
+rect 367 649 401 683
+rect 367 559 401 593
+rect 127 451 161 485
+rect 271 368 305 402
+rect 271 181 305 215
 rect 127 100 161 134
-<< allnactivetap >>
-<< allpactivetap >>
+rect 367 100 401 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 576 714
+rect 0 649 367 683
+rect 401 649 576 683
+rect 0 618 576 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+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 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 370 48 398 88
+rect 0 17 576 48
+rect 0 -17 367 17
+rect 401 -17 576 17
+rect 0 -48 576 -17
 << labels >>
-rlabel li1 0 618 576 714 0 VDD
+rlabel locali 0 618 576 714 0 VDD
 port 1 se
-rlabel met1 0 618 576 714 0 VDD
+rlabel metal1 0 618 576 714 0 VDD
 port 2 se
-rlabel li1 0 -48 576 48 0 GND
+rlabel locali 0 -48 576 48 0 GND
 port 3 se
-rlabel met1 0 -48 576 48 0 GND
+rlabel metal1 0 -48 576 48 0 GND
 port 4 se
-rlabel met1 115 88 173 146 0 Y
+rlabel metal1 115 88 173 146 0 Y
 port 5 se
-rlabel met1 130 146 158 439 0 Y
+rlabel metal1 130 146 158 439 0 Y
 port 6 se
-rlabel met1 115 439 173 497 0 Y
+rlabel metal1 115 439 173 497 0 Y
 port 7 se
-rlabel met1 259 169 317 227 0 A
+rlabel metal1 259 169 317 227 0 A
 port 8 se
-rlabel met1 274 227 302 356 0 A
+rlabel metal1 274 227 302 356 0 A
 port 9 se
-rlabel met1 259 356 317 414 0 A
+rlabel metal1 259 356 317 414 0 A
 port 10 se
+<< properties >>
+string FIXED_BBOX 0 0 576 666
 << end >>
diff --git a/cells/mag/INVX4.lef b/cells/mag/INVX4.lef
index be0eef9..77ed754 100644
--- a/cells/mag/INVX4.lef
+++ b/cells/mag/INVX4.lef
@@ -23,55 +23,19 @@
         RECT 1.295 0.845 1.585 1.135 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 0.920 3.045 1.155 ;
-        RECT 2.715 0.825 3.025 0.920 ;
-      LAYER mcon ;
-        RECT 2.795 0.905 2.965 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 2.005 3.025 2.090 ;
-        RECT 2.715 1.760 3.045 2.005 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END A
   PIN VGND
-    ANTENNADIFFAREA 0.541800 ;
+    ANTENNADIFFAREA 0.562100 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 0.155 0.085 4.165 0.240 ;
-        RECT 0.000 -0.085 4.320 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -80,62 +44,58 @@
       LAYER li1 ;
         RECT 0.000 3.245 4.320 3.415 ;
         RECT 0.155 3.090 4.165 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 2.063300 ;
     PORT
       LAYER met1 ;
-        RECT 0.575 2.410 0.865 2.485 ;
+        RECT 0.815 2.410 1.105 2.485 ;
         RECT 3.215 2.410 3.505 2.485 ;
-        RECT 0.575 2.270 3.505 2.410 ;
-        RECT 0.575 2.195 0.865 2.270 ;
+        RECT 0.815 2.270 3.505 2.410 ;
+        RECT 0.815 2.195 1.105 2.270 ;
         RECT 3.215 2.195 3.505 2.270 ;
-        RECT 0.650 0.730 0.790 2.195 ;
+        RECT 0.890 0.730 1.030 2.195 ;
         RECT 3.290 0.730 3.430 2.195 ;
-        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 0.815 0.440 1.105 0.730 ;
         RECT 3.215 0.440 3.505 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 3.195 0.420 3.525 0.750 ;
-      LAYER mcon ;
-        RECT 3.275 0.500 3.445 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.195 2.175 3.525 2.505 ;
-      LAYER mcon ;
-        RECT 3.275 2.255 3.445 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 4.320 3.330 ;
       LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
-        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 0.795 2.260 1.125 2.505 ;
+        RECT 0.795 2.175 1.105 2.260 ;
+        RECT 3.195 2.175 3.525 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 2.005 3.025 2.090 ;
+        RECT 2.715 1.760 3.045 2.005 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.295 0.825 1.605 0.920 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 0.795 0.420 1.125 0.750 ;
+        RECT 1.775 0.655 2.085 0.750 ;
+        RECT 1.755 0.420 2.085 0.655 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 0.155 0.085 4.165 0.240 ;
+        RECT 0.000 -0.085 4.320 0.085 ;
       LAYER mcon ;
+        RECT 0.875 2.255 1.045 2.425 ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
-        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
   END
 END INVX4
 END LIBRARY
diff --git a/cells/mag/INVX4.mag b/cells/mag/INVX4.mag
index 3d70480..0fb758a 100644
--- a/cells/mag/INVX4.mag
+++ b/cells/mag/INVX4.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953866
+timestamp 1636809591
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -13,43 +13,46 @@
 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 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 401 100 561 132
+rect 303 48 561 100
 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 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 163 439 221 450
 rect 643 439 701 450
 << ndiffc >>
-rect 127 100 161 134
-rect 367 68 401 102
+rect 175 100 209 134
+rect 367 100 401 134
 rect 655 100 689 134
 << pdiffc >>
-rect 127 451 161 485
-rect 367 564 401 598
+rect 175 451 209 485
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -82,26 +85,19 @@
 rect 271 181 305 215
 rect 559 181 593 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 864 683
+rect 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
 rect 639 485 705 501
+rect 209 451 221 452
+rect 159 435 221 451
 rect 639 451 655 485
 rect 689 451 705 485
 rect 639 435 705 451
@@ -115,95 +111,65 @@
 rect 593 368 609 401
 rect 543 352 609 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 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 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
 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
+rect 0 -17 367 17
+rect 401 -17 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 367 649 401 683
+rect 367 559 401 593
+rect 175 451 209 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 175 100 209 134
+rect 367 100 401 134
 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
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+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 161 454 655 482
-rect 161 451 173 454
-rect 115 439 173 451
+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 130 146 158 439
+rect 178 146 206 439
 rect 259 402 317 414
 rect 259 368 271 402
 rect 305 399 317 402
@@ -226,29 +192,22 @@
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 163 88 221 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
 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 370 48 398 88
 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 -17 367 17
+rect 401 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel metal1 0 618 864 714 0 VPWR
@@ -259,21 +218,21 @@
 port 1 se
 rlabel metal1 0 -48 864 48 0 VGND
 port 1 se
-rlabel metal1 115 88 173 146 0 Y
+rlabel metal1 163 88 221 146 0 Y
 port 3 se
 rlabel metal1 643 88 701 146 0 Y
 port 3 se
-rlabel metal1 130 146 158 439 0 Y
+rlabel metal1 178 146 206 439 0 Y
 port 3 se
 rlabel metal1 658 146 686 439 0 Y
 port 3 se
-rlabel metal1 115 439 173 454 0 Y
+rlabel metal1 163 439 221 454 0 Y
 port 3 se
 rlabel metal1 643 439 701 454 0 Y
 port 3 se
-rlabel metal1 115 454 701 482 0 Y
+rlabel metal1 163 454 701 482 0 Y
 port 3 se
-rlabel metal1 115 482 173 497 0 Y
+rlabel metal1 163 482 221 497 0 Y
 port 3 se
 rlabel metal1 643 482 701 497 0 Y
 port 3 se
diff --git a/cells/mag/INVX4.mag.beforemagic b/cells/mag/INVX4.mag.beforemagic
index 4ef0a02..9958ba5 100644
--- a/cells/mag/INVX4.mag.beforemagic
+++ b/cells/mag/INVX4.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753286
+timestamp 1636755881
 << nwell >>
 rect 0 358 864 666
 << nmos >>
@@ -11,43 +11,46 @@
 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 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 401 100 561 132
+rect 303 48 561 100
 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 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 163 439 221 450
 rect 643 439 701 450
 << ndiffc >>
-rect 127 100 161 134
-rect 367 68 401 102
+rect 175 100 209 134
+rect 367 100 401 134
 rect 655 100 689 134
 << pdiffc >>
-rect 127 451 161 485
-rect 367 564 401 598
+rect 175 451 209 485
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -81,26 +84,19 @@
 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 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
 rect 639 485 705 501
+rect 209 451 221 452
+rect 159 435 221 451
 rect 639 451 655 485
 rect 689 451 705 485
 rect 639 435 705 451
@@ -114,96 +110,66 @@
 rect 593 368 609 401
 rect 543 352 609 368
 rect 255 215 321 231
-rect 255 181 271 215
+rect 255 184 271 215
+rect 259 181 271 184
 rect 305 181 321 215
-rect 255 165 321 181
+rect 259 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 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
 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 -17 367 17
+rect 401 -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 367 649 401 683
+rect 367 559 401 593
+rect 175 451 209 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 175 100 209 134
+rect 367 100 401 134
 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
+rect 367 -17 401 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+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 161 454 655 482
-rect 161 451 173 454
-rect 115 439 173 451
+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 130 146 158 439
+rect 178 146 206 439
 rect 259 402 317 414
 rect 259 368 271 402
 rect 305 399 317 402
@@ -226,29 +192,22 @@
 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 163 134 221 146
+rect 163 100 175 134
+rect 209 100 221 134
+rect 163 88 221 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
 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 370 48 398 88
 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 -17 367 17
+rect 401 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel locali 0 618 864 714 0 VDD
@@ -259,21 +218,21 @@
 port 3 se
 rlabel metal1 0 -48 864 48 0 GND
 port 4 se
-rlabel metal1 115 88 173 146 0 Y
+rlabel metal1 163 88 221 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
+rlabel metal1 178 146 206 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
+rlabel metal1 163 439 221 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
+rlabel metal1 163 454 701 482 0 Y
 port 11 se
-rlabel metal1 115 482 173 497 0 Y
+rlabel metal1 163 482 221 497 0 Y
 port 12 se
 rlabel metal1 643 482 701 497 0 Y
 port 13 se
diff --git a/cells/mag/INVX8.lef b/cells/mag/INVX8.lef
index f50dc35..7ed4be3 100644
--- a/cells/mag/INVX8.lef
+++ b/cells/mag/INVX8.lef
@@ -13,137 +13,52 @@
     ANTENNAGATEAREA 0.756000 ;
     PORT
       LAYER met1 ;
-        RECT 1.295 1.780 1.585 2.070 ;
-        RECT 2.735 1.780 3.025 2.070 ;
-        RECT 4.175 1.780 4.465 2.070 ;
-        RECT 5.615 1.780 5.905 2.070 ;
+        RECT 1.295 1.995 1.585 2.070 ;
+        RECT 2.735 1.995 3.025 2.070 ;
+        RECT 4.175 1.995 4.465 2.070 ;
+        RECT 5.615 1.995 5.905 2.070 ;
+        RECT 1.295 1.855 5.905 1.995 ;
+        RECT 1.295 1.780 1.585 1.855 ;
+        RECT 2.735 1.780 3.025 1.855 ;
+        RECT 4.175 1.780 4.465 1.855 ;
+        RECT 5.615 1.780 5.905 1.855 ;
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 5.690 1.135 5.830 1.780 ;
-        RECT 1.295 1.060 1.585 1.135 ;
-        RECT 2.735 1.060 3.025 1.135 ;
-        RECT 4.175 1.060 4.465 1.135 ;
-        RECT 5.615 1.060 5.905 1.135 ;
-        RECT 1.295 0.920 5.905 1.060 ;
-        RECT 1.295 0.845 1.585 0.920 ;
-        RECT 2.735 0.845 3.025 0.920 ;
-        RECT 4.175 0.845 4.465 0.920 ;
-        RECT 5.615 0.845 5.905 0.920 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 0.825 3.045 1.155 ;
-      LAYER mcon ;
-        RECT 2.795 0.905 2.965 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 0.920 4.485 1.155 ;
-        RECT 4.175 0.825 4.485 0.920 ;
-      LAYER mcon ;
-        RECT 4.235 0.905 4.405 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.595 0.825 5.925 1.155 ;
-      LAYER mcon ;
-        RECT 5.675 0.905 5.845 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
-      LAYER mcon ;
-        RECT 1.355 0.905 1.525 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.295 2.005 1.605 2.090 ;
-        RECT 1.275 1.760 1.605 2.005 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-      LAYER mcon ;
-        RECT 4.235 1.840 4.405 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.595 1.760 5.925 2.090 ;
-      LAYER mcon ;
-        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+        RECT 4.175 0.845 4.465 1.135 ;
+        RECT 5.615 0.845 5.905 1.135 ;
     END
   END A
   PIN VGND
-    ANTENNADIFFAREA 1.083600 ;
+    ANTENNADIFFAREA 1.124200 ;
     PORT
       LAYER met1 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
         RECT 0.000 -0.240 7.200 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 4.635 0.240 4.965 0.590 ;
-        RECT 0.155 0.085 7.045 0.240 ;
-        RECT 0.000 -0.085 7.200 0.085 ;
-      LAYER mcon ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 7.200 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
-        RECT 4.655 2.760 4.945 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 4.655 2.735 4.945 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 2.167200 ;
+    ANTENNADIFFAREA 1.083600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 7.200 3.415 ;
-        RECT 0.155 3.090 7.045 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 4.635 2.740 4.965 3.090 ;
+        RECT 0.155 3.215 7.045 3.245 ;
+        RECT 0.155 3.090 4.465 3.215 ;
+        RECT 5.135 3.090 7.045 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
-        RECT 4.715 2.820 4.885 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -166,50 +81,56 @@
         RECT 3.695 0.440 3.985 0.515 ;
         RECT 6.095 0.440 6.385 0.515 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 6.095 0.655 6.405 0.750 ;
-        RECT 6.075 0.420 6.405 0.655 ;
-      LAYER mcon ;
-        RECT 6.155 0.500 6.325 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.675 0.420 4.005 0.750 ;
-      LAYER mcon ;
-        RECT 3.755 0.500 3.925 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.795 0.655 1.105 0.750 ;
-        RECT 0.795 0.420 1.125 0.655 ;
-      LAYER mcon ;
-        RECT 0.875 0.500 1.045 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 0.795 2.175 1.125 2.505 ;
-      LAYER mcon ;
-        RECT 0.875 2.255 1.045 2.425 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.675 2.260 4.005 2.505 ;
-        RECT 3.675 2.175 3.985 2.260 ;
-      LAYER mcon ;
-        RECT 3.755 2.255 3.925 2.425 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 6.075 2.260 6.405 2.505 ;
-        RECT 6.095 2.175 6.405 2.260 ;
-      LAYER mcon ;
-        RECT 6.155 2.255 6.325 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 7.200 3.330 ;
+      LAYER li1 ;
+        RECT 4.635 2.715 4.965 3.045 ;
+        RECT 0.795 2.175 1.125 2.505 ;
+        RECT 3.675 2.260 4.005 2.505 ;
+        RECT 6.075 2.260 6.405 2.505 ;
+        RECT 3.675 2.175 3.985 2.260 ;
+        RECT 6.095 2.175 6.405 2.260 ;
+        RECT 1.295 2.005 1.605 2.090 ;
+        RECT 1.275 1.760 1.605 2.005 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 2.715 0.825 3.045 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 4.175 0.825 4.465 0.920 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 0.795 0.655 1.105 0.750 ;
+        RECT 0.795 0.420 1.125 0.655 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.675 0.420 4.005 0.750 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 4.715 0.240 4.885 0.420 ;
+        RECT 0.155 0.085 7.045 0.240 ;
+        RECT 0.000 -0.085 7.200 0.085 ;
+      LAYER mcon ;
+        RECT 4.715 2.795 4.885 2.965 ;
+        RECT 0.875 2.255 1.045 2.425 ;
+        RECT 3.755 2.255 3.925 2.425 ;
+        RECT 6.155 2.255 6.325 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 3.755 0.500 3.925 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 4.715 -0.085 4.885 0.085 ;
   END
 END INVX8
 END LIBRARY
diff --git a/cells/mag/INVX8.mag b/cells/mag/INVX8.mag
index 2fae17a..f75c1a7 100644
--- a/cells/mag/INVX8.mag
+++ b/cells/mag/INVX8.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953867
+timestamp 1636809592
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -21,24 +21,28 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
 rect 591 100 751 132
 rect 785 132 797 134
-rect 1219 134 1277 146
-rect 1219 132 1231 134
+rect 931 134 989 146
+rect 931 132 943 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 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
 rect 1167 100 1231 132
 rect 1265 132 1277 134
 rect 1265 100 1325 132
@@ -48,18 +52,18 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
 rect 1167 485 1325 618
 rect 1167 451 1231 485
 rect 1265 451 1325 485
@@ -69,15 +73,15 @@
 rect 1219 439 1277 450
 << ndiffc >>
 rect 175 100 209 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 751 100 785 134
-rect 943 68 977 102
+rect 943 100 977 134
 rect 1231 100 1265 134
 << pdiffc >>
 rect 175 451 209 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 751 451 785 485
-rect 943 564 977 598
+rect 943 559 977 593
 rect 1231 451 1265 485
 << poly >>
 rect 273 618 303 644
@@ -138,31 +142,19 @@
 rect 847 181 881 215
 rect 1135 181 1169 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 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 0 649 367 683
+rect 401 649 1440 683
+rect 31 643 1409 649
+rect 31 618 893 643
+rect 1027 618 1409 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 rect 159 485 225 501
 rect 159 451 175 485
 rect 209 451 225 485
@@ -196,78 +188,53 @@
 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 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 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 881 184 897 215
 rect 1119 215 1185 231
+rect 881 181 893 184
+rect 835 165 893 181
 rect 1119 181 1135 215
-rect 1169 181 1185 215
-rect 1119 165 1185 181
+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 735 134 801 150
+rect 351 134 417 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 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 735 134 801 150
 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 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
 rect 1265 100 1281 134
 rect 1215 84 1281 100
-rect 927 48 993 68
+rect 943 48 977 84
 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
+rect 0 -17 943 17
+rect 977 -17 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 367 649 401 683
+rect 367 559 401 593
+rect 943 559 977 593
 rect 175 451 209 485
 rect 751 451 785 485
 rect 1231 451 1265 485
@@ -280,50 +247,23 @@
 rect 847 181 881 215
 rect 1135 181 1169 215
 rect 175 100 209 134
+rect 367 100 401 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
+rect 943 -17 977 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 482 221 485
@@ -345,18 +285,27 @@
 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 305 399 317 402
 rect 547 402 605 414
-rect 547 368 559 402
-rect 593 368 605 402
-rect 547 356 605 368
+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 399 605 402
 rect 835 402 893 414
-rect 835 368 847 402
-rect 881 368 893 402
-rect 835 356 893 368
+rect 835 399 847 402
+rect 593 371 847 399
+rect 593 368 605 371
+rect 547 356 605 368
+rect 835 368 847 371
+rect 881 399 893 402
 rect 1123 402 1181 414
-rect 1123 368 1135 402
+rect 1123 399 1135 402
+rect 881 371 1135 399
+rect 881 368 893 371
+rect 835 356 893 368
+rect 1123 368 1135 371
 rect 1169 368 1181 402
 rect 1123 356 1181 368
 rect 274 227 302 356
@@ -365,27 +314,18 @@
 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 305 181 317 215
 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 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
 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 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
 rect 835 169 893 181
-rect 1123 181 1135 184
+rect 1123 215 1181 227
+rect 1123 181 1135 215
 rect 1169 181 1181 215
 rect 1123 169 1181 181
 rect 1234 146 1262 439
@@ -393,6 +333,10 @@
 rect 163 100 175 134
 rect 209 100 221 134
 rect 163 88 221 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
 rect 739 134 797 146
 rect 739 100 751 134
 rect 785 131 797 134
@@ -404,23 +348,10 @@
 rect 1219 100 1231 103
 rect 1265 100 1277 134
 rect 1219 88 1277 100
+rect 370 48 398 88
 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 -17 943 17
+rect 977 -17 1440 17
 rect 0 -48 1440 -17
 << labels >>
 rlabel metal1 0 618 1440 714 0 VPWR
@@ -461,23 +392,13 @@
 port 3 se
 rlabel metal1 1219 482 1277 497 0 Y
 port 3 se
-rlabel metal1 259 169 317 184 0 A
+rlabel metal1 259 169 317 227 0 A
 port 0 se
-rlabel metal1 547 169 605 184 0 A
+rlabel metal1 547 169 605 227 0 A
 port 0 se
-rlabel metal1 835 169 893 184 0 A
+rlabel metal1 835 169 893 227 0 A
 port 0 se
-rlabel metal1 1123 169 1181 184 0 A
-port 0 se
-rlabel metal1 259 184 1181 212 0 A
-port 0 se
-rlabel metal1 259 212 317 227 0 A
-port 0 se
-rlabel metal1 547 212 605 227 0 A
-port 0 se
-rlabel metal1 835 212 893 227 0 A
-port 0 se
-rlabel metal1 1123 212 1181 227 0 A
+rlabel metal1 1123 169 1181 227 0 A
 port 0 se
 rlabel metal1 274 227 302 356 0 A
 port 0 se
@@ -487,13 +408,23 @@
 port 0 se
 rlabel metal1 1138 227 1166 356 0 A
 port 0 se
-rlabel metal1 259 356 317 414 0 A
+rlabel metal1 259 356 317 371 0 A
 port 0 se
-rlabel metal1 547 356 605 414 0 A
+rlabel metal1 547 356 605 371 0 A
 port 0 se
-rlabel metal1 835 356 893 414 0 A
+rlabel metal1 835 356 893 371 0 A
 port 0 se
-rlabel metal1 1123 356 1181 414 0 A
+rlabel metal1 1123 356 1181 371 0 A
+port 0 se
+rlabel metal1 259 371 1181 399 0 A
+port 0 se
+rlabel metal1 259 399 317 414 0 A
+port 0 se
+rlabel metal1 547 399 605 414 0 A
+port 0 se
+rlabel metal1 835 399 893 414 0 A
+port 0 se
+rlabel metal1 1123 399 1181 414 0 A
 port 0 se
 rlabel locali 0 -17 1440 17 4 VGND
 port 1 se ground default abutment
@@ -501,7 +432,7 @@
 port 1 se ground default abutment
 rlabel locali 0 649 1440 683 4 VPWR
 port 2 se power default abutment
-rlabel locali 31 618 1409 649 4 VGND
+rlabel metal1 31 618 1409 649 4 VGND
 port 1 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1440 666
diff --git a/cells/mag/INVX8.mag.beforemagic b/cells/mag/INVX8.mag.beforemagic
index e831bc1..1142831 100644
--- a/cells/mag/INVX8.mag.beforemagic
+++ b/cells/mag/INVX8.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753365
+timestamp 1636755929
 << nwell >>
 rect 0 358 1440 666
 << nmos >>
@@ -19,24 +19,28 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
 rect 591 100 751 132
 rect 785 132 797 134
-rect 1219 134 1277 146
-rect 1219 132 1231 134
+rect 931 134 989 146
+rect 931 132 943 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 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
 rect 1167 100 1231 132
 rect 1265 132 1277 134
 rect 1265 100 1325 132
@@ -46,18 +50,18 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
 rect 1167 485 1325 618
 rect 1167 451 1231 485
 rect 1265 451 1325 485
@@ -67,15 +71,15 @@
 rect 1219 439 1277 450
 << ndiffc >>
 rect 175 100 209 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 751 100 785 134
-rect 943 68 977 102
+rect 943 100 977 134
 rect 1231 100 1265 134
 << pdiffc >>
 rect 175 451 209 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 751 451 785 485
-rect 943 564 977 598
+rect 943 559 977 593
 rect 1231 451 1265 485
 << poly >>
 rect 273 618 303 644
@@ -137,31 +141,19 @@
 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 0 649 367 683
+rect 401 649 1440 683
+rect 0 643 1440 649
+rect 0 618 893 643
+rect 1027 618 1440 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 rect 159 485 225 501
 rect 159 451 175 485
 rect 209 451 225 485
@@ -195,79 +187,54 @@
 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 305 184 321 215
 rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
 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 881 184 897 215
 rect 1119 215 1185 231
+rect 881 181 893 184
+rect 835 165 893 181
 rect 1119 181 1135 215
-rect 1169 181 1185 215
-rect 1119 165 1185 181
+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 735 134 801 150
+rect 351 134 417 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 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 735 134 801 150
 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 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
 rect 1265 100 1281 134
 rect 1215 84 1281 100
-rect 927 48 993 68
+rect 943 48 977 84
 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 -17 943 17
+rect 977 -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 367 649 401 683
+rect 367 559 401 593
+rect 943 559 977 593
 rect 175 451 209 485
 rect 751 451 785 485
 rect 1231 451 1265 485
@@ -280,50 +247,23 @@
 rect 847 181 881 215
 rect 1135 181 1169 215
 rect 175 100 209 134
+rect 367 100 401 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
+rect 943 -17 977 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 482 221 485
@@ -345,18 +285,27 @@
 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 305 399 317 402
 rect 547 402 605 414
-rect 547 368 559 402
-rect 593 368 605 402
-rect 547 356 605 368
+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 399 605 402
 rect 835 402 893 414
-rect 835 368 847 402
-rect 881 368 893 402
-rect 835 356 893 368
+rect 835 399 847 402
+rect 593 371 847 399
+rect 593 368 605 371
+rect 547 356 605 368
+rect 835 368 847 371
+rect 881 399 893 402
 rect 1123 402 1181 414
-rect 1123 368 1135 402
+rect 1123 399 1135 402
+rect 881 371 1135 399
+rect 881 368 893 371
+rect 835 356 893 368
+rect 1123 368 1135 371
 rect 1169 368 1181 402
 rect 1123 356 1181 368
 rect 274 227 302 356
@@ -365,27 +314,18 @@
 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 305 181 317 215
 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 215 605 227
+rect 547 181 559 215
+rect 593 181 605 215
 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 215 893 227
+rect 835 181 847 215
+rect 881 181 893 215
 rect 835 169 893 181
-rect 1123 181 1135 184
+rect 1123 215 1181 227
+rect 1123 181 1135 215
 rect 1169 181 1181 215
 rect 1123 169 1181 181
 rect 1234 146 1262 439
@@ -393,6 +333,10 @@
 rect 163 100 175 134
 rect 209 100 221 134
 rect 163 88 221 100
+rect 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
 rect 739 134 797 146
 rect 739 100 751 134
 rect 785 131 797 134
@@ -404,26 +348,13 @@
 rect 1219 100 1231 103
 rect 1265 100 1277 134
 rect 1219 88 1277 100
+rect 370 48 398 88
 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 -17 943 17
+rect 977 -17 1440 17
 rect 0 -48 1440 -17
 << labels >>
-rlabel locali 0 618 1440 714 0 VDD
+rlabel metal1 0 618 1440 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1440 714 0 VDD
 port 2 se
@@ -461,39 +392,39 @@
 port 18 se
 rlabel metal1 1219 482 1277 497 0 Y
 port 19 se
-rlabel metal1 259 169 317 184 0 A
+rlabel metal1 259 169 317 227 0 A
 port 20 se
-rlabel metal1 547 169 605 184 0 A
+rlabel metal1 547 169 605 227 0 A
 port 21 se
-rlabel metal1 835 169 893 184 0 A
+rlabel metal1 835 169 893 227 0 A
 port 22 se
-rlabel metal1 1123 169 1181 184 0 A
+rlabel metal1 1123 169 1181 227 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
+port 24 se
 rlabel metal1 562 227 590 356 0 A
-port 30 se
+port 25 se
 rlabel metal1 850 227 878 356 0 A
-port 31 se
+port 26 se
 rlabel metal1 1138 227 1166 356 0 A
+port 27 se
+rlabel metal1 259 356 317 371 0 A
+port 28 se
+rlabel metal1 547 356 605 371 0 A
+port 29 se
+rlabel metal1 835 356 893 371 0 A
+port 30 se
+rlabel metal1 1123 356 1181 371 0 A
+port 31 se
+rlabel metal1 259 371 1181 399 0 A
 port 32 se
-rlabel metal1 259 356 317 414 0 A
+rlabel metal1 259 399 317 414 0 A
 port 33 se
-rlabel metal1 547 356 605 414 0 A
+rlabel metal1 547 399 605 414 0 A
 port 34 se
-rlabel metal1 835 356 893 414 0 A
+rlabel metal1 835 399 893 414 0 A
 port 35 se
-rlabel metal1 1123 356 1181 414 0 A
+rlabel metal1 1123 399 1181 414 0 A
 port 36 se
 << properties >>
 string FIXED_BBOX 0 0 1440 666
diff --git a/cells/mag/MARTIN1989.lef b/cells/mag/MARTIN1989.lef
new file mode 100644
index 0000000..f73ba2d
--- /dev/null
+++ b/cells/mag/MARTIN1989.lef
@@ -0,0 +1,129 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO MARTIN1989
+  CLASS CORE ;
+  FOREIGN MARTIN1989 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 6.095 2.195 6.385 2.485 ;
+        RECT 4.175 0.845 4.465 1.135 ;
+        RECT 4.250 0.655 4.390 0.845 ;
+        RECT 6.170 0.730 6.310 2.195 ;
+        RECT 6.095 0.655 6.385 0.730 ;
+        RECT 4.250 0.515 6.385 0.655 ;
+        RECT 6.095 0.440 6.385 0.515 ;
+    END
+  END C
+  PIN VGND
+    ANTENNADIFFAREA 0.914200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+        RECT 4.655 2.735 4.945 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 0.663600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 7.200 3.415 ;
+        RECT 0.155 3.215 7.045 3.245 ;
+        RECT 0.155 3.090 4.465 3.215 ;
+        RECT 5.135 3.090 7.045 3.215 ;
+        RECT 0.555 2.715 0.885 3.090 ;
+      LAYER mcon ;
+        RECT 0.635 3.245 0.805 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
+    END
+  END VPWR
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 7.200 3.330 ;
+      LAYER li1 ;
+        RECT 4.635 2.715 4.965 3.045 ;
+        RECT 3.195 2.260 3.525 2.505 ;
+        RECT 6.075 2.260 6.405 2.505 ;
+        RECT 3.215 2.175 3.525 2.260 ;
+        RECT 6.095 2.175 6.405 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 4.235 1.155 4.405 1.760 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 4.655 0.655 4.965 0.750 ;
+        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 4.715 0.240 4.885 0.420 ;
+        RECT 0.155 0.085 7.045 0.240 ;
+        RECT 0.000 -0.085 7.200 0.085 ;
+      LAYER mcon ;
+        RECT 4.715 2.795 4.885 2.965 ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 6.155 2.255 6.325 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 4.715 -0.085 4.885 0.085 ;
+      LAYER met1 ;
+        RECT 3.215 2.195 3.505 2.485 ;
+        RECT 3.290 1.995 3.430 2.195 ;
+        RECT 5.615 1.995 5.905 2.070 ;
+        RECT 3.290 1.855 5.905 1.995 ;
+        RECT 3.290 0.730 3.430 1.855 ;
+        RECT 5.615 1.780 5.905 1.855 ;
+        RECT 5.690 1.135 5.830 1.780 ;
+        RECT 5.615 0.845 5.905 1.135 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+  END
+END MARTIN1989
+END LIBRARY
+
diff --git a/cells/mag/MARTIN1989.mag b/cells/mag/MARTIN1989.mag
new file mode 100644
index 0000000..d6c9ece
--- /dev/null
+++ b/cells/mag/MARTIN1989.mag
@@ -0,0 +1,351 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809593
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< 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 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 643 439 701 450
+rect 1219 439 1277 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 655 451 689 485
+rect 943 559 977 593
+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 649 127 683
+rect 161 649 1440 683
+rect 31 643 1409 649
+rect 31 618 893 643
+rect 1027 618 1409 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 643 435 705 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 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 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 943 48 977 84
+rect 31 17 1409 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+<< viali >>
+rect 127 649 161 683
+rect 127 559 161 593
+rect 943 559 977 593
+rect 655 451 689 485
+rect 1231 451 1265 485
+rect 271 368 305 402
+rect 559 368 593 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 127 100 161 134
+rect 655 100 689 134
+rect 1231 100 1265 134
+rect 943 -17 977 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 127 683
+rect 161 649 1440 683
+rect 0 618 1440 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 451
+rect 1219 485 1277 497
+rect 1219 451 1231 485
+rect 1265 451 1277 485
+rect 1219 439 1277 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 658 399 686 439
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 658 371 1135 399
+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 371
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1138 227 1166 356
+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 181 1181 215
+rect 1123 169 1181 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 850 131 878 169
+rect 1234 146 1262 439
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 850 103 1231 131
+rect 643 88 701 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 130 48 158 88
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel metal1 0 618 1440 714 0 VPWR
+port 4 se
+rlabel metal1 0 618 1440 714 0 VPWR
+port 4 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 3 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 3 se
+rlabel metal1 1219 88 1277 103 0 C
+port 2 se
+rlabel metal1 850 103 1277 131 0 C
+port 2 se
+rlabel metal1 1219 131 1277 146 0 C
+port 2 se
+rlabel metal1 850 131 878 169 0 C
+port 2 se
+rlabel metal1 835 169 893 227 0 C
+port 2 se
+rlabel metal1 1234 146 1262 439 0 C
+port 2 se
+rlabel metal1 1219 439 1277 497 0 C
+port 2 se
+rlabel metal1 547 169 605 227 0 B
+port 1 se
+rlabel metal1 562 227 590 356 0 B
+port 1 se
+rlabel metal1 547 356 605 414 0 B
+port 1 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 274 227 302 356 0 A
+port 0 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
+rlabel locali 0 -17 1440 17 4 VGND
+port 3 se ground default abutment
+rlabel locali 31 17 1409 48 4 VGND
+port 3 se ground default abutment
+rlabel locali 0 649 1440 683 4 VPWR
+port 4 se power default abutment
+rlabel metal1 31 618 1409 649 4 VGND
+port 3 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/MARTIN1989.mag.beforemagic b/cells/mag/MARTIN1989.mag.beforemagic
new file mode 100644
index 0000000..dc263b0
--- /dev/null
+++ b/cells/mag/MARTIN1989.mag.beforemagic
@@ -0,0 +1,343 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636760247
+<< 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 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 977 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1265 100 1325 132
+rect 1167 48 1325 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 849 618
+rect 591 451 655 485
+rect 689 451 849 485
+rect 591 450 849 451
+rect 879 593 1137 618
+rect 879 559 943 593
+rect 977 559 1137 593
+rect 879 450 1137 559
+rect 1167 485 1325 618
+rect 1167 451 1231 485
+rect 1265 451 1325 485
+rect 1167 450 1325 451
+rect 643 439 701 450
+rect 1219 439 1277 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 943 100 977 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 127 559 161 593
+rect 655 451 689 485
+rect 943 559 977 593
+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 127 683
+rect 161 649 1440 683
+rect 0 643 1440 649
+rect 0 618 893 643
+rect 1027 618 1440 643
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 1215 485 1281 501
+rect 1215 452 1231 485
+rect 643 435 705 451
+rect 1219 451 1231 452
+rect 1265 451 1281 485
+rect 1219 435 1281 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 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 931 134 993 150
+rect 931 131 943 134
+rect 639 84 705 100
+rect 927 100 943 131
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1215 134 1281 150
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 943 48 977 84
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< viali >>
+rect 127 649 161 683
+rect 127 559 161 593
+rect 943 559 977 593
+rect 655 451 689 485
+rect 1231 451 1265 485
+rect 271 368 305 402
+rect 559 368 593 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 127 100 161 134
+rect 655 100 689 134
+rect 1231 100 1265 134
+rect 943 -17 977 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 127 683
+rect 161 649 1440 683
+rect 0 618 1440 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 451
+rect 1219 485 1277 497
+rect 1219 451 1231 485
+rect 1265 451 1277 485
+rect 1219 439 1277 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 658 399 686 439
+rect 1123 402 1181 414
+rect 1123 399 1135 402
+rect 658 371 1135 399
+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 371
+rect 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1138 227 1166 356
+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 181 1181 215
+rect 1123 169 1181 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 850 131 878 169
+rect 1234 146 1262 439
+rect 1219 134 1277 146
+rect 1219 131 1231 134
+rect 850 103 1231 131
+rect 643 88 701 100
+rect 1219 100 1231 103
+rect 1265 100 1277 134
+rect 1219 88 1277 100
+rect 130 48 158 88
+rect 0 17 1440 48
+rect 0 -17 943 17
+rect 977 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel metal1 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 1219 88 1277 103 0 C
+port 5 se
+rlabel metal1 850 103 1277 131 0 C
+port 6 se
+rlabel metal1 1219 131 1277 146 0 C
+port 7 se
+rlabel metal1 850 131 878 169 0 C
+port 8 se
+rlabel metal1 835 169 893 227 0 C
+port 9 se
+rlabel metal1 1234 146 1262 439 0 C
+port 10 se
+rlabel metal1 1219 439 1277 497 0 C
+port 11 se
+rlabel metal1 547 169 605 227 0 B
+port 12 se
+rlabel metal1 562 227 590 356 0 B
+port 13 se
+rlabel metal1 547 356 605 414 0 B
+port 14 se
+rlabel metal1 259 169 317 227 0 A
+port 15 se
+rlabel metal1 274 227 302 356 0 A
+port 16 se
+rlabel metal1 259 356 317 414 0 A
+port 17 se
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/MUX2X1.lef b/cells/mag/MUX2X1.lef
index 6cdfb49..0ec3478 100644
--- a/cells/mag/MUX2X1.lef
+++ b/cells/mag/MUX2X1.lef
@@ -24,175 +24,109 @@
         RECT 7.130 1.135 7.270 1.780 ;
         RECT 7.055 0.845 7.345 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 7.035 1.760 7.365 2.090 ;
-      LAYER mcon ;
-        RECT 7.115 1.840 7.285 2.010 ;
-    END
   END B
   PIN S
     ANTENNAGATEAREA 0.378000 ;
     PORT
       LAYER met1 ;
-        RECT 1.295 2.410 1.585 2.485 ;
-        RECT 1.295 2.270 4.870 2.410 ;
-        RECT 1.295 2.195 1.585 2.270 ;
-        RECT 4.730 1.995 4.870 2.270 ;
         RECT 5.615 1.995 5.905 2.070 ;
-        RECT 4.730 1.855 5.905 1.995 ;
+        RECT 5.615 1.855 6.310 1.995 ;
         RECT 5.615 1.780 5.905 1.855 ;
-        RECT 1.295 1.385 1.585 1.675 ;
-        RECT 1.370 1.135 1.510 1.385 ;
         RECT 1.295 1.060 1.585 1.135 ;
-        RECT 3.215 1.060 3.505 1.135 ;
-        RECT 1.295 0.920 3.505 1.060 ;
+        RECT 4.175 1.060 4.465 1.135 ;
+        RECT 1.295 0.920 4.465 1.060 ;
         RECT 1.295 0.845 1.585 0.920 ;
-        RECT 3.215 0.845 3.505 0.920 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.075 4.485 1.155 ;
-        RECT 3.275 0.905 4.485 1.075 ;
-        RECT 4.155 0.825 4.485 0.905 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
-      LAYER mcon ;
-        RECT 1.355 0.905 1.525 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.355 2.090 1.525 2.425 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-        RECT 1.355 1.445 1.525 1.760 ;
-      LAYER mcon ;
-        RECT 1.355 2.255 1.525 2.425 ;
+        RECT 4.175 0.845 4.465 0.920 ;
+        RECT 4.250 0.655 4.390 0.845 ;
+        RECT 6.170 0.655 6.310 1.855 ;
+        RECT 4.250 0.515 6.310 0.655 ;
     END
   END S
   PIN VGND
-    ANTENNADIFFAREA 0.873600 ;
+    ANTENNADIFFAREA 0.914200 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
-        RECT 7.535 0.240 7.825 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 7.535 0.440 7.825 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 7.610 0.240 7.750 0.440 ;
         RECT 0.000 -0.240 8.640 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 7.515 0.240 7.845 0.590 ;
-        RECT 0.155 0.085 8.485 0.240 ;
-        RECT 0.000 -0.085 8.640 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 7.595 0.340 7.765 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-        RECT 7.355 -0.085 7.525 0.085 ;
-        RECT 7.835 -0.085 8.005 0.085 ;
-        RECT 8.315 -0.085 8.485 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 8.640 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
-        RECT 7.535 2.760 7.825 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 7.535 2.735 7.825 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 1.747200 ;
+    ANTENNADIFFAREA 1.083600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 8.640 3.415 ;
-        RECT 0.155 3.090 8.485 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 7.515 2.740 7.845 3.090 ;
+        RECT 0.155 3.215 8.485 3.245 ;
+        RECT 0.155 3.090 7.345 3.215 ;
+        RECT 8.015 3.090 8.485 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 7.355 3.245 7.525 3.415 ;
-        RECT 7.835 3.245 8.005 3.415 ;
-        RECT 8.315 3.245 8.485 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
-        RECT 7.595 2.820 7.765 2.990 ;
+        RECT 7.595 3.245 7.765 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.661650 ;
     PORT
       LAYER met1 ;
-        RECT 5.135 2.410 5.425 2.485 ;
-        RECT 5.135 2.270 6.310 2.410 ;
-        RECT 5.135 2.195 5.425 2.270 ;
-        RECT 5.135 0.655 5.425 0.730 ;
-        RECT 6.170 0.655 6.310 2.270 ;
-        RECT 5.135 0.515 6.310 0.655 ;
-        RECT 5.135 0.440 5.425 0.515 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.115 0.420 5.445 0.750 ;
-      LAYER mcon ;
-        RECT 5.195 0.500 5.365 0.670 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.115 2.175 5.445 2.505 ;
-      LAYER mcon ;
-        RECT 5.195 2.255 5.365 2.425 ;
+        RECT 4.655 1.780 4.945 2.485 ;
     END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 8.640 3.330 ;
       LAYER li1 ;
+        RECT 7.515 2.715 7.845 3.045 ;
         RECT 0.555 2.175 0.885 2.505 ;
+        RECT 4.635 2.180 4.965 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
         RECT 2.715 1.760 3.045 2.090 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-        RECT 5.615 2.005 5.925 2.090 ;
-        RECT 5.595 1.760 5.925 2.005 ;
+        RECT 4.155 2.010 4.465 2.090 ;
+        RECT 4.155 1.760 4.485 2.010 ;
+        RECT 1.355 1.155 1.525 1.760 ;
         RECT 2.795 1.155 2.965 1.760 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
         RECT 2.715 0.825 3.045 1.155 ;
-        RECT 5.595 0.920 5.925 1.155 ;
-        RECT 5.615 0.825 5.925 0.920 ;
-        RECT 7.035 0.825 7.365 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 4.715 0.750 4.885 2.010 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 7.035 1.760 7.365 2.090 ;
+        RECT 5.595 0.825 5.925 1.155 ;
+        RECT 7.035 0.920 7.365 1.155 ;
+        RECT 7.035 0.825 7.345 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 7.515 0.420 7.845 0.750 ;
+        RECT 0.155 0.085 8.485 0.240 ;
+        RECT 0.000 -0.085 8.640 0.085 ;
       LAYER mcon ;
+        RECT 7.595 2.795 7.765 2.965 ;
         RECT 0.635 2.255 0.805 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
         RECT 4.235 1.840 4.405 2.010 ;
-        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 4.715 1.840 4.885 2.010 ;
         RECT 2.795 1.310 2.965 1.480 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 7.115 1.840 7.285 2.010 ;
         RECT 5.675 0.905 5.845 1.075 ;
         RECT 7.115 0.905 7.285 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
+        RECT 7.595 0.500 7.765 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
       LAYER met1 ;
         RECT 0.575 2.195 0.865 2.485 ;
         RECT 0.650 1.995 0.790 2.195 ;
@@ -200,10 +134,10 @@
         RECT 0.650 1.855 4.465 1.995 ;
         RECT 0.650 0.730 0.790 1.855 ;
         RECT 4.175 1.780 4.465 1.855 ;
-        RECT 4.250 1.060 4.390 1.780 ;
-        RECT 5.615 1.060 5.905 1.135 ;
-        RECT 4.250 0.920 5.905 1.060 ;
-        RECT 5.615 0.845 5.905 0.920 ;
+        RECT 4.250 1.600 4.390 1.780 ;
+        RECT 4.250 1.460 5.830 1.600 ;
+        RECT 5.690 1.135 5.830 1.460 ;
+        RECT 5.615 0.845 5.905 1.135 ;
         RECT 0.575 0.440 0.865 0.730 ;
   END
 END MUX2X1
diff --git a/cells/mag/MUX2X1.mag b/cells/mag/MUX2X1.mag
index 7f6ae26..6908955 100644
--- a/cells/mag/MUX2X1.mag
+++ b/cells/mag/MUX2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953867
+timestamp 1636809593
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -22,55 +22,59 @@
 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 355 134 413 146
+rect 355 132 367 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 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 48 849 132
-rect 879 100 1039 132
-rect 1073 132 1085 134
-rect 1073 100 1137 132
+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 48 1425 132
-rect 1455 102 1613 132
-rect 1455 68 1519 102
-rect 1553 68 1613 102
-rect 1455 48 1613 68
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1553 100 1613 132
+rect 1455 48 1613 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 450 849 618
 rect 879 485 1137 618
-rect 879 451 1039 485
-rect 1073 451 1137 485
+rect 879 451 943 485
+rect 977 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 1455 593 1613 618
+rect 1455 559 1519 593
+rect 1553 559 1613 593
+rect 1455 450 1613 559
 rect 115 439 173 450
-rect 1027 439 1085 450
+rect 931 439 989 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
-rect 1039 100 1073 134
-rect 1519 68 1553 102
+rect 367 100 401 134
+rect 943 100 977 134
+rect 1519 100 1553 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-rect 1039 451 1073 485
-rect 1519 564 1553 598
+rect 367 559 401 593
+rect 943 451 977 485
+rect 1519 559 1553 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -144,43 +148,27 @@
 rect 1135 181 1169 215
 rect 1423 181 1457 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 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 0 649 1519 683
+rect 1553 649 1728 683
+rect 31 643 1697 649
+rect 31 618 1469 643
+rect 1603 618 1697 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 1503 593 1569 609
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
 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 927 485 993 501
+rect 927 451 943 485
+rect 977 451 993 485
+rect 927 436 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -189,175 +177,103 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
+rect 1119 402 1185 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 271 231 305 352
+rect 559 296 593 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 368
+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 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 1119 181 1135 215
 rect 1169 181 1185 215
-rect 1123 165 1185 181
+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 1457 184 1473 215
+rect 1457 181 1469 184
+rect 1407 165 1469 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1503 84 1569 100
 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
+rect 0 -17 367 17
+rect 401 -17 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 1519 649 1553 683
+rect 367 559 401 593
+rect 1519 559 1553 593
 rect 127 451 161 485
-rect 271 451 305 485
-rect 1039 451 1073 485
+rect 943 451 977 485
 rect 847 368 881 402
-rect 1135 368 1169 402
-rect 1423 368 1457 402
-rect 271 289 305 323
+rect 943 368 977 402
 rect 559 262 593 296
 rect 271 181 305 215
-rect 655 181 689 215
+rect 847 181 881 215
+rect 1135 368 1169 402
+rect 1423 368 1457 402
 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
+rect 367 100 401 134
+rect 1519 100 1553 134
+rect 367 -17 401 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 649 1519 683
+rect 1553 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 1507 593 1565 618
+rect 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
 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 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
 rect 130 399 158 439
 rect 835 402 893 414
 rect 835 399 847 402
@@ -365,58 +281,49 @@
 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 931 402 989 451
+rect 931 368 943 402
+rect 977 368 989 402
+rect 931 356 989 368
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 399 1181 402
+rect 1411 402 1469 414
+rect 1169 371 1262 399
+rect 1169 368 1181 371
 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 850 320 878 356
 rect 547 296 605 308
-rect 274 227 302 277
 rect 547 262 559 296
 rect 593 262 605 296
+rect 850 292 1166 320
 rect 547 250 605 262
+rect 1138 227 1166 292
 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 835 215 893 227
+rect 835 212 847 215
+rect 305 184 847 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 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
 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 1123 181 1135 215
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 850 131 878 169
+rect 1234 131 1262 371
 rect 1411 368 1423 402
 rect 1457 368 1469 402
 rect 1411 356 1469 368
@@ -425,34 +332,17 @@
 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 850 103 1262 131
+rect 1507 134 1565 146
+rect 355 88 413 100
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 370 48 398 88
+rect 1522 48 1550 88
 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 -17 367 17
+rect 401 -17 1728 17
 rect 0 -48 1728 -17
 << labels >>
 rlabel metal1 0 618 1728 714 0 VPWR
@@ -463,49 +353,45 @@
 port 3 se
 rlabel metal1 0 -48 1728 48 0 VGND
 port 3 se
-rlabel metal1 1027 88 1085 103 0 Y
+rlabel metal1 931 356 989 497 0 Y
 port 5 se
-rlabel metal1 1027 103 1262 131 0 Y
-port 5 se
-rlabel metal1 1027 131 1085 146 0 Y
-port 5 se
-rlabel metal1 1027 439 1085 454 0 Y
-port 5 se
-rlabel metal1 1234 131 1262 454 0 Y
-port 5 se
-rlabel metal1 1027 454 1262 482 0 Y
-port 5 se
-rlabel metal1 1027 482 1085 497 0 Y
-port 5 se
-rlabel metal1 259 169 317 184 0 S
-port 2 se
-rlabel metal1 643 169 701 184 0 S
-port 2 se
-rlabel metal1 259 184 701 212 0 S
-port 2 se
-rlabel metal1 259 212 317 227 0 S
-port 2 se
-rlabel metal1 643 212 701 227 0 S
-port 2 se
-rlabel metal1 274 227 302 277 0 S
-port 2 se
-rlabel metal1 259 277 317 335 0 S
-port 2 se
-rlabel metal1 547 250 605 308 0 A
-port 0 se
 rlabel metal1 1411 169 1469 227 0 B
 port 1 se
 rlabel metal1 1426 227 1454 356 0 B
 port 1 se
 rlabel metal1 1411 356 1469 414 0 B
 port 1 se
+rlabel metal1 850 103 1262 131 0 S
+port 2 se
+rlabel metal1 850 131 878 169 0 S
+port 2 se
+rlabel metal1 259 169 317 184 0 S
+port 2 se
+rlabel metal1 835 169 893 184 0 S
+port 2 se
+rlabel metal1 259 184 893 212 0 S
+port 2 se
+rlabel metal1 259 212 317 227 0 S
+port 2 se
+rlabel metal1 835 212 893 227 0 S
+port 2 se
+rlabel metal1 1123 356 1181 371 0 S
+port 2 se
+rlabel metal1 1234 131 1262 371 0 S
+port 2 se
+rlabel metal1 1123 371 1262 399 0 S
+port 2 se
+rlabel metal1 1123 399 1181 414 0 S
+port 2 se
+rlabel metal1 547 250 605 308 0 A
+port 0 se
 rlabel locali 0 -17 1728 17 4 VGND
 port 3 se ground default abutment
 rlabel locali 31 17 1697 48 4 VGND
 port 3 se ground default abutment
 rlabel locali 0 649 1728 683 4 VPWR
 port 4 se power default abutment
-rlabel locali 31 618 1697 649 4 VGND
+rlabel metal1 31 618 1697 649 4 VGND
 port 3 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1728 666
diff --git a/cells/mag/MUX2X1.mag.beforemagic b/cells/mag/MUX2X1.mag.beforemagic
index 52c0110..2cb535b 100644
--- a/cells/mag/MUX2X1.mag.beforemagic
+++ b/cells/mag/MUX2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753424
+timestamp 1636756023
 << nwell >>
 rect 0 358 1728 666
 << nmos >>
@@ -20,55 +20,59 @@
 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 355 134 413 146
+rect 355 132 367 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 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 48 849 132
-rect 879 100 1039 132
-rect 1073 132 1085 134
-rect 1073 100 1137 132
+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 48 1425 132
-rect 1455 102 1613 132
-rect 1455 68 1519 102
-rect 1553 68 1613 102
-rect 1455 48 1613 68
+rect 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1553 100 1613 132
+rect 1455 48 1613 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 450 849 618
 rect 879 485 1137 618
-rect 879 451 1039 485
-rect 1073 451 1137 485
+rect 879 451 943 485
+rect 977 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 1455 593 1613 618
+rect 1455 559 1519 593
+rect 1553 559 1613 593
+rect 1455 450 1613 559
 rect 115 439 173 450
-rect 1027 439 1085 450
+rect 931 439 989 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
-rect 1039 100 1073 134
-rect 1519 68 1553 102
+rect 367 100 401 134
+rect 943 100 977 134
+rect 1519 100 1553 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
-rect 1039 451 1073 485
-rect 1519 564 1553 598
+rect 367 559 401 593
+rect 943 451 977 485
+rect 1519 559 1553 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -143,43 +147,27 @@
 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 0 649 1519 683
+rect 1553 649 1728 683
+rect 0 643 1728 649
+rect 0 618 1469 643
+rect 1603 618 1728 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 1503 593 1569 609
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
 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 927 485 993 501
+rect 927 451 943 485
+rect 977 451 993 485
+rect 927 436 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -188,176 +176,104 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
+rect 1119 402 1185 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 271 231 305 352
+rect 559 296 593 352
+rect 559 231 593 262
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+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 368
+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 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 1119 181 1135 215
 rect 1169 181 1185 215
-rect 1123 165 1185 181
+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 1457 184 1473 215
+rect 1457 181 1469 184
+rect 1407 165 1469 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 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 134
+rect 1503 84 1569 100
 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 -17 367 17
+rect 401 -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 1519 649 1553 683
+rect 367 559 401 593
+rect 1519 559 1553 593
 rect 127 451 161 485
-rect 271 451 305 485
-rect 1039 451 1073 485
+rect 943 451 977 485
 rect 847 368 881 402
-rect 1135 368 1169 402
-rect 1423 368 1457 402
-rect 271 289 305 323
+rect 943 368 977 402
 rect 559 262 593 296
 rect 271 181 305 215
-rect 655 181 689 215
+rect 847 181 881 215
+rect 1135 368 1169 402
+rect 1423 368 1457 402
 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
+rect 367 100 401 134
+rect 1519 100 1553 134
+rect 367 -17 401 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 649 1519 683
+rect 1553 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 1507 593 1565 618
+rect 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
 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 931 485 989 497
+rect 931 451 943 485
+rect 977 451 989 485
 rect 130 399 158 439
 rect 835 402 893 414
 rect 835 399 847 402
@@ -365,58 +281,49 @@
 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 931 402 989 451
+rect 931 368 943 402
+rect 977 368 989 402
+rect 931 356 989 368
+rect 1123 402 1181 414
+rect 1123 368 1135 402
+rect 1169 399 1181 402
+rect 1411 402 1469 414
+rect 1169 371 1262 399
+rect 1169 368 1181 371
 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 850 320 878 356
 rect 547 296 605 308
-rect 274 227 302 277
 rect 547 262 559 296
 rect 593 262 605 296
+rect 850 292 1166 320
 rect 547 250 605 262
+rect 1138 227 1166 292
 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 835 215 893 227
+rect 835 212 847 215
+rect 305 184 847 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 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
 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 1123 181 1135 215
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 850 131 878 169
+rect 1234 131 1262 371
 rect 1411 368 1423 402
 rect 1457 368 1469 402
 rect 1411 356 1469 368
@@ -425,37 +332,20 @@
 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 850 103 1262 131
+rect 1507 134 1565 146
+rect 355 88 413 100
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 370 48 398 88
+rect 1522 48 1550 88
 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 -17 367 17
+rect 401 -17 1728 17
 rect 0 -48 1728 -17
 << labels >>
-rlabel locali 0 618 1728 714 0 VDD
+rlabel metal1 0 618 1728 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1728 714 0 VDD
 port 2 se
@@ -463,42 +353,38 @@
 port 3 se
 rlabel metal1 0 -48 1728 48 0 GND
 port 4 se
-rlabel metal1 1027 88 1085 103 0 Y
+rlabel metal1 931 356 989 497 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
+port 6 se
 rlabel metal1 1426 227 1454 356 0 B
-port 21 se
+port 7 se
 rlabel metal1 1411 356 1469 414 0 B
-port 22 se
+port 8 se
+rlabel metal1 850 103 1262 131 0 S
+port 9 se
+rlabel metal1 850 131 878 169 0 S
+port 10 se
+rlabel metal1 259 169 317 184 0 S
+port 11 se
+rlabel metal1 835 169 893 184 0 S
+port 12 se
+rlabel metal1 259 184 893 212 0 S
+port 13 se
+rlabel metal1 259 212 317 227 0 S
+port 14 se
+rlabel metal1 835 212 893 227 0 S
+port 15 se
+rlabel metal1 1123 356 1181 371 0 S
+port 16 se
+rlabel metal1 1234 131 1262 371 0 S
+port 17 se
+rlabel metal1 1123 371 1262 399 0 S
+port 18 se
+rlabel metal1 1123 399 1181 414 0 S
+port 19 se
+rlabel metal1 547 250 605 308 0 A
+port 20 se
 << properties >>
 string FIXED_BBOX 0 0 1728 666
 << end >>
diff --git a/cells/mag/NAND2X1.lef b/cells/mag/NAND2X1.lef
index 9df1269..3ca510d 100644
--- a/cells/mag/NAND2X1.lef
+++ b/cells/mag/NAND2X1.lef
@@ -17,13 +17,6 @@
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 2.005 3.025 2.090 ;
-        RECT 2.715 1.760 3.045 2.005 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
@@ -33,41 +26,19 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END B
   PIN VGND
-    ANTENNADIFFAREA 0.331800 ;
+    ANTENNADIFFAREA 0.352100 ;
     PORT
       LAYER met1 ;
-        RECT 3.215 0.240 3.505 0.570 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 4.320 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 4.165 0.240 ;
-        RECT 0.000 -0.085 4.320 0.085 ;
-      LAYER mcon ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 4.320 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -76,18 +47,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 4.320 3.415 ;
         RECT 0.155 3.090 4.165 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -102,30 +65,33 @@
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 0.575 0.440 0.865 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.195 2.175 3.525 2.505 ;
-      LAYER mcon ;
-        RECT 3.275 2.255 3.445 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 4.320 3.330 ;
       LAYER li1 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 3.195 2.260 3.525 2.505 ;
+        RECT 3.215 2.175 3.525 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
         RECT 1.275 0.825 1.605 1.155 ;
         RECT 2.715 0.825 3.045 1.155 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 0.155 0.085 4.165 0.240 ;
+        RECT 0.000 -0.085 4.320 0.085 ;
       LAYER mcon ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
   END
 END NAND2X1
 END LIBRARY
diff --git a/cells/mag/NAND2X1.mag b/cells/mag/NAND2X1.mag
index e4cc091..b0bca1e 100644
--- a/cells/mag/NAND2X1.mag
+++ b/cells/mag/NAND2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953868
+timestamp 1636809594
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -16,22 +16,24 @@
 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 48 561 132
-rect 591 102 749 132
-rect 591 68 655 102
-rect 689 68 749 102
-rect 591 48 749 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 749 618
 rect 591 451 655 485
 rect 689 451 749 485
@@ -40,10 +42,10 @@
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 655 68 689 102
+rect 655 100 689 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -76,37 +78,29 @@
 rect 271 181 305 215
 rect 559 181 593 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 864 683
+rect 0 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 639 452 655 485
+rect 111 435 177 451
+rect 643 451 655 452
 rect 689 451 705 485
-rect 639 435 705 451
+rect 643 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 402 609 418
 rect 543 368 559 402
-rect 593 401 605 402
-rect 593 368 609 401
+rect 593 368 609 402
 rect 543 352 609 368
 rect 255 215 321 231
 rect 255 181 271 215
@@ -119,33 +113,18 @@
 rect 111 134 177 150
 rect 111 100 127 134
 rect 161 100 177 134
+rect 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
 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
+rect 0 -17 655 17
+rect 689 -17 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 367 649 401 683
+rect 367 559 401 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 271 368 305 402
@@ -153,33 +132,17 @@
 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
+rect 655 100 689 134
+rect 655 -17 689 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 482 173 485
@@ -214,21 +177,14 @@
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel metal1 0 618 864 714 0 VPWR
diff --git a/cells/mag/NAND2X1.mag.beforemagic b/cells/mag/NAND2X1.mag.beforemagic
index 21f7972..0a0891e 100644
--- a/cells/mag/NAND2X1.mag.beforemagic
+++ b/cells/mag/NAND2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753481
+timestamp 1636756085
 << nwell >>
 rect 0 358 864 666
 << nmos >>
@@ -14,22 +14,24 @@
 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 48 561 132
-rect 591 102 749 132
-rect 591 68 655 102
-rect 689 68 749 102
-rect 591 48 749 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 485 749 618
 rect 591 451 655 485
 rect 689 451 749 485
@@ -38,10 +40,10 @@
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 655 68 689 102
+rect 655 100 689 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
 << poly >>
 rect 273 618 303 644
@@ -75,37 +77,29 @@
 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 649 367 683
+rect 401 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
 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 639 452 655 485
+rect 111 435 177 451
+rect 643 451 655 452
 rect 689 451 705 485
-rect 639 435 705 451
+rect 643 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 402 609 418
 rect 543 368 559 402
-rect 593 401 605 402
-rect 593 368 609 401
+rect 593 368 609 402
 rect 543 352 609 368
 rect 255 215 321 231
 rect 255 181 271 215
@@ -118,34 +112,19 @@
 rect 111 134 177 150
 rect 111 100 127 134
 rect 161 100 177 134
+rect 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
 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 -17 655 17
+rect 689 -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 367 649 401 683
+rect 367 559 401 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 271 368 305 402
@@ -153,33 +132,17 @@
 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
+rect 655 100 689 134
+rect 655 -17 689 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 482 173 485
@@ -214,21 +177,14 @@
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 864 17
 rect 0 -48 864 -17
 << labels >>
 rlabel locali 0 618 864 714 0 VDD
diff --git a/cells/mag/NAND3X1.lef b/cells/mag/NAND3X1.lef
index aaef15b..a747a41 100644
--- a/cells/mag/NAND3X1.lef
+++ b/cells/mag/NAND3X1.lef
@@ -17,12 +17,6 @@
         RECT 4.250 1.135 4.390 1.780 ;
         RECT 4.175 0.845 4.465 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-      LAYER mcon ;
-        RECT 4.235 1.840 4.405 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.189000 ;
@@ -32,13 +26,6 @@
         RECT 2.810 1.135 2.950 1.780 ;
         RECT 2.735 0.845 3.025 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 2.005 3.025 2.090 ;
-        RECT 2.715 1.760 3.045 2.005 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
-    END
   END B
   PIN C
     ANTENNAGATEAREA 0.189000 ;
@@ -48,70 +35,34 @@
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 1.295 0.845 1.585 1.135 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
   END C
   PIN VGND
-    ANTENNADIFFAREA 0.331800 ;
+    ANTENNADIFFAREA 0.352100 ;
     PORT
       LAYER met1 ;
-        RECT 4.655 0.240 4.945 0.570 ;
+        RECT 4.655 0.440 4.945 0.730 ;
+        RECT 4.730 0.240 4.870 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 4.635 0.240 4.965 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 4.715 0.340 4.885 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
-        RECT 4.655 2.760 4.945 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 4.655 2.735 4.945 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 1.747200 ;
+    ANTENNADIFFAREA 1.083600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
-        RECT 0.155 3.090 5.605 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 4.635 2.740 4.965 3.090 ;
+        RECT 0.155 3.215 5.605 3.245 ;
+        RECT 0.155 3.090 4.465 3.215 ;
+        RECT 5.135 3.090 5.605 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
-        RECT 4.715 2.820 4.885 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
@@ -126,32 +77,39 @@
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 0.575 0.440 0.865 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 0.555 2.175 0.885 2.505 ;
-      LAYER mcon ;
-        RECT 0.635 2.255 0.805 2.425 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 3.195 2.175 3.525 2.505 ;
-      LAYER mcon ;
-        RECT 3.275 2.255 3.445 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 5.760 3.330 ;
       LAYER li1 ;
+        RECT 4.635 2.715 4.965 3.045 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 3.195 2.175 3.525 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 2.005 3.025 2.090 ;
+        RECT 2.715 1.760 3.045 2.005 ;
+        RECT 4.155 1.760 4.485 2.090 ;
         RECT 1.275 0.825 1.605 1.155 ;
         RECT 2.715 0.825 3.045 1.155 ;
-        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
+        RECT 4.715 2.795 4.885 2.965 ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
         RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 4.715 -0.085 4.885 0.085 ;
   END
 END NAND3X1
 END LIBRARY
diff --git a/cells/mag/NAND3X1.mag b/cells/mag/NAND3X1.mag
index 6f91e1a..c41af4e 100644
--- a/cells/mag/NAND3X1.mag
+++ b/cells/mag/NAND3X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953869
+timestamp 1636809595
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -18,41 +18,43 @@
 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 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
+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 598 561 618
-rect 303 564 367 598
-rect 401 564 561 598
-rect 303 450 561 564
+rect 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
 rect 115 439 173 450
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 943 68 977 102
+rect 943 100 977 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
-rect 943 564 977 598
+rect 943 559 977 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -98,28 +100,19 @@
 rect 559 181 593 215
 rect 847 181 881 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 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 0 649 367 683
+rect 401 649 1152 683
+rect 31 643 1121 649
+rect 31 618 893 643
+rect 1027 618 1121 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -151,45 +144,24 @@
 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 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 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 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
 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
+rect 0 -17 943 17
+rect 977 -17 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 367 649 401 683
+rect 367 559 401 593
+rect 943 559 977 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 271 368 305 402
@@ -199,43 +171,21 @@
 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
+rect 943 100 977 134
+rect 943 -17 977 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 482 173 485
@@ -279,24 +229,14 @@
 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 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 946 48 974 88
 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 -17 943 17
+rect 977 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -321,12 +261,6 @@
 port 5 se
 rlabel metal1 643 482 701 497 0 Y
 port 5 se
-rlabel metal1 259 169 317 227 0 C
-port 2 se
-rlabel metal1 274 227 302 356 0 C
-port 2 se
-rlabel metal1 259 356 317 414 0 C
-port 2 se
 rlabel metal1 547 169 605 227 0 B
 port 1 se
 rlabel metal1 562 227 590 356 0 B
@@ -339,13 +273,19 @@
 port 0 se
 rlabel metal1 835 356 893 414 0 A
 port 0 se
+rlabel metal1 259 169 317 227 0 C
+port 2 se
+rlabel metal1 274 227 302 356 0 C
+port 2 se
+rlabel metal1 259 356 317 414 0 C
+port 2 se
 rlabel locali 0 -17 1152 17 4 VGND
 port 3 se ground default abutment
 rlabel locali 31 17 1121 48 4 VGND
 port 3 se ground default abutment
 rlabel locali 0 649 1152 683 4 VPWR
 port 4 se power default abutment
-rlabel locali 31 618 1121 649 4 VGND
+rlabel metal1 31 618 1121 649 4 VGND
 port 3 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/NAND3X1.mag.beforemagic b/cells/mag/NAND3X1.mag.beforemagic
index 6e5bf12..ccfab57 100644
--- a/cells/mag/NAND3X1.mag.beforemagic
+++ b/cells/mag/NAND3X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753525
+timestamp 1636756138
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -16,41 +16,43 @@
 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 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
+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 598 561 618
-rect 303 564 367 598
-rect 401 564 561 598
-rect 303 450 561 564
+rect 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
 rect 115 439 173 450
 rect 643 439 701 450
 << ndiffc >>
 rect 127 100 161 134
-rect 943 68 977 102
+rect 943 100 977 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 655 451 689 485
-rect 943 564 977 598
+rect 943 559 977 593
 << poly >>
 rect 273 618 303 644
 rect 561 618 591 644
@@ -97,28 +99,19 @@
 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 0 649 367 683
+rect 401 649 1152 683
+rect 0 643 1152 649
+rect 0 618 893 643
+rect 1027 618 1152 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+rect 927 593 993 609
+rect 927 559 943 593
+rect 977 559 993 593
+rect 927 543 993 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -150,46 +143,25 @@
 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 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 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 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 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 -17 943 17
+rect 977 -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 367 649 401 683
+rect 367 559 401 593
+rect 943 559 977 593
 rect 127 451 161 485
 rect 655 451 689 485
 rect 271 368 305 402
@@ -199,43 +171,21 @@
 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
+rect 943 100 977 134
+rect 943 -17 977 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 931 593 989 618
+rect 931 559 943 593
+rect 977 559 989 593
+rect 931 547 989 559
 rect 115 485 173 497
 rect 115 451 127 485
 rect 161 482 173 485
@@ -279,27 +229,17 @@
 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 931 134 989 146
+rect 931 100 943 134
+rect 977 100 989 134
+rect 931 88 989 100
+rect 946 48 974 88
 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 -17 943 17
+rect 977 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
-rlabel locali 0 618 1152 714 0 VDD
+rlabel metal1 0 618 1152 714 0 VDD
 port 1 se
 rlabel metal1 0 618 1152 714 0 VDD
 port 2 se
@@ -321,23 +261,23 @@
 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
+port 12 se
 rlabel metal1 562 227 590 356 0 B
-port 16 se
+port 13 se
 rlabel metal1 547 356 605 414 0 B
-port 17 se
+port 14 se
 rlabel metal1 835 169 893 227 0 A
-port 18 se
+port 15 se
 rlabel metal1 850 227 878 356 0 A
-port 19 se
+port 16 se
 rlabel metal1 835 356 893 414 0 A
+port 17 se
+rlabel metal1 259 169 317 227 0 C
+port 18 se
+rlabel metal1 274 227 302 356 0 C
+port 19 se
+rlabel metal1 259 356 317 414 0 C
 port 20 se
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/NOR2X1.lef b/cells/mag/NOR2X1.lef
new file mode 100644
index 0000000..0af2da3
--- /dev/null
+++ b/cells/mag/NOR2X1.lef
@@ -0,0 +1,98 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO NOR2X1
+  CLASS CORE ;
+  FOREIGN NOR2X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 4.320 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+    END
+  END B
+  PIN VGND
+    ANTENNADIFFAREA 0.562100 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 4.320 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 4.320 3.570 ;
+        RECT 0.575 2.735 0.865 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 0.663600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 4.320 3.415 ;
+        RECT 0.155 3.090 4.165 3.245 ;
+        RECT 0.555 2.715 0.885 3.090 ;
+      LAYER mcon ;
+        RECT 0.635 3.245 0.805 3.415 ;
+        RECT 0.635 2.795 0.805 2.965 ;
+    END
+  END VPWR
+  PIN Y
+    ANTENNADIFFAREA 1.383750 ;
+    PORT
+      LAYER met1 ;
+        RECT 3.215 2.195 3.505 2.485 ;
+        RECT 3.290 0.730 3.430 2.195 ;
+        RECT 0.815 0.655 1.105 0.730 ;
+        RECT 3.215 0.655 3.505 0.730 ;
+        RECT 0.815 0.515 3.505 0.655 ;
+        RECT 0.815 0.440 1.105 0.515 ;
+        RECT 3.215 0.440 3.505 0.515 ;
+    END
+  END Y
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 4.320 3.330 ;
+      LAYER li1 ;
+        RECT 3.195 2.260 3.525 2.505 ;
+        RECT 3.215 2.175 3.525 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 0.795 0.655 1.105 0.750 ;
+        RECT 0.795 0.420 1.125 0.655 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 1.835 0.240 2.005 0.420 ;
+        RECT 0.155 0.085 4.165 0.240 ;
+        RECT 0.000 -0.085 4.320 0.085 ;
+      LAYER mcon ;
+        RECT 3.275 2.255 3.445 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
+  END
+END NOR2X1
+END LIBRARY
+
diff --git a/cells/mag/NOR2X1.mag b/cells/mag/NOR2X1.mag
new file mode 100644
index 0000000..b8481dd
--- /dev/null
+++ b/cells/mag/NOR2X1.mag
@@ -0,0 +1,233 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809596
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 643 439 701 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 655 100 689 134
+<< pdiffc >>
+rect 127 559 161 593
+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 649 127 683
+rect 161 649 864 683
+rect 31 618 833 649
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 643 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 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 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 351 134 417 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 367 48 401 84
+rect 31 17 833 48
+rect 0 -17 367 17
+rect 401 -17 864 17
+<< viali >>
+rect 127 649 161 683
+rect 127 559 161 593
+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 175 100 209 134
+rect 655 100 689 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 864 714
+rect 0 649 127 683
+rect 161 649 864 683
+rect 0 618 864 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 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 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 643 134 701 146
+rect 643 131 655 134
+rect 209 103 655 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 0 17 864 48
+rect 0 -17 367 17
+rect 401 -17 864 17
+rect 0 -48 864 -17
+<< labels >>
+rlabel metal1 0 618 864 714 0 VPWR
+port 3 se
+rlabel metal1 0 618 864 714 0 VPWR
+port 3 se
+rlabel metal1 0 -48 864 48 0 VGND
+port 2 se
+rlabel metal1 0 -48 864 48 0 VGND
+port 2 se
+rlabel metal1 163 88 221 103 0 Y
+port 4 se
+rlabel metal1 643 88 701 103 0 Y
+port 4 se
+rlabel metal1 163 103 701 131 0 Y
+port 4 se
+rlabel metal1 163 131 221 146 0 Y
+port 4 se
+rlabel metal1 643 131 701 146 0 Y
+port 4 se
+rlabel metal1 658 146 686 439 0 Y
+port 4 se
+rlabel metal1 643 439 701 497 0 Y
+port 4 se
+rlabel metal1 547 169 605 227 0 B
+port 1 se
+rlabel metal1 562 227 590 356 0 B
+port 1 se
+rlabel metal1 547 356 605 414 0 B
+port 1 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 274 227 302 356 0 A
+port 0 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
+rlabel locali 0 -17 864 17 4 VGND
+port 2 se ground default abutment
+rlabel locali 31 17 833 48 4 VGND
+port 2 se ground default abutment
+rlabel locali 0 649 864 683 4 VPWR
+port 3 se power default abutment
+rlabel locali 31 618 833 649 4 VGND
+port 2 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 864 666
+<< end >>
diff --git a/cells/mag/NOR2X1.mag.beforemagic b/cells/mag/NOR2X1.mag.beforemagic
new file mode 100644
index 0000000..bbad6fa
--- /dev/null
+++ b/cells/mag/NOR2X1.mag.beforemagic
@@ -0,0 +1,225 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636756189
+<< 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 163 134 221 146
+rect 163 132 175 134
+rect 115 100 175 132
+rect 209 132 221 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 689 100 749 132
+rect 591 48 749 100
+<< pdiff >>
+rect 115 593 273 618
+rect 115 559 127 593
+rect 161 559 273 593
+rect 115 450 273 559
+rect 303 450 561 618
+rect 591 485 749 618
+rect 591 451 655 485
+rect 689 451 749 485
+rect 591 450 749 451
+rect 643 439 701 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 655 100 689 134
+<< pdiffc >>
+rect 127 559 161 593
+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 127 683
+rect 161 649 864 683
+rect 0 618 864 649
+rect 111 593 177 618
+rect 111 559 127 593
+rect 161 559 177 593
+rect 111 543 177 559
+rect 639 485 705 501
+rect 639 452 655 485
+rect 643 451 655 452
+rect 689 451 705 485
+rect 643 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 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 184 321 215
+rect 543 215 609 231
+rect 305 181 317 184
+rect 255 165 317 181
+rect 543 181 559 215
+rect 593 184 609 215
+rect 593 181 605 184
+rect 543 165 605 181
+rect 159 134 221 150
+rect 159 100 175 134
+rect 209 131 221 134
+rect 351 134 417 150
+rect 209 100 225 131
+rect 159 84 225 100
+rect 351 100 367 134
+rect 401 100 417 134
+rect 351 84 417 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 367 48 401 84
+rect 0 17 864 48
+rect 0 -17 367 17
+rect 401 -17 864 17
+rect 0 -48 864 -17
+<< viali >>
+rect 127 649 161 683
+rect 127 559 161 593
+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 175 100 209 134
+rect 655 100 689 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 864 714
+rect 0 649 127 683
+rect 161 649 864 683
+rect 0 618 864 649
+rect 115 593 173 618
+rect 115 559 127 593
+rect 161 559 173 593
+rect 115 547 173 559
+rect 643 485 701 497
+rect 643 451 655 485
+rect 689 451 701 485
+rect 643 439 701 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 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 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 643 134 701 146
+rect 643 131 655 134
+rect 209 103 655 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 0 17 864 48
+rect 0 -17 367 17
+rect 401 -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 163 88 221 103 0 Y
+port 5 se
+rlabel metal1 643 88 701 103 0 Y
+port 6 se
+rlabel metal1 163 103 701 131 0 Y
+port 7 se
+rlabel metal1 163 131 221 146 0 Y
+port 8 se
+rlabel metal1 643 131 701 146 0 Y
+port 9 se
+rlabel metal1 658 146 686 439 0 Y
+port 10 se
+rlabel metal1 643 439 701 497 0 Y
+port 11 se
+rlabel metal1 547 169 605 227 0 B
+port 12 se
+rlabel metal1 562 227 590 356 0 B
+port 13 se
+rlabel metal1 547 356 605 414 0 B
+port 14 se
+rlabel metal1 259 169 317 227 0 A
+port 15 se
+rlabel metal1 274 227 302 356 0 A
+port 16 se
+rlabel metal1 259 356 317 414 0 A
+port 17 se
+<< properties >>
+string FIXED_BBOX 0 0 864 666
+<< end >>
diff --git a/cells/mag/OAI21X1.lef b/cells/mag/OAI21X1.lef
new file mode 100644
index 0000000..66ab844
--- /dev/null
+++ b/cells/mag/OAI21X1.lef
@@ -0,0 +1,121 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO OAI21X1
+  CLASS CORE ;
+  FOREIGN OAI21X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 5.760 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 4.250 1.135 4.390 1.780 ;
+        RECT 4.175 0.845 4.465 1.135 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END C
+  PIN VGND
+    ANTENNADIFFAREA 0.562100 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 5.760 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 5.760 3.570 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 1.083600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 5.760 3.415 ;
+        RECT 0.155 3.090 5.605 3.245 ;
+        RECT 1.755 2.715 2.085 3.090 ;
+      LAYER mcon ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
+    END
+  END VPWR
+  PIN Y
+    ANTENNADIFFAREA 1.711200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.575 2.410 0.865 2.485 ;
+        RECT 4.655 2.410 4.945 2.485 ;
+        RECT 0.575 2.270 4.945 2.410 ;
+        RECT 0.575 2.195 0.865 2.270 ;
+        RECT 4.655 2.195 4.945 2.270 ;
+        RECT 0.650 0.730 0.790 2.195 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+    END
+  END Y
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 5.760 3.330 ;
+      LAYER li1 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 4.635 2.260 4.965 2.505 ;
+        RECT 4.655 2.175 4.965 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 2.235 0.655 2.545 0.750 ;
+        RECT 2.235 0.420 2.565 0.655 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 3.275 0.240 3.445 0.420 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
+      LAYER mcon ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 2.315 0.500 2.485 0.670 ;
+        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
+      LAYER met1 ;
+        RECT 2.255 0.655 2.545 0.730 ;
+        RECT 4.655 0.655 4.945 0.730 ;
+        RECT 2.255 0.515 4.945 0.655 ;
+        RECT 2.255 0.440 2.545 0.515 ;
+        RECT 4.655 0.440 4.945 0.515 ;
+  END
+END OAI21X1
+END LIBRARY
+
diff --git a/cells/mag/OAI21X1.mag b/cells/mag/OAI21X1.mag
new file mode 100644
index 0000000..a4e5404
--- /dev/null
+++ b/cells/mag/OAI21X1.mag
@@ -0,0 +1,307 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809597
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< 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 451 134 509 146
+rect 451 132 463 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 463 132
+rect 497 132 509 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+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 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
+rect 591 450 849 618
+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 931 439 989 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 463 100 497 134
+rect 655 100 689 134
+rect 943 100 977 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 559 401 593
+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 649 367 683
+rect 401 649 1152 683
+rect 31 618 1121 649
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+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 184 609 215
+rect 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 84 177 100
+rect 447 134 509 150
+rect 447 100 463 134
+rect 497 131 509 134
+rect 639 134 705 150
+rect 497 100 513 131
+rect 447 84 513 100
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 655 48 689 84
+rect 31 17 1121 48
+rect 0 -17 655 17
+rect 689 -17 1152 17
+<< viali >>
+rect 367 649 401 683
+rect 367 559 401 593
+rect 127 451 161 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 463 100 497 134
+rect 943 100 977 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 367 683
+rect 401 649 1152 683
+rect 0 618 1152 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 931 485 989 497
+rect 931 482 943 485
+rect 161 454 943 482
+rect 161 451 173 454
+rect 115 439 173 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 100 173 134
+rect 115 88 173 100
+rect 451 134 509 146
+rect 451 100 463 134
+rect 497 131 509 134
+rect 931 134 989 146
+rect 931 131 943 134
+rect 497 103 943 131
+rect 497 100 509 103
+rect 451 88 509 100
+rect 931 100 943 103
+rect 977 100 989 134
+rect 931 88 989 100
+rect 0 17 1152 48
+rect 0 -17 655 17
+rect 689 -17 1152 17
+rect 0 -48 1152 -17
+<< labels >>
+rlabel metal1 0 618 1152 714 0 VPWR
+port 4 se
+rlabel metal1 0 618 1152 714 0 VPWR
+port 4 se
+rlabel metal1 0 -48 1152 48 0 VGND
+port 3 se
+rlabel metal1 0 -48 1152 48 0 VGND
+port 3 se
+rlabel metal1 115 88 173 146 0 Y
+port 5 se
+rlabel metal1 130 146 158 439 0 Y
+port 5 se
+rlabel metal1 115 439 173 454 0 Y
+port 5 se
+rlabel metal1 931 439 989 454 0 Y
+port 5 se
+rlabel metal1 115 454 989 482 0 Y
+port 5 se
+rlabel metal1 115 482 173 497 0 Y
+port 5 se
+rlabel metal1 931 482 989 497 0 Y
+port 5 se
+rlabel metal1 259 169 317 227 0 C
+port 2 se
+rlabel metal1 274 227 302 356 0 C
+port 2 se
+rlabel metal1 259 356 317 414 0 C
+port 2 se
+rlabel metal1 547 169 605 227 0 A
+port 0 se
+rlabel metal1 562 227 590 356 0 A
+port 0 se
+rlabel metal1 547 356 605 414 0 A
+port 0 se
+rlabel metal1 835 169 893 227 0 B
+port 1 se
+rlabel metal1 850 227 878 356 0 B
+port 1 se
+rlabel metal1 835 356 893 414 0 B
+port 1 se
+rlabel locali 0 -17 1152 17 4 VGND
+port 3 se ground default abutment
+rlabel locali 31 17 1121 48 4 VGND
+port 3 se ground default abutment
+rlabel locali 0 649 1152 683 4 VPWR
+port 4 se power default abutment
+rlabel locali 31 618 1121 649 4 VGND
+port 3 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 1152 666
+<< end >>
diff --git a/cells/mag/OAI21X1.mag.beforemagic b/cells/mag/OAI21X1.mag.beforemagic
new file mode 100644
index 0000000..166c868
--- /dev/null
+++ b/cells/mag/OAI21X1.mag.beforemagic
@@ -0,0 +1,299 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636756311
+<< 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 451 134 509 146
+rect 451 132 463 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 463 132
+rect 497 132 509 134
+rect 643 134 701 146
+rect 643 132 655 134
+rect 497 100 561 132
+rect 303 48 561 100
+rect 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
+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 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
+rect 591 450 849 618
+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 931 439 989 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 463 100 497 134
+rect 655 100 689 134
+rect 943 100 977 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 367 559 401 593
+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 367 683
+rect 401 649 1152 683
+rect 0 618 1152 649
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 351 543 417 559
+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 184 609 215
+rect 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 111 84 177 100
+rect 447 134 509 150
+rect 447 100 463 134
+rect 497 131 509 134
+rect 639 134 705 150
+rect 497 100 513 131
+rect 447 84 513 100
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 655 48 689 84
+rect 0 17 1152 48
+rect 0 -17 655 17
+rect 689 -17 1152 17
+rect 0 -48 1152 -17
+<< viali >>
+rect 367 649 401 683
+rect 367 559 401 593
+rect 127 451 161 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 463 100 497 134
+rect 943 100 977 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 1152 714
+rect 0 649 367 683
+rect 401 649 1152 683
+rect 0 618 1152 649
+rect 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 355 547 413 559
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 482 173 485
+rect 931 485 989 497
+rect 931 482 943 485
+rect 161 454 943 482
+rect 161 451 173 454
+rect 115 439 173 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 100 173 134
+rect 115 88 173 100
+rect 451 134 509 146
+rect 451 100 463 134
+rect 497 131 509 134
+rect 931 134 989 146
+rect 931 131 943 134
+rect 497 103 943 131
+rect 497 100 509 103
+rect 451 88 509 100
+rect 931 100 943 103
+rect 977 100 989 134
+rect 931 88 989 100
+rect 0 17 1152 48
+rect 0 -17 655 17
+rect 689 -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 931 439 989 454 0 Y
+port 8 se
+rlabel metal1 115 454 989 482 0 Y
+port 9 se
+rlabel metal1 115 482 173 497 0 Y
+port 10 se
+rlabel metal1 931 482 989 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 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
+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/OAI22X1.lef b/cells/mag/OAI22X1.lef
new file mode 100644
index 0000000..c920516
--- /dev/null
+++ b/cells/mag/OAI22X1.lef
@@ -0,0 +1,142 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO OAI22X1
+  CLASS CORE ;
+  FOREIGN OAI22X1 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 7.200 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.135 2.950 1.780 ;
+        RECT 2.735 0.845 3.025 1.135 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 4.175 1.780 4.465 2.070 ;
+        RECT 4.250 1.135 4.390 1.780 ;
+        RECT 4.175 0.845 4.465 1.135 ;
+    END
+  END C
+  PIN D
+    ANTENNAGATEAREA 0.189000 ;
+    PORT
+      LAYER met1 ;
+        RECT 5.615 1.780 5.905 2.070 ;
+        RECT 5.690 1.135 5.830 1.780 ;
+        RECT 5.615 0.845 5.905 1.135 ;
+    END
+  END D
+  PIN VGND
+    ANTENNADIFFAREA 0.562100 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 7.200 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 7.200 3.570 ;
+        RECT 3.215 2.735 3.505 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 1.083600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 7.200 3.415 ;
+        RECT 0.155 3.090 7.045 3.245 ;
+        RECT 3.195 2.715 3.525 3.090 ;
+      LAYER mcon ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 3.275 2.795 3.445 2.965 ;
+    END
+  END VPWR
+  PIN Y
+    ANTENNADIFFAREA 1.921200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.815 2.410 1.105 2.485 ;
+        RECT 6.095 2.410 6.385 2.485 ;
+        RECT 0.815 2.270 6.385 2.410 ;
+        RECT 0.815 2.195 1.105 2.270 ;
+        RECT 5.210 1.135 5.350 2.270 ;
+        RECT 6.095 2.195 6.385 2.270 ;
+        RECT 5.135 0.845 5.425 1.135 ;
+    END
+  END Y
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 7.200 3.330 ;
+      LAYER li1 ;
+        RECT 0.795 2.260 1.125 2.505 ;
+        RECT 0.795 2.175 1.105 2.260 ;
+        RECT 6.075 2.175 6.405 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 2.005 5.905 2.090 ;
+        RECT 5.595 1.760 5.925 2.005 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.295 0.825 1.605 0.920 ;
+        RECT 2.715 0.825 3.045 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.175 0.825 4.485 0.920 ;
+        RECT 5.195 0.750 5.365 1.075 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 0.795 0.420 1.125 0.750 ;
+        RECT 1.775 0.655 2.085 0.750 ;
+        RECT 1.755 0.420 2.085 0.655 ;
+        RECT 3.675 0.420 4.005 0.750 ;
+        RECT 5.115 0.655 5.425 0.750 ;
+        RECT 5.115 0.420 5.445 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 1.835 0.240 2.005 0.420 ;
+        RECT 0.155 0.085 7.045 0.240 ;
+        RECT 0.000 -0.085 7.200 0.085 ;
+      LAYER mcon ;
+        RECT 0.875 2.255 1.045 2.425 ;
+        RECT 6.155 2.255 6.325 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.195 0.905 5.365 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 0.875 0.500 1.045 0.670 ;
+        RECT 3.755 0.500 3.925 0.670 ;
+        RECT 6.155 0.500 6.325 0.670 ;
+        RECT 1.835 -0.085 2.005 0.085 ;
+      LAYER met1 ;
+        RECT 0.815 0.655 1.105 0.730 ;
+        RECT 3.695 0.655 3.985 0.730 ;
+        RECT 6.095 0.655 6.385 0.730 ;
+        RECT 0.815 0.515 6.385 0.655 ;
+        RECT 0.815 0.440 1.105 0.515 ;
+        RECT 3.695 0.440 3.985 0.515 ;
+        RECT 6.095 0.440 6.385 0.515 ;
+  END
+END OAI22X1
+END LIBRARY
+
diff --git a/cells/mag/OAI22X1.mag b/cells/mag/OAI22X1.mag
new file mode 100644
index 0000000..55d0b77
--- /dev/null
+++ b/cells/mag/OAI22X1.mag
@@ -0,0 +1,373 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809598
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< 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 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+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 450 561 618
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 450 1137 618
+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 1219 439 1277 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 1039 100 1073 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 655 559 689 593
+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 649 655 683
+rect 689 649 1440 683
+rect 31 618 1409 649
+rect 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 1215 485 1281 501
+rect 209 451 221 452
+rect 159 435 221 451
+rect 1215 451 1231 485
+rect 1265 451 1281 485
+rect 1215 435 1281 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 1181 418
+rect 1119 368 1135 402
+rect 1169 401 1181 402
+rect 1169 368 1185 401
+rect 1119 352 1185 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 831 215 897 231
+rect 1119 215 1185 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 1039 150 1073 181
+rect 1119 181 1135 215
+rect 1169 184 1185 215
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
+rect 735 134 801 150
+rect 735 100 751 134
+rect 785 100 801 134
+rect 735 84 801 100
+rect 1023 134 1085 150
+rect 1023 100 1039 134
+rect 1073 131 1085 134
+rect 1215 134 1281 150
+rect 1073 100 1089 131
+rect 1023 84 1089 100
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 367 48 401 84
+rect 31 17 1409 48
+rect 0 -17 367 17
+rect 401 -17 1440 17
+<< viali >>
+rect 655 649 689 683
+rect 655 559 689 593
+rect 175 451 209 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 1039 181 1073 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 751 100 785 134
+rect 1231 100 1265 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 655 683
+rect 689 649 1440 683
+rect 0 618 1440 649
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 209 454 1231 482
+rect 209 451 221 454
+rect 163 439 221 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 1042 227 1070 454
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+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 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 1027 215 1085 227
+rect 1027 181 1039 215
+rect 1073 181 1085 215
+rect 1027 169 1085 181
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 739 134 797 146
+rect 739 131 751 134
+rect 209 103 751 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 739 100 751 103
+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 367 17
+rect 401 -17 1440 17
+rect 0 -48 1440 -17
+<< labels >>
+rlabel metal1 0 618 1440 714 0 VPWR
+port 5 se
+rlabel metal1 0 618 1440 714 0 VPWR
+port 5 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 4 se
+rlabel metal1 0 -48 1440 48 0 VGND
+port 4 se
+rlabel metal1 1027 169 1085 227 0 Y
+port 6 se
+rlabel metal1 163 439 221 454 0 Y
+port 6 se
+rlabel metal1 1042 227 1070 454 0 Y
+port 6 se
+rlabel metal1 1219 439 1277 454 0 Y
+port 6 se
+rlabel metal1 163 454 1277 482 0 Y
+port 6 se
+rlabel metal1 163 482 221 497 0 Y
+port 6 se
+rlabel metal1 1219 482 1277 497 0 Y
+port 6 se
+rlabel metal1 835 169 893 227 0 C
+port 2 se
+rlabel metal1 850 227 878 356 0 C
+port 2 se
+rlabel metal1 835 356 893 414 0 C
+port 2 se
+rlabel metal1 259 169 317 227 0 B
+port 1 se
+rlabel metal1 274 227 302 356 0 B
+port 1 se
+rlabel metal1 259 356 317 414 0 B
+port 1 se
+rlabel metal1 1123 169 1181 227 0 D
+port 3 se
+rlabel metal1 1138 227 1166 356 0 D
+port 3 se
+rlabel metal1 1123 356 1181 414 0 D
+port 3 se
+rlabel metal1 547 169 605 227 0 A
+port 0 se
+rlabel metal1 562 227 590 356 0 A
+port 0 se
+rlabel metal1 547 356 605 414 0 A
+port 0 se
+rlabel locali 0 -17 1440 17 4 VGND
+port 4 se ground default abutment
+rlabel locali 31 17 1409 48 4 VGND
+port 4 se ground default abutment
+rlabel locali 0 649 1440 683 4 VPWR
+port 5 se power default abutment
+rlabel locali 31 618 1409 649 4 VGND
+port 4 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 1440 666
+<< end >>
diff --git a/cells/mag/OAI22X1.mag.beforemagic b/cells/mag/OAI22X1.mag.beforemagic
new file mode 100644
index 0000000..a6a8f4c
--- /dev/null
+++ b/cells/mag/OAI22X1.mag.beforemagic
@@ -0,0 +1,365 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636756392
+<< 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 355 134 413 146
+rect 355 132 367 134
+rect 209 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+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 450 561 618
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 450 1137 618
+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 1219 439 1277 450
+<< ndiffc >>
+rect 175 100 209 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 1039 100 1073 134
+rect 1231 100 1265 134
+<< pdiffc >>
+rect 175 451 209 485
+rect 655 559 689 593
+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 655 683
+rect 689 649 1440 683
+rect 0 618 1440 649
+rect 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 159 485 225 501
+rect 159 451 175 485
+rect 209 452 225 485
+rect 1215 485 1281 501
+rect 209 451 221 452
+rect 159 435 221 451
+rect 1215 451 1231 485
+rect 1265 451 1281 485
+rect 1215 435 1281 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 1181 418
+rect 1119 368 1135 402
+rect 1169 401 1181 402
+rect 1169 368 1185 401
+rect 1119 352 1185 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 831 215 897 231
+rect 1119 215 1185 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 1039 150 1073 181
+rect 1119 181 1135 215
+rect 1169 184 1185 215
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 159 134 225 150
+rect 159 100 175 134
+rect 209 100 225 134
+rect 355 134 417 150
+rect 355 131 367 134
+rect 159 84 225 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
+rect 735 134 801 150
+rect 735 100 751 134
+rect 785 100 801 134
+rect 735 84 801 100
+rect 1023 134 1085 150
+rect 1023 100 1039 134
+rect 1073 131 1085 134
+rect 1215 134 1281 150
+rect 1073 100 1089 131
+rect 1023 84 1089 100
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 367 48 401 84
+rect 0 17 1440 48
+rect 0 -17 367 17
+rect 401 -17 1440 17
+rect 0 -48 1440 -17
+<< viali >>
+rect 655 649 689 683
+rect 655 559 689 593
+rect 175 451 209 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 1039 181 1073 215
+rect 1135 181 1169 215
+rect 175 100 209 134
+rect 751 100 785 134
+rect 1231 100 1265 134
+rect 367 -17 401 17
+<< metal1 >>
+rect 0 683 1440 714
+rect 0 649 655 683
+rect 689 649 1440 683
+rect 0 618 1440 649
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 163 485 221 497
+rect 163 451 175 485
+rect 209 482 221 485
+rect 1219 485 1277 497
+rect 1219 482 1231 485
+rect 209 454 1231 482
+rect 209 451 221 454
+rect 163 439 221 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 1042 227 1070 454
+rect 1219 451 1231 454
+rect 1265 451 1277 485
+rect 1219 439 1277 451
+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 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 1027 215 1085 227
+rect 1027 181 1039 215
+rect 1073 181 1085 215
+rect 1027 169 1085 181
+rect 1123 215 1181 227
+rect 1123 181 1135 215
+rect 1169 181 1181 215
+rect 1123 169 1181 181
+rect 163 134 221 146
+rect 163 100 175 134
+rect 209 131 221 134
+rect 739 134 797 146
+rect 739 131 751 134
+rect 209 103 751 131
+rect 209 100 221 103
+rect 163 88 221 100
+rect 739 100 751 103
+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 367 17
+rect 401 -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 1027 169 1085 227 0 Y
+port 5 se
+rlabel metal1 163 439 221 454 0 Y
+port 6 se
+rlabel metal1 1042 227 1070 454 0 Y
+port 7 se
+rlabel metal1 1219 439 1277 454 0 Y
+port 8 se
+rlabel metal1 163 454 1277 482 0 Y
+port 9 se
+rlabel metal1 163 482 221 497 0 Y
+port 10 se
+rlabel metal1 1219 482 1277 497 0 Y
+port 11 se
+rlabel metal1 835 169 893 227 0 C
+port 12 se
+rlabel metal1 850 227 878 356 0 C
+port 13 se
+rlabel metal1 835 356 893 414 0 C
+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 1123 169 1181 227 0 D
+port 18 se
+rlabel metal1 1138 227 1166 356 0 D
+port 19 se
+rlabel metal1 1123 356 1181 414 0 D
+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/OR2X1.lef b/cells/mag/OR2X1.lef
index 8c486d4..ded9d4a 100644
--- a/cells/mag/OR2X1.lef
+++ b/cells/mag/OR2X1.lef
@@ -14,14 +14,6 @@
     PORT
       LAYER met1 ;
         RECT 1.295 1.780 1.585 2.070 ;
-        RECT 1.370 1.540 1.510 1.780 ;
-        RECT 1.295 1.250 1.585 1.540 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
     END
   END A
   PIN B
@@ -29,42 +21,24 @@
     PORT
       LAYER met1 ;
         RECT 2.735 1.780 3.025 2.070 ;
+        RECT 2.810 1.540 2.950 1.780 ;
+        RECT 2.735 1.250 3.025 1.540 ;
     END
   END B
   PIN VGND
-    ANTENNADIFFAREA 0.873600 ;
+    ANTENNADIFFAREA 0.914200 ;
     PORT
       LAYER met1 ;
-        RECT 0.575 0.240 0.865 0.570 ;
-        RECT 3.215 0.240 3.505 0.570 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
+        RECT 3.290 0.240 3.430 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 0.555 0.240 0.885 0.590 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 0.635 0.340 0.805 0.510 ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.215 2.760 3.505 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -73,21 +47,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
         RECT 0.155 3.090 5.605 3.245 ;
-        RECT 3.195 2.740 3.525 3.090 ;
+        RECT 3.195 2.715 3.525 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 3.275 2.820 3.445 2.990 ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 3.275 2.795 3.445 2.965 ;
     END
   END VPWR
   PIN Y
@@ -98,13 +61,6 @@
         RECT 4.730 0.730 4.870 2.195 ;
         RECT 4.655 0.440 4.945 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.635 2.260 4.965 2.505 ;
-        RECT 4.655 2.175 4.965 2.260 ;
-      LAYER mcon ;
-        RECT 4.715 2.255 4.885 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
@@ -112,25 +68,38 @@
       LAYER li1 ;
         RECT 0.795 2.260 1.125 2.505 ;
         RECT 0.795 2.175 1.105 2.260 ;
+        RECT 4.635 2.175 4.965 2.505 ;
+        RECT 1.275 1.760 1.605 2.090 ;
         RECT 2.715 1.760 3.045 2.090 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-        RECT 1.355 1.155 1.525 1.480 ;
-        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 4.155 2.005 4.465 2.090 ;
+        RECT 4.155 1.760 4.485 2.005 ;
+        RECT 1.355 1.155 1.525 1.760 ;
+        RECT 2.795 1.155 2.965 1.480 ;
         RECT 1.275 0.825 1.605 1.155 ;
         RECT 2.715 0.920 3.045 1.155 ;
         RECT 2.735 0.825 3.045 0.920 ;
-        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
         RECT 2.235 0.420 2.565 0.750 ;
-        RECT 4.655 0.655 4.965 0.750 ;
-        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
         RECT 0.875 2.255 1.045 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
         RECT 2.795 1.840 2.965 2.010 ;
         RECT 4.235 1.840 4.405 2.010 ;
-        RECT 1.355 1.310 1.525 1.480 ;
+        RECT 2.795 1.310 2.965 1.480 ;
         RECT 4.235 0.905 4.405 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
         RECT 2.315 0.500 2.485 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
       LAYER met1 ;
         RECT 0.815 2.195 1.105 2.485 ;
         RECT 0.890 1.060 1.030 2.195 ;
diff --git a/cells/mag/OR2X1.mag b/cells/mag/OR2X1.mag
index 2e2d4bc..6f06233 100644
--- a/cells/mag/OR2X1.mag
+++ b/cells/mag/OR2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953870
+timestamp 1636809599
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -15,22 +15,25 @@
 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 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 463 132
 rect 497 132 509 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
 rect 977 100 1037 132
@@ -41,10 +44,10 @@
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -52,13 +55,13 @@
 rect 163 439 221 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
 rect 175 451 209 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -105,34 +108,22 @@
 rect 559 181 593 215
 rect 847 181 881 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 1152 683
+rect 0 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 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 927 451 943 485
 rect 977 451 993 485
-rect 931 435 993 451
+rect 927 435 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -141,12 +132,13 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 401 893 402
+rect 881 368 897 401
 rect 831 352 897 368
-rect 271 231 305 262
-rect 559 231 593 352
+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
@@ -158,96 +150,53 @@
 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 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 111 84 177 100
 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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
+rect 0 -17 655 17
+rect 689 -17 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 655 649 689 683
+rect 655 559 689 593
 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 559 262 593 296
 rect 847 181 881 215
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 451 221 485
@@ -269,11 +218,11 @@
 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 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
@@ -283,36 +232,27 @@
 rect 881 181 893 215
 rect 835 169 893 181
 rect 946 146 974 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 130 48 158 88
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -329,14 +269,14 @@
 port 4 se
 rlabel metal1 931 439 989 497 0 Y
 port 4 se
-rlabel metal1 259 250 317 308 0 A
-port 0 se
-rlabel metal1 274 308 302 356 0 A
-port 0 se
-rlabel metal1 259 356 317 414 0 A
-port 0 se
+rlabel metal1 547 250 605 308 0 B
+port 1 se
+rlabel metal1 562 308 590 356 0 B
+port 1 se
 rlabel metal1 547 356 605 414 0 B
 port 1 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
 rlabel locali 0 -17 1152 17 4 VGND
 port 2 se ground default abutment
 rlabel locali 31 17 1121 48 4 VGND
diff --git a/cells/mag/OR2X1.mag.beforemagic b/cells/mag/OR2X1.mag.beforemagic
index 6299fec..e0cf2e8 100644
--- a/cells/mag/OR2X1.mag.beforemagic
+++ b/cells/mag/OR2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753856
+timestamp 1636756485
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -13,22 +13,25 @@
 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 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 463 132
 rect 497 132 509 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
 rect 977 100 1037 132
@@ -39,10 +42,10 @@
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -50,13 +53,13 @@
 rect 163 439 221 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
 rect 175 451 209 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -104,34 +107,22 @@
 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 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 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 927 451 943 485
 rect 977 451 993 485
-rect 931 435 993 451
+rect 927 435 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -140,12 +131,13 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 401 893 402
+rect 881 368 897 401
 rect 831 352 897 368
-rect 271 231 305 262
-rect 559 231 593 352
+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
@@ -157,97 +149,54 @@
 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 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 111 84 177 100
 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 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 -17 655 17
+rect 689 -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 655 649 689 683
+rect 655 559 689 593
 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 559 262 593 296
 rect 847 181 881 215
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 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
+rect 655 -17 689 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 451 221 485
@@ -269,11 +218,11 @@
 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 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
@@ -283,36 +232,27 @@
 rect 881 181 893 215
 rect 835 169 893 181
 rect 946 146 974 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 931 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 130 48 158 88
+rect 658 48 686 88
 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 -17 655 17
+rect 689 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel locali 0 618 1152 714 0 VDD
@@ -329,13 +269,13 @@
 port 6 se
 rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 259 250 317 308 0 A
+rlabel metal1 547 250 605 308 0 B
 port 8 se
-rlabel metal1 274 308 302 356 0 A
+rlabel metal1 562 308 590 356 0 B
 port 9 se
-rlabel metal1 259 356 317 414 0 A
-port 10 se
 rlabel metal1 547 356 605 414 0 B
+port 10 se
+rlabel metal1 259 356 317 414 0 A
 port 11 se
 << properties >>
 string FIXED_BBOX 0 0 1152 666
diff --git a/cells/mag/OR2X2.lef b/cells/mag/OR2X2.lef
index 7247db0..22d0335 100644
--- a/cells/mag/OR2X2.lef
+++ b/cells/mag/OR2X2.lef
@@ -14,6 +14,8 @@
     PORT
       LAYER met1 ;
         RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.540 1.510 1.780 ;
+        RECT 1.295 1.250 1.585 1.540 ;
     END
   END A
   PIN B
@@ -21,50 +23,20 @@
     PORT
       LAYER met1 ;
         RECT 2.735 1.780 3.025 2.070 ;
-        RECT 2.810 1.540 2.950 1.780 ;
-        RECT 2.735 1.250 3.025 1.540 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
     END
   END B
   PIN VGND
-    ANTENNADIFFAREA 0.873600 ;
+    ANTENNADIFFAREA 0.914200 ;
     PORT
       LAYER met1 ;
-        RECT 0.575 0.240 0.865 0.570 ;
-        RECT 3.215 0.240 3.505 0.570 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 0.650 0.240 0.790 0.440 ;
         RECT 0.000 -0.240 5.760 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 0.555 0.240 0.885 0.590 ;
-        RECT 3.195 0.240 3.525 0.590 ;
-        RECT 0.155 0.085 5.605 0.240 ;
-        RECT 0.000 -0.085 5.760 0.085 ;
-      LAYER mcon ;
-        RECT 0.635 0.340 0.805 0.510 ;
-        RECT 3.275 0.340 3.445 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 5.760 3.570 ;
-        RECT 3.215 2.760 3.505 3.090 ;
+        RECT 3.215 2.735 3.505 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -73,21 +45,10 @@
       LAYER li1 ;
         RECT 0.000 3.245 5.760 3.415 ;
         RECT 0.155 3.090 5.605 3.245 ;
-        RECT 3.195 2.740 3.525 3.090 ;
+        RECT 3.195 2.715 3.525 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 3.275 2.820 3.445 2.990 ;
+        RECT 3.275 3.245 3.445 3.415 ;
+        RECT 3.275 2.795 3.445 2.965 ;
     END
   END VPWR
   PIN Y
@@ -98,13 +59,6 @@
         RECT 4.730 0.730 4.870 2.195 ;
         RECT 4.655 0.440 4.945 0.730 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 4.635 2.260 4.965 2.505 ;
-        RECT 4.655 2.175 4.965 2.260 ;
-      LAYER mcon ;
-        RECT 4.715 2.255 4.885 2.425 ;
-    END
   END Y
   OBS
       LAYER nwell ;
@@ -112,25 +66,38 @@
       LAYER li1 ;
         RECT 0.795 2.260 1.125 2.505 ;
         RECT 0.795 2.175 1.105 2.260 ;
+        RECT 4.635 2.175 4.965 2.505 ;
         RECT 1.275 1.760 1.605 2.090 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-        RECT 1.355 1.155 1.525 1.760 ;
-        RECT 2.795 1.155 2.965 1.480 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 2.005 4.465 2.090 ;
+        RECT 4.155 1.760 4.485 2.005 ;
+        RECT 1.355 1.155 1.525 1.480 ;
+        RECT 2.795 1.155 2.965 1.760 ;
         RECT 1.275 0.825 1.605 1.155 ;
         RECT 2.715 0.920 3.045 1.155 ;
         RECT 2.735 0.825 3.045 0.920 ;
-        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 4.155 0.920 4.485 1.155 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 0.555 0.420 0.885 0.750 ;
         RECT 2.235 0.420 2.565 0.750 ;
-        RECT 4.655 0.655 4.965 0.750 ;
-        RECT 4.635 0.420 4.965 0.655 ;
+        RECT 3.215 0.655 3.525 0.750 ;
+        RECT 3.195 0.420 3.525 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 3.275 0.240 3.445 0.420 ;
+        RECT 0.155 0.085 5.605 0.240 ;
+        RECT 0.000 -0.085 5.760 0.085 ;
       LAYER mcon ;
         RECT 0.875 2.255 1.045 2.425 ;
+        RECT 4.715 2.255 4.885 2.425 ;
         RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
         RECT 4.235 1.840 4.405 2.010 ;
-        RECT 2.795 1.310 2.965 1.480 ;
+        RECT 1.355 1.310 1.525 1.480 ;
         RECT 4.235 0.905 4.405 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
         RECT 2.315 0.500 2.485 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 0.635 -0.085 0.805 0.085 ;
       LAYER met1 ;
         RECT 0.815 2.195 1.105 2.485 ;
         RECT 0.890 1.060 1.030 2.195 ;
diff --git a/cells/mag/OR2X2.mag b/cells/mag/OR2X2.mag
index 990d72c..52a278b 100644
--- a/cells/mag/OR2X2.mag
+++ b/cells/mag/OR2X2.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953871
+timestamp 1636809600
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -15,22 +15,25 @@
 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 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 463 132
 rect 497 132 509 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
 rect 977 100 1037 132
@@ -41,10 +44,10 @@
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -52,13 +55,13 @@
 rect 163 439 221 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
 rect 175 451 209 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -105,34 +108,22 @@
 rect 559 181 593 215
 rect 847 181 881 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 1152 683
+rect 0 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 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 927 451 943 485
 rect 977 451 993 485
-rect 931 435 993 451
+rect 927 435 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -141,12 +132,13 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 401 893 402
+rect 881 368 897 401
 rect 831 352 897 368
-rect 271 231 305 352
-rect 559 231 593 262
+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
@@ -158,96 +150,53 @@
 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 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 111 84 177 100
 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 rect 977 100 993 134
 rect 927 84 993 100
-rect 639 48 705 68
+rect 655 48 689 84
 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
+rect 0 -17 127 17
+rect 161 -17 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 655 649 689 683
+rect 655 559 689 593
 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 271 262 305 296
 rect 847 181 881 215
-rect 127 68 161 102
+rect 127 100 161 134
 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 451 221 485
@@ -269,11 +218,11 @@
 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 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
@@ -283,36 +232,22 @@
 rect 881 181 893 215
 rect 835 169 893 181
 rect 946 146 974 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 130 48 158 88
 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 -17 127 17
+rect 161 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel metal1 0 618 1152 714 0 VPWR
@@ -329,12 +264,12 @@
 port 4 se
 rlabel metal1 931 439 989 497 0 Y
 port 4 se
+rlabel metal1 259 250 317 308 0 A
+port 0 se
+rlabel metal1 274 308 302 356 0 A
+port 0 se
 rlabel metal1 259 356 317 414 0 A
 port 0 se
-rlabel metal1 547 250 605 308 0 B
-port 1 se
-rlabel metal1 562 308 590 356 0 B
-port 1 se
 rlabel metal1 547 356 605 414 0 B
 port 1 se
 rlabel locali 0 -17 1152 17 4 VGND
diff --git a/cells/mag/OR2X2.mag.beforemagic b/cells/mag/OR2X2.mag.beforemagic
index 8575741..b8e32b2 100644
--- a/cells/mag/OR2X2.mag.beforemagic
+++ b/cells/mag/OR2X2.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753902
+timestamp 1636756529
 << nwell >>
 rect 0 358 1152 666
 << nmos >>
@@ -13,22 +13,25 @@
 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 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 161 100 273 132
+rect 115 48 273 100
 rect 303 100 463 132
 rect 497 132 509 134
-rect 931 134 989 146
-rect 931 132 943 134
+rect 643 134 701 146
+rect 643 132 655 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 591 100 655 132
+rect 689 132 701 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 689 100 849 132
+rect 591 48 849 100
 rect 879 100 943 132
 rect 977 132 989 134
 rect 977 100 1037 132
@@ -39,10 +42,10 @@
 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 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
 rect 879 485 1037 618
 rect 879 451 943 485
 rect 977 451 1037 485
@@ -50,13 +53,13 @@
 rect 163 439 221 450
 rect 931 439 989 450
 << ndiffc >>
-rect 127 68 161 102
+rect 127 100 161 134
 rect 463 100 497 134
-rect 655 68 689 102
+rect 655 100 689 134
 rect 943 100 977 134
 << pdiffc >>
 rect 175 451 209 485
-rect 655 564 689 598
+rect 655 559 689 593
 rect 943 451 977 485
 << poly >>
 rect 273 618 303 644
@@ -104,34 +107,22 @@
 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 649 655 683
+rect 689 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 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
 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 927 451 943 485
 rect 977 451 993 485
-rect 931 435 993 451
+rect 927 435 993 451
 rect 255 402 321 418
 rect 255 368 271 402
 rect 305 368 321 402
@@ -140,12 +131,13 @@
 rect 543 368 559 402
 rect 593 368 609 402
 rect 543 352 609 368
-rect 831 402 897 418
+rect 831 402 893 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 401 893 402
+rect 881 368 897 401
 rect 831 352 897 368
-rect 271 231 305 352
-rect 559 231 593 262
+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
@@ -157,97 +149,54 @@
 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 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 111 84 177 100
 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 643 134 705 150
+rect 643 131 655 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 639 100 655 131
+rect 689 100 705 134
+rect 639 84 705 100
+rect 927 134 993 150
+rect 927 100 943 134
 rect 977 100 993 134
 rect 927 84 993 100
-rect 639 48 705 68
+rect 655 48 689 84
 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 -17 127 17
+rect 161 -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 655 649 689 683
+rect 655 559 689 593
 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 271 262 305 296
 rect 847 181 881 215
-rect 127 68 161 102
+rect 127 100 161 134
 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 649 655 683
+rect 689 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 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
 rect 163 485 221 497
 rect 163 451 175 485
 rect 209 451 221 485
@@ -269,11 +218,11 @@
 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 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
@@ -283,36 +232,22 @@
 rect 881 181 893 215
 rect 835 169 893 181
 rect 946 146 974 439
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
 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 134 989 146
 rect 931 100 943 134
 rect 977 100 989 134
 rect 931 88 989 100
-rect 643 48 701 68
+rect 130 48 158 88
 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 -17 127 17
+rect 161 -17 1152 17
 rect 0 -48 1152 -17
 << labels >>
 rlabel locali 0 618 1152 714 0 VDD
@@ -329,11 +264,11 @@
 port 6 se
 rlabel metal1 931 439 989 497 0 Y
 port 7 se
-rlabel metal1 259 356 317 414 0 A
+rlabel metal1 259 250 317 308 0 A
 port 8 se
-rlabel metal1 547 250 605 308 0 B
+rlabel metal1 274 308 302 356 0 A
 port 9 se
-rlabel metal1 562 308 590 356 0 B
+rlabel metal1 259 356 317 414 0 A
 port 10 se
 rlabel metal1 547 356 605 414 0 B
 port 11 se
diff --git a/cells/mag/SUTHERLAND1989.lef b/cells/mag/SUTHERLAND1989.lef
new file mode 100644
index 0000000..1c79955
--- /dev/null
+++ b/cells/mag/SUTHERLAND1989.lef
@@ -0,0 +1,169 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO SUTHERLAND1989
+  CLASS CORE ;
+  FOREIGN SUTHERLAND1989 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.060 3.025 1.135 ;
+        RECT 4.175 1.060 4.465 1.135 ;
+        RECT 2.735 0.920 4.465 1.060 ;
+        RECT 2.735 0.845 3.025 0.920 ;
+        RECT 4.175 0.845 4.465 0.920 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.995 1.585 2.070 ;
+        RECT 5.615 1.995 5.905 2.070 ;
+        RECT 1.295 1.855 5.905 1.995 ;
+        RECT 1.295 1.780 1.585 1.855 ;
+        RECT 5.615 1.780 5.905 1.855 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 5.690 1.135 5.830 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+        RECT 5.615 0.845 5.905 1.135 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 7.775 1.060 8.065 1.135 ;
+        RECT 9.935 1.060 10.225 1.135 ;
+        RECT 7.775 0.920 10.225 1.060 ;
+        RECT 7.775 0.845 8.065 0.920 ;
+        RECT 9.935 0.845 10.225 0.920 ;
+    END
+  END C
+  PIN VGND
+    ANTENNADIFFAREA 1.124200 ;
+    PORT
+      LAYER met1 ;
+        RECT 3.215 0.440 3.505 0.730 ;
+        RECT 3.290 0.240 3.430 0.440 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 3.215 2.735 3.505 3.090 ;
+        RECT 6.095 2.735 6.385 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 1.083600 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 11.520 3.415 ;
+        RECT 0.155 3.215 11.365 3.245 ;
+        RECT 0.155 3.090 5.905 3.215 ;
+        RECT 6.575 3.090 11.365 3.215 ;
+        RECT 3.195 2.715 3.525 3.090 ;
+      LAYER mcon ;
+        RECT 6.155 3.245 6.325 3.415 ;
+        RECT 3.275 2.795 3.445 2.965 ;
+    END
+  END VPWR
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 11.520 3.330 ;
+      LAYER li1 ;
+        RECT 6.075 2.715 6.405 3.045 ;
+        RECT 0.555 2.175 0.885 2.505 ;
+        RECT 5.115 2.260 5.445 2.505 ;
+        RECT 5.115 2.175 5.425 2.260 ;
+        RECT 7.755 2.175 8.085 2.505 ;
+        RECT 9.195 2.175 9.525 2.505 ;
+        RECT 10.395 2.260 10.725 2.505 ;
+        RECT 10.415 2.175 10.725 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 5.595 1.760 5.925 2.090 ;
+        RECT 7.035 1.760 7.365 2.090 ;
+        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 4.235 1.155 4.405 1.760 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.920 3.045 1.155 ;
+        RECT 2.715 0.825 3.025 0.920 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 5.595 0.825 5.905 0.920 ;
+        RECT 7.035 0.825 7.365 1.155 ;
+        RECT 7.835 0.750 8.005 2.175 ;
+        RECT 9.915 1.760 10.245 2.090 ;
+        RECT 9.995 1.155 10.165 1.760 ;
+        RECT 9.915 0.825 10.245 1.155 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 3.195 0.420 3.525 0.750 ;
+        RECT 5.115 0.655 5.425 0.750 ;
+        RECT 5.115 0.420 5.445 0.655 ;
+        RECT 6.075 0.420 6.405 0.750 ;
+        RECT 7.755 0.420 8.085 0.750 ;
+        RECT 9.195 0.420 9.525 0.750 ;
+        RECT 10.415 0.655 10.725 0.750 ;
+        RECT 10.395 0.420 10.725 0.655 ;
+        RECT 6.155 0.240 6.325 0.420 ;
+        RECT 0.155 0.085 11.365 0.240 ;
+        RECT 0.000 -0.085 11.520 0.085 ;
+      LAYER mcon ;
+        RECT 6.155 2.795 6.325 2.965 ;
+        RECT 0.635 2.255 0.805 2.425 ;
+        RECT 5.195 2.255 5.365 2.425 ;
+        RECT 9.275 2.255 9.445 2.425 ;
+        RECT 10.475 2.255 10.645 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 7.115 1.840 7.285 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 7.115 0.905 7.285 1.075 ;
+        RECT 7.835 0.905 8.005 1.075 ;
+        RECT 9.995 0.905 10.165 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 3.275 0.500 3.445 0.670 ;
+        RECT 5.195 0.500 5.365 0.670 ;
+        RECT 9.275 0.500 9.445 0.670 ;
+        RECT 10.475 0.500 10.645 0.670 ;
+        RECT 3.275 -0.085 3.445 0.085 ;
+      LAYER met1 ;
+        RECT 0.575 2.195 0.865 2.485 ;
+        RECT 5.135 2.410 5.425 2.485 ;
+        RECT 9.215 2.410 9.505 2.485 ;
+        RECT 5.135 2.270 9.505 2.410 ;
+        RECT 5.135 2.195 5.425 2.270 ;
+        RECT 9.215 2.195 9.505 2.270 ;
+        RECT 10.415 2.195 10.705 2.485 ;
+        RECT 0.650 0.730 0.790 2.195 ;
+        RECT 7.055 1.995 7.345 2.070 ;
+        RECT 10.490 1.995 10.630 2.195 ;
+        RECT 7.055 1.855 10.630 1.995 ;
+        RECT 7.055 1.780 7.345 1.855 ;
+        RECT 7.130 1.135 7.270 1.780 ;
+        RECT 7.055 0.845 7.345 1.135 ;
+        RECT 10.490 0.730 10.630 1.855 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 5.135 0.655 5.425 0.730 ;
+        RECT 9.215 0.655 9.505 0.730 ;
+        RECT 5.135 0.515 9.505 0.655 ;
+        RECT 5.135 0.440 5.425 0.515 ;
+        RECT 9.215 0.440 9.505 0.515 ;
+        RECT 10.415 0.440 10.705 0.730 ;
+  END
+END SUTHERLAND1989
+END LIBRARY
+
diff --git a/cells/mag/SUTHERLAND1989.mag b/cells/mag/SUTHERLAND1989.mag
new file mode 100644
index 0000000..d315a65
--- /dev/null
+++ b/cells/mag/SUTHERLAND1989.mag
@@ -0,0 +1,524 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809601
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 2304 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 2001 48 2031 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 2001 450 2031 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1555 134 1613 146
+rect 1555 132 1567 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
+rect 1455 100 1567 132
+rect 1601 100 1613 134
+rect 1455 48 1613 100
+rect 1843 134 1901 146
+rect 1843 100 1855 134
+rect 1889 132 1901 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1889 100 2001 132
+rect 1843 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
+rect 1455 485 1613 618
+rect 1455 451 1567 485
+rect 1601 451 1613 485
+rect 1455 450 1613 451
+rect 115 439 173 450
+rect 1027 439 1085 450
+rect 1555 439 1613 450
+rect 1843 485 2001 618
+rect 1843 451 1855 485
+rect 1889 451 2001 485
+rect 1843 450 2001 451
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 1843 439 1901 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1039 100 1073 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1855 100 1889 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 655 559 689 593
+rect 1039 451 1073 485
+rect 1231 559 1265 593
+rect 1567 451 1601 485
+rect 1855 451 1889 485
+rect 2095 451 2129 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 2001 618 2031 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 2001 418 2031 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 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 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 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 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 2001 132 2031 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 2001 22 2031 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 1999 368 2033 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 1999 181 2033 215
+<< locali >>
+rect 0 649 1231 683
+rect 1265 649 2304 683
+rect 31 643 2273 649
+rect 31 618 1181 643
+rect 1315 618 2273 643
+rect 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 1215 593 1281 609
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1215 543 1281 559
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 1023 485 1089 501
+rect 1023 451 1039 485
+rect 1073 452 1089 485
+rect 1551 485 1617 501
+rect 1073 451 1085 452
+rect 1023 435 1085 451
+rect 1551 451 1567 485
+rect 1601 451 1617 485
+rect 1551 435 1617 451
+rect 1839 485 1905 501
+rect 1839 451 1855 485
+rect 1889 451 1905 485
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 1839 435 1905 451
+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 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 559 231 593 352
+rect 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 1407 215 1473 231
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1567 215 1601 435
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 1999 231 2033 352
+rect 1567 150 1601 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 1023 134 1085 150
+rect 1023 100 1039 134
+rect 1073 131 1085 134
+rect 1215 134 1281 150
+rect 1073 100 1089 131
+rect 1023 84 1089 100
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1551 134 1617 150
+rect 1551 100 1567 134
+rect 1601 100 1617 134
+rect 1551 84 1617 100
+rect 1839 134 1905 150
+rect 1839 100 1855 134
+rect 1889 100 1905 134
+rect 2083 134 2145 150
+rect 2083 131 2095 134
+rect 1839 84 1905 100
+rect 2079 100 2095 131
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 1231 48 1265 84
+rect 31 17 2273 48
+rect 0 -17 655 17
+rect 689 -17 2304 17
+<< viali >>
+rect 1231 649 1265 683
+rect 655 559 689 593
+rect 1231 559 1265 593
+rect 127 451 161 485
+rect 1039 451 1073 485
+rect 1855 451 1889 485
+rect 2095 451 2129 485
+rect 271 368 305 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
+rect 1567 181 1601 215
+rect 1999 181 2033 215
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1039 100 1073 134
+rect 1855 100 1889 134
+rect 2095 100 2129 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 1231 683
+rect 1265 649 2304 683
+rect 0 618 2304 649
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 1219 593 1277 618
+rect 1219 559 1231 593
+rect 1265 559 1277 593
+rect 1219 547 1277 559
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 1027 485 1085 497
+rect 1027 451 1039 485
+rect 1073 482 1085 485
+rect 1843 485 1901 497
+rect 1843 482 1855 485
+rect 1073 454 1855 482
+rect 1073 451 1085 454
+rect 1027 439 1085 451
+rect 1843 451 1855 454
+rect 1889 451 1901 485
+rect 1843 439 1901 451
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 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 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 399 1469 402
+rect 2098 399 2126 439
+rect 1457 371 2126 399
+rect 1457 368 1469 371
+rect 1411 356 1469 368
+rect 274 227 302 356
+rect 1138 227 1166 356
+rect 1426 227 1454 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 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 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 1555 215 1613 227
+rect 1555 181 1567 215
+rect 1601 212 1613 215
+rect 1987 215 2045 227
+rect 1987 212 1999 215
+rect 1601 184 1999 212
+rect 1601 181 1613 184
+rect 1555 169 1613 181
+rect 1987 181 1999 184
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2098 146 2126 371
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 1027 134 1085 146
+rect 1027 100 1039 134
+rect 1073 131 1085 134
+rect 1843 134 1901 146
+rect 1843 131 1855 134
+rect 1073 103 1855 131
+rect 1073 100 1085 103
+rect 1027 88 1085 100
+rect 1843 100 1855 103
+rect 1889 100 1901 134
+rect 1843 88 1901 100
+rect 2083 134 2141 146
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 658 48 686 88
+rect 0 17 2304 48
+rect 0 -17 655 17
+rect 689 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel metal1 0 618 2304 714 0 VPWR
+port 4 se
+rlabel metal1 0 618 2304 714 0 VPWR
+port 4 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 3 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 3 se
+rlabel metal1 1555 169 1613 184 0 C
+port 2 se
+rlabel metal1 1987 169 2045 184 0 C
+port 2 se
+rlabel metal1 1555 184 2045 212 0 C
+port 2 se
+rlabel metal1 1555 212 1613 227 0 C
+port 2 se
+rlabel metal1 1987 212 2045 227 0 C
+port 2 se
+rlabel metal1 259 169 317 227 0 B
+port 1 se
+rlabel metal1 1123 169 1181 227 0 B
+port 1 se
+rlabel metal1 274 227 302 356 0 B
+port 1 se
+rlabel metal1 1138 227 1166 356 0 B
+port 1 se
+rlabel metal1 259 356 317 371 0 B
+port 1 se
+rlabel metal1 1123 356 1181 371 0 B
+port 1 se
+rlabel metal1 259 371 1181 399 0 B
+port 1 se
+rlabel metal1 259 399 317 414 0 B
+port 1 se
+rlabel metal1 1123 399 1181 414 0 B
+port 1 se
+rlabel metal1 547 169 605 184 0 A
+port 0 se
+rlabel metal1 835 169 893 184 0 A
+port 0 se
+rlabel metal1 547 184 893 212 0 A
+port 0 se
+rlabel metal1 547 212 605 227 0 A
+port 0 se
+rlabel metal1 835 212 893 227 0 A
+port 0 se
+rlabel locali 0 -17 2304 17 4 VGND
+port 3 se ground default abutment
+rlabel locali 31 17 2273 48 4 VGND
+port 3 se ground default abutment
+rlabel locali 0 649 2304 683 4 VPWR
+port 4 se power default abutment
+rlabel metal1 31 618 2273 649 4 VGND
+port 3 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/SUTHERLAND1989.mag.beforemagic b/cells/mag/SUTHERLAND1989.mag.beforemagic
new file mode 100644
index 0000000..82559c9
--- /dev/null
+++ b/cells/mag/SUTHERLAND1989.mag.beforemagic
@@ -0,0 +1,516 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636757171
+<< nwell >>
+rect 0 358 2304 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 2001 48 2031 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 2001 450 2031 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 48 561 132
+rect 591 100 655 132
+rect 689 132 701 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 689 100 849 132
+rect 591 48 849 100
+rect 879 100 1039 132
+rect 1073 132 1085 134
+rect 1219 134 1277 146
+rect 1219 132 1231 134
+rect 1073 100 1137 132
+rect 879 48 1137 100
+rect 1167 100 1231 132
+rect 1265 132 1277 134
+rect 1555 134 1613 146
+rect 1555 132 1567 134
+rect 1265 100 1425 132
+rect 1167 48 1425 100
+rect 1455 100 1567 132
+rect 1601 100 1613 134
+rect 1455 48 1613 100
+rect 1843 134 1901 146
+rect 1843 100 1855 134
+rect 1889 132 1901 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1889 100 2001 132
+rect 1843 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 485 273 618
+rect 115 451 127 485
+rect 161 451 273 485
+rect 115 450 273 451
+rect 303 450 561 618
+rect 591 593 849 618
+rect 591 559 655 593
+rect 689 559 849 593
+rect 591 450 849 559
+rect 879 485 1137 618
+rect 879 451 1039 485
+rect 1073 451 1137 485
+rect 879 450 1137 451
+rect 1167 593 1425 618
+rect 1167 559 1231 593
+rect 1265 559 1425 593
+rect 1167 450 1425 559
+rect 1455 485 1613 618
+rect 1455 451 1567 485
+rect 1601 451 1613 485
+rect 1455 450 1613 451
+rect 115 439 173 450
+rect 1027 439 1085 450
+rect 1555 439 1613 450
+rect 1843 485 2001 618
+rect 1843 451 1855 485
+rect 1889 451 2001 485
+rect 1843 450 2001 451
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 1843 439 1901 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1039 100 1073 134
+rect 1231 100 1265 134
+rect 1567 100 1601 134
+rect 1855 100 1889 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 127 451 161 485
+rect 655 559 689 593
+rect 1039 451 1073 485
+rect 1231 559 1265 593
+rect 1567 451 1601 485
+rect 1855 451 1889 485
+rect 2095 451 2129 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 2001 618 2031 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 2001 418 2031 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 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 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 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 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 2001 132 2031 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 2001 22 2031 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 1999 368 2033 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 1999 181 2033 215
+<< locali >>
+rect 0 683 2304 714
+rect 0 649 1231 683
+rect 1265 649 2304 683
+rect 0 643 2304 649
+rect 0 618 1181 643
+rect 1315 618 2304 643
+rect 639 593 705 618
+rect 639 559 655 593
+rect 689 559 705 593
+rect 639 543 705 559
+rect 1215 593 1281 609
+rect 1215 559 1231 593
+rect 1265 559 1281 593
+rect 1215 543 1281 559
+rect 111 485 177 501
+rect 111 451 127 485
+rect 161 451 177 485
+rect 111 435 177 451
+rect 1023 485 1089 501
+rect 1023 451 1039 485
+rect 1073 452 1089 485
+rect 1551 485 1617 501
+rect 1073 451 1085 452
+rect 1023 435 1085 451
+rect 1551 451 1567 485
+rect 1601 451 1617 485
+rect 1551 435 1617 451
+rect 1839 485 1905 501
+rect 1839 451 1855 485
+rect 1889 451 1905 485
+rect 2079 485 2145 501
+rect 2079 452 2095 485
+rect 1839 435 1905 451
+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 1473 418
+rect 1407 368 1423 402
+rect 1457 368 1473 402
+rect 1407 352 1473 368
+rect 559 231 593 352
+rect 847 231 881 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 831 215 897 231
+rect 593 181 605 184
+rect 543 165 605 181
+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 1407 215 1473 231
+rect 1169 181 1181 184
+rect 1119 165 1181 181
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1407 165 1473 181
+rect 1567 215 1601 435
+rect 1983 402 2049 418
+rect 1983 368 1999 402
+rect 2033 368 2049 402
+rect 1983 352 2049 368
+rect 1999 231 2033 352
+rect 1567 150 1601 181
+rect 1983 215 2049 231
+rect 1983 181 1999 215
+rect 2033 181 2049 215
+rect 1983 165 2049 181
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 639 134 705 150
+rect 639 100 655 134
+rect 689 100 705 134
+rect 639 84 705 100
+rect 1023 134 1085 150
+rect 1023 100 1039 134
+rect 1073 131 1085 134
+rect 1215 134 1281 150
+rect 1073 100 1089 131
+rect 1023 84 1089 100
+rect 1215 100 1231 134
+rect 1265 100 1281 134
+rect 1215 84 1281 100
+rect 1551 134 1617 150
+rect 1551 100 1567 134
+rect 1601 100 1617 134
+rect 1551 84 1617 100
+rect 1839 134 1905 150
+rect 1839 100 1855 134
+rect 1889 100 1905 134
+rect 2083 134 2145 150
+rect 2083 131 2095 134
+rect 1839 84 1905 100
+rect 2079 100 2095 131
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 1231 48 1265 84
+rect 0 17 2304 48
+rect 0 -17 655 17
+rect 689 -17 2304 17
+rect 0 -48 2304 -17
+<< viali >>
+rect 1231 649 1265 683
+rect 655 559 689 593
+rect 1231 559 1265 593
+rect 127 451 161 485
+rect 1039 451 1073 485
+rect 1855 451 1889 485
+rect 2095 451 2129 485
+rect 271 368 305 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
+rect 1567 181 1601 215
+rect 1999 181 2033 215
+rect 127 100 161 134
+rect 655 100 689 134
+rect 1039 100 1073 134
+rect 1855 100 1889 134
+rect 2095 100 2129 134
+rect 655 -17 689 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 1231 683
+rect 1265 649 2304 683
+rect 0 618 2304 649
+rect 643 593 701 618
+rect 643 559 655 593
+rect 689 559 701 593
+rect 643 547 701 559
+rect 1219 593 1277 618
+rect 1219 559 1231 593
+rect 1265 559 1277 593
+rect 1219 547 1277 559
+rect 115 485 173 497
+rect 115 451 127 485
+rect 161 451 173 485
+rect 115 439 173 451
+rect 1027 485 1085 497
+rect 1027 451 1039 485
+rect 1073 482 1085 485
+rect 1843 485 1901 497
+rect 1843 482 1855 485
+rect 1073 454 1855 482
+rect 1073 451 1085 454
+rect 1027 439 1085 451
+rect 1843 451 1855 454
+rect 1889 451 1901 485
+rect 1843 439 1901 451
+rect 2083 485 2141 497
+rect 2083 451 2095 485
+rect 2129 451 2141 485
+rect 2083 439 2141 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 1123 368 1135 371
+rect 1169 368 1181 402
+rect 1123 356 1181 368
+rect 1411 402 1469 414
+rect 1411 368 1423 402
+rect 1457 399 1469 402
+rect 2098 399 2126 439
+rect 1457 371 2126 399
+rect 1457 368 1469 371
+rect 1411 356 1469 368
+rect 274 227 302 356
+rect 1138 227 1166 356
+rect 1426 227 1454 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 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 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 1555 215 1613 227
+rect 1555 181 1567 215
+rect 1601 212 1613 215
+rect 1987 215 2045 227
+rect 1987 212 1999 215
+rect 1601 184 1999 212
+rect 1601 181 1613 184
+rect 1555 169 1613 181
+rect 1987 181 1999 184
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2098 146 2126 371
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 115 88 173 100
+rect 643 134 701 146
+rect 643 100 655 134
+rect 689 100 701 134
+rect 643 88 701 100
+rect 1027 134 1085 146
+rect 1027 100 1039 134
+rect 1073 131 1085 134
+rect 1843 134 1901 146
+rect 1843 131 1855 134
+rect 1073 103 1855 131
+rect 1073 100 1085 103
+rect 1027 88 1085 100
+rect 1843 100 1855 103
+rect 1889 100 1901 134
+rect 1843 88 1901 100
+rect 2083 134 2141 146
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 658 48 686 88
+rect 0 17 2304 48
+rect 0 -17 655 17
+rect 689 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel metal1 0 618 2304 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2304 714 0 VDD
+port 2 se
+rlabel locali 0 -48 2304 48 0 GND
+port 3 se
+rlabel metal1 0 -48 2304 48 0 GND
+port 4 se
+rlabel metal1 1555 169 1613 184 0 C
+port 5 se
+rlabel metal1 1987 169 2045 184 0 C
+port 6 se
+rlabel metal1 1555 184 2045 212 0 C
+port 7 se
+rlabel metal1 1555 212 1613 227 0 C
+port 8 se
+rlabel metal1 1987 212 2045 227 0 C
+port 9 se
+rlabel metal1 259 169 317 227 0 B
+port 10 se
+rlabel metal1 1123 169 1181 227 0 B
+port 11 se
+rlabel metal1 274 227 302 356 0 B
+port 12 se
+rlabel metal1 1138 227 1166 356 0 B
+port 13 se
+rlabel metal1 259 356 317 371 0 B
+port 14 se
+rlabel metal1 1123 356 1181 371 0 B
+port 15 se
+rlabel metal1 259 371 1181 399 0 B
+port 16 se
+rlabel metal1 259 399 317 414 0 B
+port 17 se
+rlabel metal1 1123 399 1181 414 0 B
+port 18 se
+rlabel metal1 547 169 605 184 0 A
+port 19 se
+rlabel metal1 835 169 893 184 0 A
+port 20 se
+rlabel metal1 547 184 893 212 0 A
+port 21 se
+rlabel metal1 547 212 605 227 0 A
+port 22 se
+rlabel metal1 835 212 893 227 0 A
+port 23 se
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/VANBERKEL1991.lef b/cells/mag/VANBERKEL1991.lef
new file mode 100644
index 0000000..735d483
--- /dev/null
+++ b/cells/mag/VANBERKEL1991.lef
@@ -0,0 +1,186 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO VANBERKEL1991
+  CLASS CORE ;
+  FOREIGN VANBERKEL1991 ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 11.520 BY 3.330 ;
+  SYMMETRY X Y ;
+  SITE unit ;
+  PIN A
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 1.295 1.780 1.585 2.070 ;
+        RECT 1.370 1.135 1.510 1.780 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+        RECT 1.370 0.655 1.510 0.845 ;
+        RECT 3.215 0.655 3.505 0.730 ;
+        RECT 1.370 0.515 3.505 0.655 ;
+        RECT 3.215 0.440 3.505 0.515 ;
+    END
+  END A
+  PIN B
+    ANTENNAGATEAREA 0.378000 ;
+    PORT
+      LAYER met1 ;
+        RECT 2.735 1.060 3.025 1.135 ;
+        RECT 8.495 1.060 8.785 1.135 ;
+        RECT 2.735 0.920 8.785 1.060 ;
+        RECT 2.735 0.845 3.025 0.920 ;
+        RECT 8.495 0.845 8.785 0.920 ;
+    END
+  END B
+  PIN C
+    ANTENNAGATEAREA 0.189000 ;
+    ANTENNADIFFAREA 1.031650 ;
+    PORT
+      LAYER met1 ;
+        RECT 7.055 2.410 7.345 2.485 ;
+        RECT 10.415 2.410 10.705 2.485 ;
+        RECT 7.055 2.270 10.705 2.410 ;
+        RECT 7.055 2.195 7.345 2.270 ;
+        RECT 10.415 2.195 10.705 2.270 ;
+        RECT 10.490 0.730 10.630 2.195 ;
+        RECT 10.415 0.440 10.705 0.730 ;
+    END
+  END C
+  PIN VGND
+    ANTENNADIFFAREA 0.914200 ;
+    PORT
+      LAYER met1 ;
+        RECT 0.000 -0.240 11.520 0.240 ;
+    END
+    PORT
+      LAYER met1 ;
+        RECT 0.000 3.090 11.520 3.570 ;
+        RECT 8.975 2.735 9.265 3.090 ;
+    END
+  END VGND
+  PIN VPWR
+    ANTENNADIFFAREA 1.747200 ;
+    PORT
+      LAYER li1 ;
+        RECT 0.000 3.245 11.520 3.415 ;
+        RECT 0.155 3.090 11.365 3.245 ;
+        RECT 4.635 2.715 4.965 3.090 ;
+        RECT 8.955 2.715 9.285 3.090 ;
+      LAYER mcon ;
+        RECT 4.715 3.245 4.885 3.415 ;
+        RECT 9.035 2.795 9.205 2.965 ;
+    END
+  END VPWR
+  OBS
+      LAYER nwell ;
+        RECT 0.000 1.790 11.520 3.330 ;
+      LAYER li1 ;
+        RECT 0.795 2.580 1.125 2.910 ;
+        RECT 7.515 2.580 7.845 2.910 ;
+        RECT 1.755 2.260 2.085 2.505 ;
+        RECT 1.775 2.175 2.085 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 1.275 0.920 1.605 1.155 ;
+        RECT 1.275 0.825 1.585 0.920 ;
+        RECT 1.835 0.750 2.005 2.175 ;
+        RECT 2.315 1.310 2.485 2.290 ;
+        RECT 3.675 2.260 4.005 2.505 ;
+        RECT 3.675 2.175 3.985 2.260 ;
+        RECT 6.315 2.175 6.645 2.505 ;
+        RECT 7.115 2.090 7.285 2.425 ;
+        RECT 10.395 2.260 10.725 2.505 ;
+        RECT 10.415 2.175 10.725 2.260 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 7.035 1.760 7.365 2.090 ;
+        RECT 8.475 1.760 8.805 2.090 ;
+        RECT 9.915 1.760 10.245 2.090 ;
+        RECT 2.795 1.155 2.965 1.760 ;
+        RECT 4.235 1.210 4.405 1.760 ;
+        RECT 3.275 1.155 4.405 1.210 ;
+        RECT 7.115 1.155 7.285 1.760 ;
+        RECT 8.555 1.155 8.725 1.760 ;
+        RECT 2.715 0.825 3.045 1.155 ;
+        RECT 3.275 1.040 4.485 1.155 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.755 0.420 2.085 0.750 ;
+        RECT 3.275 0.500 3.445 1.040 ;
+        RECT 4.155 0.920 4.485 1.040 ;
+        RECT 4.155 0.825 4.465 0.920 ;
+        RECT 7.035 0.825 7.365 1.155 ;
+        RECT 8.475 0.920 8.805 1.155 ;
+        RECT 9.915 0.920 10.245 1.155 ;
+        RECT 8.495 0.825 8.785 0.920 ;
+        RECT 9.915 0.825 10.225 0.920 ;
+        RECT 3.675 0.655 3.985 0.750 ;
+        RECT 3.675 0.420 4.005 0.655 ;
+        RECT 4.635 0.420 4.965 0.750 ;
+        RECT 6.315 0.420 6.645 0.750 ;
+        RECT 7.995 0.420 8.325 0.750 ;
+        RECT 8.955 0.420 9.285 0.750 ;
+        RECT 10.395 0.420 10.725 0.750 ;
+        RECT 4.715 0.240 4.885 0.420 ;
+        RECT 9.035 0.240 9.205 0.420 ;
+        RECT 0.155 0.085 11.365 0.240 ;
+        RECT 0.000 -0.085 11.520 0.085 ;
+      LAYER mcon ;
+        RECT 0.875 2.660 1.045 2.830 ;
+        RECT 7.595 2.660 7.765 2.830 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 1.835 1.715 2.005 1.885 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.315 2.120 2.485 2.290 ;
+        RECT 3.755 2.255 3.925 2.425 ;
+        RECT 6.395 2.255 6.565 2.425 ;
+        RECT 7.115 2.255 7.285 2.425 ;
+        RECT 10.475 2.255 10.645 2.425 ;
+        RECT 9.995 1.840 10.165 2.010 ;
+        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 8.555 0.905 8.725 1.075 ;
+        RECT 9.995 0.905 10.165 1.075 ;
+        RECT 3.755 0.500 3.925 0.670 ;
+        RECT 6.395 0.500 6.565 0.670 ;
+        RECT 8.075 0.500 8.245 0.670 ;
+        RECT 10.475 0.500 10.645 0.670 ;
+        RECT 9.035 -0.085 9.205 0.085 ;
+      LAYER met1 ;
+        RECT 0.815 2.815 1.105 2.890 ;
+        RECT 7.535 2.815 7.825 2.890 ;
+        RECT 0.815 2.675 7.825 2.815 ;
+        RECT 0.815 2.600 1.105 2.675 ;
+        RECT 7.535 2.600 7.825 2.675 ;
+        RECT 3.695 2.410 3.985 2.485 ;
+        RECT 6.335 2.410 6.625 2.485 ;
+        RECT 0.650 2.350 2.470 2.410 ;
+        RECT 0.650 2.270 2.545 2.350 ;
+        RECT 0.650 0.730 0.790 2.270 ;
+        RECT 2.255 2.060 2.545 2.270 ;
+        RECT 3.695 2.270 6.625 2.410 ;
+        RECT 3.695 2.195 3.985 2.270 ;
+        RECT 6.335 2.195 6.625 2.270 ;
+        RECT 1.775 1.870 2.065 1.945 ;
+        RECT 9.935 1.870 10.225 2.070 ;
+        RECT 1.775 1.780 10.225 1.870 ;
+        RECT 1.775 1.730 10.150 1.780 ;
+        RECT 1.775 1.655 2.065 1.730 ;
+        RECT 2.255 1.465 2.545 1.540 ;
+        RECT 2.255 1.325 9.190 1.465 ;
+        RECT 2.255 1.250 2.545 1.325 ;
+        RECT 0.575 0.440 0.865 0.730 ;
+        RECT 3.695 0.655 3.985 0.730 ;
+        RECT 6.335 0.655 6.625 0.730 ;
+        RECT 3.695 0.515 6.625 0.655 ;
+        RECT 3.695 0.440 3.985 0.515 ;
+        RECT 6.335 0.440 6.625 0.515 ;
+        RECT 8.015 0.655 8.305 0.730 ;
+        RECT 9.050 0.655 9.190 1.325 ;
+        RECT 10.010 1.135 10.150 1.730 ;
+        RECT 9.935 0.845 10.225 1.135 ;
+        RECT 8.015 0.515 9.190 0.655 ;
+        RECT 8.015 0.440 8.305 0.515 ;
+  END
+END VANBERKEL1991
+END LIBRARY
+
diff --git a/cells/mag/VANBERKEL1991.mag b/cells/mag/VANBERKEL1991.mag
new file mode 100644
index 0000000..eef3174
--- /dev/null
+++ b/cells/mag/VANBERKEL1991.mag
@@ -0,0 +1,563 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636809602
+<< checkpaint >>
+rect -1260 -1374 11260 2038
+<< nwell >>
+rect 0 358 2304 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1267 134 1325 146
+rect 977 100 1037 132
+rect 879 48 1037 100
+rect 1267 100 1279 134
+rect 1313 132 1325 134
+rect 1603 134 1661 146
+rect 1603 132 1615 134
+rect 1313 100 1425 132
+rect 1267 48 1425 100
+rect 1455 100 1615 132
+rect 1649 132 1661 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1649 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 566 273 618
+rect 115 532 175 566
+rect 209 532 273 566
+rect 115 450 273 532
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
+rect 1267 485 1425 618
+rect 1267 451 1279 485
+rect 1313 451 1425 485
+rect 1267 450 1425 451
+rect 1455 566 1713 618
+rect 1455 532 1519 566
+rect 1553 532 1713 566
+rect 1455 450 1713 532
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 355 439 413 450
+rect 739 439 797 450
+rect 1267 439 1325 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 943 100 977 134
+rect 1279 100 1313 134
+rect 1615 100 1649 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 175 532 209 566
+rect 367 451 401 485
+rect 751 451 785 485
+rect 943 559 977 593
+rect 1279 451 1313 485
+rect 1519 532 1553 566
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 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 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 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 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 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+<< locali >>
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 31 618 2273 649
+rect 927 593 993 618
+rect 159 566 225 582
+rect 159 532 175 566
+rect 209 532 225 566
+rect 927 559 943 593
+rect 977 559 993 593
+rect 1791 593 1857 618
+rect 927 543 993 559
+rect 1503 566 1569 582
+rect 159 516 225 532
+rect 1503 532 1519 566
+rect 1553 532 1569 566
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 1503 516 1569 532
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 735 485 801 501
+rect 355 435 417 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 367 377 401 435
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 367 150 401 343
+rect 735 451 751 485
+rect 785 452 801 485
+rect 1263 485 1329 501
+rect 2079 485 2145 501
+rect 785 451 797 452
+rect 735 435 797 451
+rect 1263 451 1279 485
+rect 1313 451 1329 485
+rect 1263 435 1329 451
+rect 2079 452 2095 485
+rect 463 296 497 424
+rect 1423 418 1457 451
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+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 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 559 231 593 352
+rect 847 242 881 352
+rect 655 231 881 242
+rect 1423 231 1457 352
+rect 1711 231 1745 352
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 655 215 897 231
+rect 655 208 847 215
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 655 134 689 208
+rect 831 181 847 208
+rect 881 184 897 215
+rect 1407 215 1473 231
+rect 881 181 893 184
+rect 831 165 893 181
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1695 215 1761 231
+rect 1695 184 1711 215
+rect 1407 165 1473 181
+rect 1699 181 1711 184
+rect 1745 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1699 165 1757 181
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 735 134 797 150
+rect 735 100 751 134
+rect 785 131 797 134
+rect 927 134 993 150
+rect 785 100 801 131
+rect 351 84 417 100
+rect 735 84 801 100
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1263 134 1329 150
+rect 1263 100 1279 134
+rect 1313 100 1329 134
+rect 1263 84 1329 100
+rect 1599 134 1665 150
+rect 1599 100 1615 134
+rect 1649 100 1665 134
+rect 1599 84 1665 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 943 48 977 84
+rect 1807 48 1841 84
+rect 31 17 2273 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+<< viali >>
+rect 943 649 977 683
+rect 175 532 209 566
+rect 1519 532 1553 566
+rect 1807 559 1841 593
+rect 271 368 305 402
+rect 367 343 401 377
+rect 271 181 305 215
+rect 463 424 497 458
+rect 751 451 785 485
+rect 1279 451 1313 485
+rect 1423 451 1457 485
+rect 2095 451 2129 485
+rect 1999 368 2033 402
+rect 463 262 497 296
+rect 559 181 593 215
+rect 127 100 161 134
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 655 100 689 134
+rect 751 100 785 134
+rect 1279 100 1313 134
+rect 1615 100 1649 134
+rect 2095 100 2129 134
+rect 1807 -17 1841 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 1795 593 1853 618
+rect 163 566 221 578
+rect 163 532 175 566
+rect 209 563 221 566
+rect 1507 566 1565 578
+rect 1507 563 1519 566
+rect 209 535 1519 563
+rect 209 532 221 535
+rect 163 520 221 532
+rect 1507 532 1519 535
+rect 1553 532 1565 566
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 1507 520 1565 532
+rect 739 485 797 497
+rect 130 470 494 482
+rect 130 458 509 470
+rect 130 454 463 458
+rect 130 146 158 454
+rect 451 424 463 454
+rect 497 424 509 458
+rect 739 451 751 485
+rect 785 482 797 485
+rect 1267 485 1325 497
+rect 1267 482 1279 485
+rect 785 454 1279 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 1267 451 1279 454
+rect 1313 451 1325 485
+rect 1267 439 1325 451
+rect 1411 485 1469 497
+rect 1411 451 1423 485
+rect 1457 482 1469 485
+rect 2083 485 2141 497
+rect 2083 482 2095 485
+rect 1457 454 2095 482
+rect 1457 451 1469 454
+rect 1411 439 1469 451
+rect 2083 451 2095 454
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 259 402 317 414
+rect 451 412 509 424
+rect 259 368 271 402
+rect 305 368 317 402
+rect 1987 402 2045 414
+rect 259 356 317 368
+rect 355 377 413 389
+rect 274 227 302 356
+rect 355 343 367 377
+rect 401 374 413 377
+rect 1987 374 1999 402
+rect 401 368 1999 374
+rect 2033 368 2045 402
+rect 401 356 2045 368
+rect 401 346 2030 356
+rect 401 343 413 346
+rect 355 331 413 343
+rect 451 296 509 308
+rect 451 262 463 296
+rect 497 293 509 296
+rect 497 265 1838 293
+rect 497 262 509 265
+rect 451 250 509 262
+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 212 605 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 593 184 1711 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 1699 181 1711 184
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 274 131 302 169
+rect 643 134 701 146
+rect 643 131 655 134
+rect 274 103 655 131
+rect 115 88 173 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1267 134 1325 146
+rect 1267 131 1279 134
+rect 785 103 1279 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1267 100 1279 103
+rect 1313 100 1325 134
+rect 1267 88 1325 100
+rect 1603 134 1661 146
+rect 1603 100 1615 134
+rect 1649 131 1661 134
+rect 1810 131 1838 265
+rect 2002 227 2030 346
+rect 1987 215 2045 227
+rect 1987 181 1999 215
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2098 146 2126 439
+rect 1649 103 1838 131
+rect 2083 134 2141 146
+rect 1649 100 1661 103
+rect 1603 88 1661 100
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel metal1 0 618 2304 714 0 VPWR
+port 4 se
+rlabel metal1 0 618 2304 714 0 VPWR
+port 4 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 3 se
+rlabel metal1 0 -48 2304 48 0 VGND
+port 3 se
+rlabel metal1 2083 88 2141 146 0 C
+port 2 se
+rlabel metal1 2098 146 2126 439 0 C
+port 2 se
+rlabel metal1 1411 439 1469 454 0 C
+port 2 se
+rlabel metal1 2083 439 2141 454 0 C
+port 2 se
+rlabel metal1 1411 454 2141 482 0 C
+port 2 se
+rlabel metal1 1411 482 1469 497 0 C
+port 2 se
+rlabel metal1 2083 482 2141 497 0 C
+port 2 se
+rlabel metal1 547 169 605 184 0 B
+port 1 se
+rlabel metal1 1699 169 1757 184 0 B
+port 1 se
+rlabel metal1 547 184 1757 212 0 B
+port 1 se
+rlabel metal1 547 212 605 227 0 B
+port 1 se
+rlabel metal1 1699 212 1757 227 0 B
+port 1 se
+rlabel metal1 643 88 701 103 0 A
+port 0 se
+rlabel metal1 274 103 701 131 0 A
+port 0 se
+rlabel metal1 643 131 701 146 0 A
+port 0 se
+rlabel metal1 274 131 302 169 0 A
+port 0 se
+rlabel metal1 259 169 317 227 0 A
+port 0 se
+rlabel metal1 274 227 302 356 0 A
+port 0 se
+rlabel metal1 259 356 317 414 0 A
+port 0 se
+rlabel locali 0 -17 2304 17 4 VGND
+port 3 se ground default abutment
+rlabel locali 31 17 2273 48 4 VGND
+port 3 se ground default abutment
+rlabel locali 0 649 2304 683 4 VPWR
+port 4 se power default abutment
+rlabel locali 31 618 2273 649 4 VGND
+port 3 se power default abutment
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/VANBERKEL1991.mag.beforemagic b/cells/mag/VANBERKEL1991.mag.beforemagic
new file mode 100644
index 0000000..847918e
--- /dev/null
+++ b/cells/mag/VANBERKEL1991.mag.beforemagic
@@ -0,0 +1,555 @@
+magic
+tech sky130A
+magscale 1 2
+timestamp 1636761440
+<< nwell >>
+rect 0 358 2304 666
+<< nmos >>
+rect 273 48 303 132
+rect 561 48 591 132
+rect 849 48 879 132
+rect 1425 48 1455 132
+rect 1713 48 1743 132
+rect 2001 48 2031 132
+<< pmos >>
+rect 273 450 303 618
+rect 561 450 591 618
+rect 849 450 879 618
+rect 1425 450 1455 618
+rect 1713 450 1743 618
+rect 2001 450 2031 618
+<< ndiff >>
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 132 173 134
+rect 355 134 413 146
+rect 355 132 367 134
+rect 161 100 273 132
+rect 115 48 273 100
+rect 303 100 367 132
+rect 401 132 413 134
+rect 739 134 797 146
+rect 739 132 751 134
+rect 401 100 561 132
+rect 303 48 561 100
+rect 591 100 751 132
+rect 785 132 797 134
+rect 931 134 989 146
+rect 931 132 943 134
+rect 785 100 849 132
+rect 591 48 849 100
+rect 879 100 943 132
+rect 977 132 989 134
+rect 1267 134 1325 146
+rect 977 100 1037 132
+rect 879 48 1037 100
+rect 1267 100 1279 134
+rect 1313 132 1325 134
+rect 1603 134 1661 146
+rect 1603 132 1615 134
+rect 1313 100 1425 132
+rect 1267 48 1425 100
+rect 1455 100 1615 132
+rect 1649 132 1661 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1649 100 1713 132
+rect 1455 48 1713 100
+rect 1743 100 1807 132
+rect 1841 132 1853 134
+rect 2083 134 2141 146
+rect 2083 132 2095 134
+rect 1841 100 2001 132
+rect 1743 48 2001 100
+rect 2031 100 2095 132
+rect 2129 132 2141 134
+rect 2129 100 2189 132
+rect 2031 48 2189 100
+<< pdiff >>
+rect 115 566 273 618
+rect 115 532 175 566
+rect 209 532 273 566
+rect 115 450 273 532
+rect 303 485 561 618
+rect 303 451 367 485
+rect 401 451 561 485
+rect 303 450 561 451
+rect 591 485 849 618
+rect 591 451 751 485
+rect 785 451 849 485
+rect 591 450 849 451
+rect 879 593 1037 618
+rect 879 559 943 593
+rect 977 559 1037 593
+rect 879 450 1037 559
+rect 1267 485 1425 618
+rect 1267 451 1279 485
+rect 1313 451 1425 485
+rect 1267 450 1425 451
+rect 1455 566 1713 618
+rect 1455 532 1519 566
+rect 1553 532 1713 566
+rect 1455 450 1713 532
+rect 1743 593 2001 618
+rect 1743 559 1807 593
+rect 1841 559 2001 593
+rect 1743 450 2001 559
+rect 2031 485 2189 618
+rect 2031 451 2095 485
+rect 2129 451 2189 485
+rect 2031 450 2189 451
+rect 355 439 413 450
+rect 739 439 797 450
+rect 1267 439 1325 450
+rect 2083 439 2141 450
+<< ndiffc >>
+rect 127 100 161 134
+rect 367 100 401 134
+rect 751 100 785 134
+rect 943 100 977 134
+rect 1279 100 1313 134
+rect 1615 100 1649 134
+rect 1807 100 1841 134
+rect 2095 100 2129 134
+<< pdiffc >>
+rect 175 532 209 566
+rect 367 451 401 485
+rect 751 451 785 485
+rect 943 559 977 593
+rect 1279 451 1313 485
+rect 1519 532 1553 566
+rect 1807 559 1841 593
+rect 2095 451 2129 485
+<< poly >>
+rect 273 618 303 644
+rect 561 618 591 644
+rect 849 618 879 644
+rect 1425 618 1455 644
+rect 1713 618 1743 644
+rect 2001 618 2031 644
+rect 273 418 303 450
+rect 561 418 591 450
+rect 849 418 879 450
+rect 1425 418 1455 450
+rect 1713 418 1743 450
+rect 2001 418 2031 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 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 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 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 273 132 303 165
+rect 561 132 591 165
+rect 849 132 879 165
+rect 1425 132 1455 165
+rect 1713 132 1743 165
+rect 2001 132 2031 165
+rect 273 22 303 48
+rect 561 22 591 48
+rect 849 22 879 48
+rect 1425 22 1455 48
+rect 1713 22 1743 48
+rect 2001 22 2031 48
+<< polycont >>
+rect 271 368 305 402
+rect 559 368 593 402
+rect 847 368 881 402
+rect 1423 368 1457 402
+rect 1711 368 1745 402
+rect 1999 368 2033 402
+rect 271 181 305 215
+rect 559 181 593 215
+rect 847 181 881 215
+rect 1423 181 1457 215
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+<< locali >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 927 593 993 618
+rect 159 566 225 582
+rect 159 532 175 566
+rect 209 532 225 566
+rect 927 559 943 593
+rect 977 559 993 593
+rect 1791 593 1857 618
+rect 927 543 993 559
+rect 1503 566 1569 582
+rect 159 516 225 532
+rect 1503 532 1519 566
+rect 1553 532 1569 566
+rect 1791 559 1807 593
+rect 1841 559 1857 593
+rect 1791 543 1857 559
+rect 1503 516 1569 532
+rect 351 485 417 501
+rect 351 452 367 485
+rect 355 451 367 452
+rect 401 451 417 485
+rect 735 485 801 501
+rect 355 435 417 451
+rect 255 402 321 418
+rect 255 368 271 402
+rect 305 368 321 402
+rect 255 352 321 368
+rect 367 377 401 435
+rect 255 215 321 231
+rect 255 181 271 215
+rect 305 184 321 215
+rect 305 181 317 184
+rect 255 165 317 181
+rect 367 150 401 343
+rect 735 451 751 485
+rect 785 452 801 485
+rect 1263 485 1329 501
+rect 2079 485 2145 501
+rect 785 451 797 452
+rect 735 435 797 451
+rect 1263 451 1279 485
+rect 1313 451 1329 485
+rect 1263 435 1329 451
+rect 2079 452 2095 485
+rect 463 296 497 424
+rect 1423 418 1457 451
+rect 2083 451 2095 452
+rect 2129 451 2145 485
+rect 2083 435 2145 451
+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 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 559 231 593 352
+rect 847 242 881 352
+rect 655 231 881 242
+rect 1423 231 1457 352
+rect 1711 231 1745 352
+rect 543 215 609 231
+rect 543 181 559 215
+rect 593 181 609 215
+rect 543 165 609 181
+rect 655 215 897 231
+rect 655 208 847 215
+rect 111 134 177 150
+rect 111 100 127 134
+rect 161 100 177 134
+rect 111 84 177 100
+rect 351 134 417 150
+rect 351 100 367 134
+rect 401 100 417 134
+rect 655 134 689 208
+rect 831 181 847 208
+rect 881 184 897 215
+rect 1407 215 1473 231
+rect 881 181 893 184
+rect 831 165 893 181
+rect 1407 181 1423 215
+rect 1457 181 1473 215
+rect 1695 215 1761 231
+rect 1695 184 1711 215
+rect 1407 165 1473 181
+rect 1699 181 1711 184
+rect 1745 184 1761 215
+rect 1983 215 2049 231
+rect 1745 181 1757 184
+rect 1699 165 1757 181
+rect 1983 181 1999 215
+rect 2033 184 2049 215
+rect 2033 181 2045 184
+rect 1983 165 2045 181
+rect 735 134 797 150
+rect 735 100 751 134
+rect 785 131 797 134
+rect 927 134 993 150
+rect 785 100 801 131
+rect 351 84 417 100
+rect 735 84 801 100
+rect 927 100 943 134
+rect 977 100 993 134
+rect 927 84 993 100
+rect 1263 134 1329 150
+rect 1263 100 1279 134
+rect 1313 100 1329 134
+rect 1263 84 1329 100
+rect 1599 134 1665 150
+rect 1599 100 1615 134
+rect 1649 100 1665 134
+rect 1599 84 1665 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
+rect 1841 100 1857 134
+rect 1791 84 1857 100
+rect 2079 134 2145 150
+rect 2079 100 2095 134
+rect 2129 100 2145 134
+rect 2079 84 2145 100
+rect 943 48 977 84
+rect 1807 48 1841 84
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< viali >>
+rect 943 649 977 683
+rect 175 532 209 566
+rect 1519 532 1553 566
+rect 1807 559 1841 593
+rect 271 368 305 402
+rect 367 343 401 377
+rect 271 181 305 215
+rect 463 424 497 458
+rect 751 451 785 485
+rect 1279 451 1313 485
+rect 1423 451 1457 485
+rect 2095 451 2129 485
+rect 1999 368 2033 402
+rect 463 262 497 296
+rect 559 181 593 215
+rect 127 100 161 134
+rect 1711 181 1745 215
+rect 1999 181 2033 215
+rect 655 100 689 134
+rect 751 100 785 134
+rect 1279 100 1313 134
+rect 1615 100 1649 134
+rect 2095 100 2129 134
+rect 1807 -17 1841 17
+<< metal1 >>
+rect 0 683 2304 714
+rect 0 649 943 683
+rect 977 649 2304 683
+rect 0 618 2304 649
+rect 1795 593 1853 618
+rect 163 566 221 578
+rect 163 532 175 566
+rect 209 563 221 566
+rect 1507 566 1565 578
+rect 1507 563 1519 566
+rect 209 535 1519 563
+rect 209 532 221 535
+rect 163 520 221 532
+rect 1507 532 1519 535
+rect 1553 532 1565 566
+rect 1795 559 1807 593
+rect 1841 559 1853 593
+rect 1795 547 1853 559
+rect 1507 520 1565 532
+rect 739 485 797 497
+rect 130 470 494 482
+rect 130 458 509 470
+rect 130 454 463 458
+rect 130 146 158 454
+rect 451 424 463 454
+rect 497 424 509 458
+rect 739 451 751 485
+rect 785 482 797 485
+rect 1267 485 1325 497
+rect 1267 482 1279 485
+rect 785 454 1279 482
+rect 785 451 797 454
+rect 739 439 797 451
+rect 1267 451 1279 454
+rect 1313 451 1325 485
+rect 1267 439 1325 451
+rect 1411 485 1469 497
+rect 1411 451 1423 485
+rect 1457 482 1469 485
+rect 2083 485 2141 497
+rect 2083 482 2095 485
+rect 1457 454 2095 482
+rect 1457 451 1469 454
+rect 1411 439 1469 451
+rect 2083 451 2095 454
+rect 2129 451 2141 485
+rect 2083 439 2141 451
+rect 259 402 317 414
+rect 451 412 509 424
+rect 259 368 271 402
+rect 305 368 317 402
+rect 1987 402 2045 414
+rect 259 356 317 368
+rect 355 377 413 389
+rect 274 227 302 356
+rect 355 343 367 377
+rect 401 374 413 377
+rect 1987 374 1999 402
+rect 401 368 1999 374
+rect 2033 368 2045 402
+rect 401 356 2045 368
+rect 401 346 2030 356
+rect 401 343 413 346
+rect 355 331 413 343
+rect 451 296 509 308
+rect 451 262 463 296
+rect 497 293 509 296
+rect 497 265 1838 293
+rect 497 262 509 265
+rect 451 250 509 262
+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 212 605 215
+rect 1699 215 1757 227
+rect 1699 212 1711 215
+rect 593 184 1711 212
+rect 593 181 605 184
+rect 547 169 605 181
+rect 1699 181 1711 184
+rect 1745 181 1757 215
+rect 1699 169 1757 181
+rect 115 134 173 146
+rect 115 100 127 134
+rect 161 100 173 134
+rect 274 131 302 169
+rect 643 134 701 146
+rect 643 131 655 134
+rect 274 103 655 131
+rect 115 88 173 100
+rect 643 100 655 103
+rect 689 100 701 134
+rect 643 88 701 100
+rect 739 134 797 146
+rect 739 100 751 134
+rect 785 131 797 134
+rect 1267 134 1325 146
+rect 1267 131 1279 134
+rect 785 103 1279 131
+rect 785 100 797 103
+rect 739 88 797 100
+rect 1267 100 1279 103
+rect 1313 100 1325 134
+rect 1267 88 1325 100
+rect 1603 134 1661 146
+rect 1603 100 1615 134
+rect 1649 131 1661 134
+rect 1810 131 1838 265
+rect 2002 227 2030 346
+rect 1987 215 2045 227
+rect 1987 181 1999 215
+rect 2033 181 2045 215
+rect 1987 169 2045 181
+rect 2098 146 2126 439
+rect 1649 103 1838 131
+rect 2083 134 2141 146
+rect 1649 100 1661 103
+rect 1603 88 1661 100
+rect 2083 100 2095 134
+rect 2129 100 2141 134
+rect 2083 88 2141 100
+rect 0 17 2304 48
+rect 0 -17 1807 17
+rect 1841 -17 2304 17
+rect 0 -48 2304 -17
+<< labels >>
+rlabel locali 0 618 2304 714 0 VDD
+port 1 se
+rlabel metal1 0 618 2304 714 0 VDD
+port 2 se
+rlabel locali 0 -48 2304 48 0 GND
+port 3 se
+rlabel metal1 0 -48 2304 48 0 GND
+port 4 se
+rlabel metal1 2083 88 2141 146 0 C
+port 5 se
+rlabel metal1 2098 146 2126 439 0 C
+port 6 se
+rlabel metal1 1411 439 1469 454 0 C
+port 7 se
+rlabel metal1 2083 439 2141 454 0 C
+port 8 se
+rlabel metal1 1411 454 2141 482 0 C
+port 9 se
+rlabel metal1 1411 482 1469 497 0 C
+port 10 se
+rlabel metal1 2083 482 2141 497 0 C
+port 11 se
+rlabel metal1 547 169 605 184 0 B
+port 12 se
+rlabel metal1 1699 169 1757 184 0 B
+port 13 se
+rlabel metal1 547 184 1757 212 0 B
+port 14 se
+rlabel metal1 547 212 605 227 0 B
+port 15 se
+rlabel metal1 1699 212 1757 227 0 B
+port 16 se
+rlabel metal1 643 88 701 103 0 A
+port 17 se
+rlabel metal1 274 103 701 131 0 A
+port 18 se
+rlabel metal1 643 131 701 146 0 A
+port 19 se
+rlabel metal1 274 131 302 169 0 A
+port 20 se
+rlabel metal1 259 169 317 227 0 A
+port 21 se
+rlabel metal1 274 227 302 356 0 A
+port 22 se
+rlabel metal1 259 356 317 414 0 A
+port 23 se
+<< properties >>
+string FIXED_BBOX 0 0 2304 666
+<< end >>
diff --git a/cells/mag/XNOR2X1.lef b/cells/mag/XNOR2X1.lef
index 8cff1cf..452d520 100644
--- a/cells/mag/XNOR2X1.lef
+++ b/cells/mag/XNOR2X1.lef
@@ -14,124 +14,47 @@
     PORT
       LAYER met1 ;
         RECT 4.175 1.995 4.465 2.070 ;
-        RECT 4.175 1.855 5.350 1.995 ;
+        RECT 4.175 1.855 5.830 1.995 ;
         RECT 4.175 1.780 4.465 1.855 ;
-        RECT 5.210 1.060 5.350 1.855 ;
+        RECT 5.690 1.135 5.830 1.855 ;
         RECT 8.495 1.780 8.785 2.070 ;
         RECT 8.570 1.135 8.710 1.780 ;
         RECT 5.615 1.060 5.905 1.135 ;
         RECT 8.495 1.060 8.785 1.135 ;
-        RECT 5.210 0.920 8.785 1.060 ;
+        RECT 5.615 0.920 8.785 1.060 ;
         RECT 5.615 0.845 5.905 0.920 ;
         RECT 8.495 0.845 8.785 0.920 ;
     END
-    PORT
-      LAYER li1 ;
-        RECT 8.475 0.825 8.805 1.155 ;
-      LAYER mcon ;
-        RECT 8.555 0.905 8.725 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.595 0.825 5.925 1.155 ;
-      LAYER mcon ;
-        RECT 5.675 0.905 5.845 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 1.760 4.485 2.090 ;
-      LAYER mcon ;
-        RECT 4.235 1.840 4.405 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 8.475 1.760 8.805 2.090 ;
-      LAYER mcon ;
-        RECT 8.555 1.840 8.725 2.010 ;
-    END
   END A
   PIN B
     ANTENNAGATEAREA 0.378000 ;
     PORT
       LAYER met1 ;
-        RECT 1.295 1.780 1.585 2.070 ;
-        RECT 2.735 1.780 3.025 2.070 ;
+        RECT 1.295 1.995 1.585 2.070 ;
+        RECT 2.735 1.995 3.025 2.070 ;
+        RECT 1.295 1.855 3.025 1.995 ;
+        RECT 1.295 1.780 1.585 1.855 ;
+        RECT 2.735 1.780 3.025 1.855 ;
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 2.810 1.135 2.950 1.780 ;
-        RECT 1.295 1.060 1.585 1.135 ;
-        RECT 2.735 1.060 3.025 1.135 ;
-        RECT 1.295 0.920 3.025 1.060 ;
-        RECT 1.295 0.845 1.585 0.920 ;
-        RECT 2.735 0.845 3.025 0.920 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 0.825 3.045 1.155 ;
-      LAYER mcon ;
-        RECT 2.795 0.905 2.965 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 0.825 1.605 1.155 ;
-      LAYER mcon ;
-        RECT 1.355 0.905 1.525 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-      LAYER mcon ;
-        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 1.295 0.845 1.585 1.135 ;
+        RECT 2.735 0.845 3.025 1.135 ;
     END
   END B
   PIN VGND
-    ANTENNADIFFAREA 1.083600 ;
+    ANTENNADIFFAREA 1.124200 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
-        RECT 7.535 0.240 7.825 0.570 ;
+        RECT 1.775 0.440 2.065 0.730 ;
+        RECT 7.535 0.440 7.825 0.730 ;
+        RECT 1.850 0.240 1.990 0.440 ;
+        RECT 7.610 0.240 7.750 0.440 ;
         RECT 0.000 -0.240 10.080 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 7.515 0.240 7.845 0.590 ;
-        RECT 0.155 0.085 9.925 0.240 ;
-        RECT 0.000 -0.085 10.080 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 7.595 0.340 7.765 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-        RECT 7.355 -0.085 7.525 0.085 ;
-        RECT 7.835 -0.085 8.005 0.085 ;
-        RECT 8.315 -0.085 8.485 0.085 ;
-        RECT 8.795 -0.085 8.965 0.085 ;
-        RECT 9.275 -0.085 9.445 0.085 ;
-        RECT 9.755 -0.085 9.925 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 10.080 3.570 ;
-        RECT 7.535 2.760 7.825 3.090 ;
+        RECT 7.535 2.735 7.825 3.090 ;
     END
   END VGND
   PIN VPWR
@@ -140,31 +63,11 @@
       LAYER li1 ;
         RECT 0.000 3.245 10.080 3.415 ;
         RECT 0.155 3.090 9.925 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 7.515 2.740 7.845 3.090 ;
+        RECT 1.755 2.715 2.085 3.090 ;
+        RECT 7.515 2.715 7.845 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 7.355 3.245 7.525 3.415 ;
-        RECT 7.835 3.245 8.005 3.415 ;
-        RECT 8.315 3.245 8.485 3.415 ;
-        RECT 8.795 3.245 8.965 3.415 ;
-        RECT 9.275 3.245 9.445 3.415 ;
-        RECT 9.755 3.245 9.925 3.415 ;
-        RECT 7.595 2.820 7.765 2.990 ;
+        RECT 7.595 3.245 7.765 3.415 ;
+        RECT 7.595 2.795 7.765 2.965 ;
     END
   END VPWR
   PIN Y
@@ -181,42 +84,68 @@
         RECT 0.555 2.175 0.885 2.505 ;
         RECT 4.635 2.260 4.965 2.505 ;
         RECT 4.655 2.175 4.965 2.260 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 1.275 0.825 1.605 1.155 ;
+        RECT 2.715 0.825 3.045 1.155 ;
         RECT 4.155 0.920 4.485 1.155 ;
         RECT 4.155 0.825 4.465 0.920 ;
         RECT 4.715 0.750 4.885 2.175 ;
+        RECT 5.675 2.090 5.845 2.425 ;
         RECT 7.115 2.090 7.285 2.830 ;
-        RECT 8.955 2.260 9.285 2.505 ;
-        RECT 8.975 2.175 9.285 2.260 ;
+        RECT 8.955 2.175 9.285 2.505 ;
         RECT 5.595 1.760 5.925 2.090 ;
         RECT 7.035 1.760 7.365 2.090 ;
+        RECT 8.475 2.005 8.785 2.090 ;
+        RECT 8.475 1.760 8.805 2.005 ;
         RECT 7.115 1.155 7.285 1.760 ;
-        RECT 7.035 0.825 7.365 1.155 ;
+        RECT 5.595 0.825 5.925 1.155 ;
+        RECT 7.035 0.920 7.365 1.155 ;
+        RECT 7.035 0.825 7.345 0.920 ;
+        RECT 8.475 0.825 8.805 1.155 ;
         RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.775 0.655 2.085 0.750 ;
+        RECT 1.755 0.420 2.085 0.655 ;
         RECT 4.635 0.420 4.965 0.750 ;
+        RECT 7.515 0.420 7.845 0.750 ;
         RECT 8.975 0.655 9.285 0.750 ;
         RECT 8.955 0.420 9.285 0.655 ;
+        RECT 0.155 0.085 9.925 0.240 ;
+        RECT 0.000 -0.085 10.080 0.085 ;
       LAYER mcon ;
         RECT 7.115 2.660 7.285 2.830 ;
         RECT 0.635 2.255 0.805 2.425 ;
+        RECT 5.675 2.255 5.845 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
+        RECT 4.235 1.840 4.405 2.010 ;
+        RECT 1.355 0.905 1.525 1.075 ;
+        RECT 2.795 0.905 2.965 1.075 ;
         RECT 4.235 0.905 4.405 1.075 ;
         RECT 9.035 2.255 9.205 2.425 ;
-        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 8.555 1.840 8.725 2.010 ;
+        RECT 5.675 0.905 5.845 1.075 ;
+        RECT 8.555 0.905 8.725 1.075 ;
         RECT 0.635 0.500 0.805 0.670 ;
+        RECT 1.835 0.500 2.005 0.670 ;
         RECT 4.715 0.500 4.885 0.670 ;
+        RECT 7.595 0.500 7.765 0.670 ;
         RECT 9.035 0.500 9.205 0.670 ;
+        RECT 7.595 -0.085 7.765 0.085 ;
       LAYER met1 ;
         RECT 7.055 2.815 7.345 2.890 ;
         RECT 0.650 2.675 7.345 2.815 ;
         RECT 0.650 2.485 0.790 2.675 ;
         RECT 7.055 2.600 7.345 2.675 ;
         RECT 0.575 2.195 0.865 2.485 ;
+        RECT 5.615 2.410 5.905 2.485 ;
         RECT 8.975 2.410 9.265 2.485 ;
         RECT 3.770 2.270 9.265 2.410 ;
         RECT 0.650 0.730 0.790 2.195 ;
         RECT 3.770 1.060 3.910 2.270 ;
-        RECT 5.690 2.070 5.830 2.270 ;
+        RECT 5.615 2.195 5.905 2.270 ;
         RECT 8.975 2.195 9.265 2.270 ;
-        RECT 5.615 1.780 5.905 2.070 ;
         RECT 4.175 1.060 4.465 1.135 ;
         RECT 3.770 0.920 4.465 1.060 ;
         RECT 4.175 0.845 4.465 0.920 ;
diff --git a/cells/mag/XNOR2X1.mag b/cells/mag/XNOR2X1.mag
index eca7395..61cfe0e 100644
--- a/cells/mag/XNOR2X1.mag
+++ b/cells/mag/XNOR2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953872
+timestamp 1636809603
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -24,26 +24,30 @@
 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 355 134 413 146
+rect 355 132 367 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 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 48 849 132
 rect 879 100 943 132
 rect 977 132 989 134
-rect 1795 134 1853 146
-rect 1795 132 1807 134
+rect 1507 134 1565 146
+rect 1507 132 1519 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 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
 rect 1743 100 1807 132
 rect 1841 132 1853 134
 rect 1841 100 1901 132
@@ -53,20 +57,20 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 1455 593 1713 618
+rect 1455 559 1519 593
+rect 1553 559 1713 593
+rect 1455 450 1713 559
 rect 1743 485 1901 618
 rect 1743 451 1807 485
 rect 1841 451 1901 485
@@ -76,15 +80,15 @@
 rect 1795 439 1853 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 943 100 977 134
-rect 1519 68 1553 102
+rect 1519 100 1553 134
 rect 1807 100 1841 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 943 451 977 485
-rect 1519 564 1553 598
+rect 1519 559 1553 593
 rect 1807 451 1841 485
 << poly >>
 rect 273 618 303 644
@@ -173,37 +177,17 @@
 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 0 649 1519 683
+rect 1553 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 1503 593 1569 618
+rect 351 543 417 559
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -239,12 +223,12 @@
 rect 881 181 893 184
 rect 831 165 893 181
 rect 943 150 977 435
+rect 1135 418 1169 451
 rect 1423 418 1457 532
 rect 1791 485 1857 501
-rect 1791 452 1807 485
-rect 1795 451 1807 452
+rect 1791 451 1807 485
 rect 1841 451 1857 485
-rect 1795 435 1857 451
+rect 1791 435 1857 451
 rect 1119 402 1185 418
 rect 1119 368 1135 402
 rect 1169 368 1185 402
@@ -253,9 +237,10 @@
 rect 1407 368 1423 402
 rect 1457 368 1473 402
 rect 1407 352 1473 368
-rect 1695 402 1761 418
+rect 1695 402 1757 418
 rect 1695 368 1711 402
-rect 1745 368 1761 402
+rect 1745 401 1757 402
+rect 1745 368 1761 401
 rect 1695 352 1761 368
 rect 1423 231 1457 352
 rect 1119 215 1185 231
@@ -264,81 +249,44 @@
 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 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 111 134 177 150
 rect 111 100 127 134
 rect 161 100 177 134
-rect 927 134 993 150
+rect 355 134 417 150
+rect 355 131 367 134
 rect 111 84 177 100
-rect 351 102 417 118
-rect 351 68 367 102
-rect 401 68 417 102
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
+rect 927 134 993 150
 rect 927 100 943 134
 rect 977 100 993 134
+rect 927 84 993 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 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 1503 84 1569 100
 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
+rect 0 -17 1519 17
+rect 1553 -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 1519 649 1553 683
 rect 1423 532 1457 566
-rect 1519 564 1553 598
+rect 1519 559 1553 593
 rect 127 451 161 485
+rect 1135 451 1169 485
 rect 271 368 305 402
 rect 559 368 593 402
 rect 847 368 881 402
@@ -346,132 +294,91 @@
 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 367 100 401 134
 rect 943 100 977 134
-rect 1519 68 1553 102
+rect 1519 100 1553 134
 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
+rect 1519 -17 1553 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 649 1519 683
+rect 1553 649 2016 683
 rect 0 618 2016 649
-rect 1507 598 1565 618
+rect 1507 593 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 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
 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 1123 485 1181 497
+rect 1123 482 1135 485
 rect 115 439 173 451
-rect 754 454 1807 482
+rect 754 454 1135 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 305 399 317 402
 rect 547 402 605 414
-rect 547 368 559 402
+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 212 317 215
-rect 547 215 605 227
-rect 547 212 559 215
-rect 305 184 559 212
-rect 305 181 317 184
+rect 305 181 317 215
 rect 259 169 317 181
-rect 547 181 559 184
+rect 547 215 605 227
+rect 547 181 559 215
 rect 593 181 605 215
 rect 754 212 782 454
-rect 1138 414 1166 454
+rect 1123 451 1135 454
+rect 1169 482 1181 485
+rect 1795 485 1853 497
+rect 1795 482 1807 485
+rect 1169 454 1807 482
+rect 1169 451 1181 454
+rect 1123 439 1181 451
 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 1699 402 1757 414
+rect 881 371 1166 399
 rect 881 368 893 371
 rect 835 356 893 368
+rect 1138 227 1166 371
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1714 227 1742 356
 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 1123 215 1181 227
+rect 1123 181 1135 215
 rect 1169 212 1181 215
 rect 1699 215 1757 227
 rect 1699 212 1711 215
@@ -485,46 +392,28 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 931 134 989 146
 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 1507 134 1565 146
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 1795 134 1853 146
 rect 1795 100 1807 134
 rect 1841 100 1853 134
 rect 1795 88 1853 100
-rect 1507 48 1565 68
+rect 370 48 398 88
+rect 1522 48 1550 88
 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 -17 1519 17
+rect 1553 -17 2016 17
 rect 0 -48 2016 -17
 << labels >>
 rlabel metal1 0 618 2016 714 0 VPWR
@@ -537,29 +426,29 @@
 port 2 se
 rlabel metal1 931 88 989 146 0 Y
 port 4 se
-rlabel metal1 259 169 317 184 0 B
+rlabel metal1 259 169 317 227 0 B
 port 1 se
-rlabel metal1 547 169 605 184 0 B
-port 1 se
-rlabel metal1 259 184 605 212 0 B
-port 1 se
-rlabel metal1 259 212 317 227 0 B
-port 1 se
-rlabel metal1 547 212 605 227 0 B
+rlabel metal1 547 169 605 227 0 B
 port 1 se
 rlabel metal1 274 227 302 356 0 B
 port 1 se
 rlabel metal1 562 227 590 356 0 B
 port 1 se
-rlabel metal1 259 356 317 414 0 B
+rlabel metal1 259 356 317 371 0 B
 port 1 se
-rlabel metal1 547 356 605 414 0 B
+rlabel metal1 547 356 605 371 0 B
+port 1 se
+rlabel metal1 259 371 605 399 0 B
+port 1 se
+rlabel metal1 259 399 317 414 0 B
+port 1 se
+rlabel metal1 547 399 605 414 0 B
 port 1 se
 rlabel metal1 1123 169 1181 184 0 A
 port 0 se
 rlabel metal1 1699 169 1757 184 0 A
 port 0 se
-rlabel metal1 1042 184 1757 212 0 A
+rlabel metal1 1123 184 1757 212 0 A
 port 0 se
 rlabel metal1 1123 212 1181 227 0 A
 port 0 se
@@ -569,9 +458,9 @@
 port 0 se
 rlabel metal1 835 356 893 371 0 A
 port 0 se
-rlabel metal1 1042 212 1070 371 0 A
+rlabel metal1 1138 227 1166 371 0 A
 port 0 se
-rlabel metal1 835 371 1070 399 0 A
+rlabel metal1 835 371 1166 399 0 A
 port 0 se
 rlabel metal1 835 399 893 414 0 A
 port 0 se
diff --git a/cells/mag/XNOR2X1.mag.beforemagic b/cells/mag/XNOR2X1.mag.beforemagic
index f5441af..5b4a6bf 100644
--- a/cells/mag/XNOR2X1.mag.beforemagic
+++ b/cells/mag/XNOR2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624753981
+timestamp 1636760836
 << nwell >>
 rect 0 358 2016 666
 << nmos >>
@@ -22,26 +22,30 @@
 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 355 134 413 146
+rect 355 132 367 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 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 48 849 132
 rect 879 100 943 132
 rect 977 132 989 134
-rect 1795 134 1853 146
-rect 1795 132 1807 134
+rect 1507 134 1565 146
+rect 1507 132 1519 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 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
 rect 1743 100 1807 132
 rect 1841 132 1853 134
 rect 1841 100 1901 132
@@ -51,20 +55,20 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 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 1455 593 1713 618
+rect 1455 559 1519 593
+rect 1553 559 1713 593
+rect 1455 450 1713 559
 rect 1743 485 1901 618
 rect 1743 451 1807 485
 rect 1841 451 1901 485
@@ -74,15 +78,15 @@
 rect 1795 439 1853 450
 << ndiffc >>
 rect 127 100 161 134
-rect 367 68 401 102
+rect 367 100 401 134
 rect 943 100 977 134
-rect 1519 68 1553 102
+rect 1519 100 1553 134
 rect 1807 100 1841 134
 << pdiffc >>
 rect 127 451 161 485
-rect 367 564 401 598
+rect 367 559 401 593
 rect 943 451 977 485
-rect 1519 564 1553 598
+rect 1519 559 1553 593
 rect 1807 451 1841 485
 << poly >>
 rect 273 618 303 644
@@ -172,37 +176,17 @@
 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 649 1519 683
+rect 1553 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 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 1503 593 1569 618
+rect 351 543 417 559
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
@@ -238,12 +222,12 @@
 rect 881 181 893 184
 rect 831 165 893 181
 rect 943 150 977 435
+rect 1135 418 1169 451
 rect 1423 418 1457 532
 rect 1791 485 1857 501
-rect 1791 452 1807 485
-rect 1795 451 1807 452
+rect 1791 451 1807 485
 rect 1841 451 1857 485
-rect 1795 435 1857 451
+rect 1791 435 1857 451
 rect 1119 402 1185 418
 rect 1119 368 1135 402
 rect 1169 368 1185 402
@@ -252,9 +236,10 @@
 rect 1407 368 1423 402
 rect 1457 368 1473 402
 rect 1407 352 1473 368
-rect 1695 402 1761 418
+rect 1695 402 1757 418
 rect 1695 368 1711 402
-rect 1745 368 1761 402
+rect 1745 401 1757 402
+rect 1745 368 1761 401
 rect 1695 352 1761 368
 rect 1423 231 1457 352
 rect 1119 215 1185 231
@@ -263,82 +248,45 @@
 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 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 111 134 177 150
 rect 111 100 127 134
 rect 161 100 177 134
-rect 927 134 993 150
+rect 355 134 417 150
+rect 355 131 367 134
 rect 111 84 177 100
-rect 351 102 417 118
-rect 351 68 367 102
-rect 401 68 417 102
+rect 351 100 367 131
+rect 401 100 417 134
+rect 351 84 417 100
+rect 927 134 993 150
 rect 927 100 943 134
 rect 977 100 993 134
+rect 927 84 993 100
+rect 1503 134 1569 150
+rect 1503 100 1519 134
+rect 1553 100 1569 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 1503 84 1569 100
 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 -17 1519 17
+rect 1553 -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 1519 649 1553 683
 rect 1423 532 1457 566
-rect 1519 564 1553 598
+rect 1519 559 1553 593
 rect 127 451 161 485
+rect 1135 451 1169 485
 rect 271 368 305 402
 rect 559 368 593 402
 rect 847 368 881 402
@@ -346,132 +294,91 @@
 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 367 100 401 134
 rect 943 100 977 134
-rect 1519 68 1553 102
+rect 1519 100 1553 134
 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
+rect 1519 -17 1553 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 649 1519 683
+rect 1553 649 2016 683
 rect 0 618 2016 649
-rect 1507 598 1565 618
+rect 1507 593 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 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
 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 1123 485 1181 497
+rect 1123 482 1135 485
 rect 115 439 173 451
-rect 754 454 1807 482
+rect 754 454 1135 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 305 399 317 402
 rect 547 402 605 414
-rect 547 368 559 402
+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 212 317 215
-rect 547 215 605 227
-rect 547 212 559 215
-rect 305 184 559 212
-rect 305 181 317 184
+rect 305 181 317 215
 rect 259 169 317 181
-rect 547 181 559 184
+rect 547 215 605 227
+rect 547 181 559 215
 rect 593 181 605 215
 rect 754 212 782 454
-rect 1138 414 1166 454
+rect 1123 451 1135 454
+rect 1169 482 1181 485
+rect 1795 485 1853 497
+rect 1795 482 1807 485
+rect 1169 454 1807 482
+rect 1169 451 1181 454
+rect 1123 439 1181 451
 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 1699 402 1757 414
+rect 881 371 1166 399
 rect 881 368 893 371
 rect 835 356 893 368
+rect 1138 227 1166 371
+rect 1699 368 1711 402
+rect 1745 368 1757 402
+rect 1699 356 1757 368
+rect 1714 227 1742 356
 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 1123 215 1181 227
+rect 1123 181 1135 215
 rect 1169 212 1181 215
 rect 1699 215 1757 227
 rect 1699 212 1711 215
@@ -485,46 +392,28 @@
 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 355 134 413 146
+rect 355 100 367 134
+rect 401 100 413 134
+rect 355 88 413 100
+rect 931 134 989 146
 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 1507 134 1565 146
+rect 1507 100 1519 134
+rect 1553 100 1565 134
+rect 1507 88 1565 100
+rect 1795 134 1853 146
 rect 1795 100 1807 134
 rect 1841 100 1853 134
 rect 1795 88 1853 100
-rect 1507 48 1565 68
+rect 370 48 398 88
+rect 1522 48 1550 88
 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 -17 1519 17
+rect 1553 -17 2016 17
 rect 0 -48 2016 -17
 << labels >>
 rlabel locali 0 618 2016 714 0 VDD
@@ -537,29 +426,29 @@
 port 4 se
 rlabel metal1 931 88 989 146 0 Y
 port 5 se
-rlabel metal1 259 169 317 184 0 B
+rlabel metal1 259 169 317 227 0 B
 port 6 se
-rlabel metal1 547 169 605 184 0 B
+rlabel metal1 547 169 605 227 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
+port 8 se
 rlabel metal1 562 227 590 356 0 B
+port 9 se
+rlabel metal1 259 356 317 371 0 B
+port 10 se
+rlabel metal1 547 356 605 371 0 B
+port 11 se
+rlabel metal1 259 371 605 399 0 B
 port 12 se
-rlabel metal1 259 356 317 414 0 B
+rlabel metal1 259 399 317 414 0 B
 port 13 se
-rlabel metal1 547 356 605 414 0 B
+rlabel metal1 547 399 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
+rlabel metal1 1123 184 1757 212 0 A
 port 17 se
 rlabel metal1 1123 212 1181 227 0 A
 port 18 se
@@ -569,9 +458,9 @@
 port 20 se
 rlabel metal1 835 356 893 371 0 A
 port 21 se
-rlabel metal1 1042 212 1070 371 0 A
+rlabel metal1 1138 227 1166 371 0 A
 port 22 se
-rlabel metal1 835 371 1070 399 0 A
+rlabel metal1 835 371 1166 399 0 A
 port 23 se
 rlabel metal1 835 399 893 414 0 A
 port 24 se
diff --git a/cells/mag/XOR2X1.lef b/cells/mag/XOR2X1.lef
index 3293112..027ee0b 100644
--- a/cells/mag/XOR2X1.lef
+++ b/cells/mag/XOR2X1.lef
@@ -13,201 +13,145 @@
     ANTENNAGATEAREA 0.378000 ;
     PORT
       LAYER met1 ;
-        RECT 1.295 1.995 1.585 2.070 ;
+        RECT 1.295 1.780 1.585 2.070 ;
         RECT 5.615 1.995 5.905 2.070 ;
-        RECT 1.295 1.855 5.905 1.995 ;
-        RECT 1.295 1.780 1.585 1.855 ;
+        RECT 4.250 1.855 5.905 1.995 ;
         RECT 1.370 1.135 1.510 1.780 ;
         RECT 4.250 1.135 4.390 1.855 ;
         RECT 5.615 1.780 5.905 1.855 ;
-        RECT 1.295 0.845 1.585 1.135 ;
-        RECT 4.175 0.845 4.465 1.135 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 4.155 0.920 4.485 1.155 ;
-        RECT 4.155 0.825 4.465 0.920 ;
-      LAYER mcon ;
-        RECT 4.235 0.905 4.405 1.075 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 1.275 1.760 1.605 2.090 ;
-      LAYER mcon ;
-        RECT 1.355 1.840 1.525 2.010 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 5.595 1.760 5.925 2.090 ;
-      LAYER mcon ;
-        RECT 5.675 1.840 5.845 2.010 ;
+        RECT 1.295 1.060 1.585 1.135 ;
+        RECT 4.175 1.060 4.465 1.135 ;
+        RECT 1.295 0.920 4.465 1.060 ;
+        RECT 1.295 0.845 1.585 0.920 ;
+        RECT 4.175 0.845 4.465 0.920 ;
     END
   END A
   PIN B
     ANTENNAGATEAREA 0.378000 ;
     PORT
       LAYER met1 ;
-        RECT 2.735 2.815 3.025 2.890 ;
-        RECT 2.735 2.675 8.710 2.815 ;
-        RECT 2.735 2.600 3.025 2.675 ;
-        RECT 8.570 2.070 8.710 2.675 ;
+        RECT 2.810 2.270 8.710 2.410 ;
+        RECT 2.810 2.070 2.950 2.270 ;
+        RECT 8.570 2.070 8.710 2.270 ;
+        RECT 2.735 1.780 3.025 2.070 ;
         RECT 8.495 1.780 8.785 2.070 ;
-        RECT 2.735 1.385 3.025 1.675 ;
-        RECT 2.810 1.135 2.950 1.385 ;
-        RECT 2.735 0.845 3.025 1.135 ;
-    END
-    PORT
-      LAYER li1 ;
-        RECT 2.795 2.090 2.965 2.830 ;
-        RECT 2.715 1.760 3.045 2.090 ;
-        RECT 2.795 1.445 2.965 1.760 ;
-      LAYER mcon ;
-        RECT 2.795 2.660 2.965 2.830 ;
+        RECT 8.570 1.135 8.710 1.780 ;
+        RECT 8.495 0.845 8.785 1.135 ;
     END
   END B
   PIN VGND
-    ANTENNADIFFAREA 1.083600 ;
+    ANTENNADIFFAREA 1.124200 ;
     PORT
       LAYER met1 ;
-        RECT 1.775 0.240 2.065 0.570 ;
-        RECT 7.535 0.240 7.825 0.570 ;
         RECT 0.000 -0.240 10.080 0.240 ;
     END
     PORT
-      LAYER li1 ;
-        RECT 1.755 0.240 2.085 0.590 ;
-        RECT 7.515 0.240 7.845 0.590 ;
-        RECT 0.155 0.085 9.925 0.240 ;
-        RECT 0.000 -0.085 10.080 0.085 ;
-      LAYER mcon ;
-        RECT 1.835 0.340 2.005 0.510 ;
-        RECT 7.595 0.340 7.765 0.510 ;
-        RECT 0.155 -0.085 0.325 0.085 ;
-        RECT 0.635 -0.085 0.805 0.085 ;
-        RECT 1.115 -0.085 1.285 0.085 ;
-        RECT 1.595 -0.085 1.765 0.085 ;
-        RECT 2.075 -0.085 2.245 0.085 ;
-        RECT 2.555 -0.085 2.725 0.085 ;
-        RECT 3.035 -0.085 3.205 0.085 ;
-        RECT 3.515 -0.085 3.685 0.085 ;
-        RECT 3.995 -0.085 4.165 0.085 ;
-        RECT 4.475 -0.085 4.645 0.085 ;
-        RECT 4.955 -0.085 5.125 0.085 ;
-        RECT 5.435 -0.085 5.605 0.085 ;
-        RECT 5.915 -0.085 6.085 0.085 ;
-        RECT 6.395 -0.085 6.565 0.085 ;
-        RECT 6.875 -0.085 7.045 0.085 ;
-        RECT 7.355 -0.085 7.525 0.085 ;
-        RECT 7.835 -0.085 8.005 0.085 ;
-        RECT 8.315 -0.085 8.485 0.085 ;
-        RECT 8.795 -0.085 8.965 0.085 ;
-        RECT 9.275 -0.085 9.445 0.085 ;
-        RECT 9.755 -0.085 9.925 0.085 ;
-    END
-    PORT
       LAYER met1 ;
         RECT 0.000 3.090 10.080 3.570 ;
-        RECT 1.775 2.760 2.065 3.090 ;
+        RECT 1.775 2.735 2.065 3.090 ;
+        RECT 7.535 2.735 7.825 3.090 ;
     END
   END VGND
   PIN VPWR
-    ANTENNADIFFAREA 2.167200 ;
+    ANTENNADIFFAREA 1.083600 ;
     PORT
       LAYER li1 ;
         RECT 0.000 3.245 10.080 3.415 ;
-        RECT 0.155 3.090 9.925 3.245 ;
-        RECT 1.755 2.740 2.085 3.090 ;
-        RECT 7.515 2.740 7.845 3.090 ;
+        RECT 0.155 3.215 9.925 3.245 ;
+        RECT 0.155 3.090 7.345 3.215 ;
+        RECT 8.015 3.090 9.925 3.215 ;
+        RECT 1.755 2.715 2.085 3.090 ;
       LAYER mcon ;
-        RECT 0.155 3.245 0.325 3.415 ;
-        RECT 0.635 3.245 0.805 3.415 ;
-        RECT 1.115 3.245 1.285 3.415 ;
-        RECT 1.595 3.245 1.765 3.415 ;
-        RECT 2.075 3.245 2.245 3.415 ;
-        RECT 2.555 3.245 2.725 3.415 ;
-        RECT 3.035 3.245 3.205 3.415 ;
-        RECT 3.515 3.245 3.685 3.415 ;
-        RECT 3.995 3.245 4.165 3.415 ;
-        RECT 4.475 3.245 4.645 3.415 ;
-        RECT 4.955 3.245 5.125 3.415 ;
-        RECT 5.435 3.245 5.605 3.415 ;
-        RECT 5.915 3.245 6.085 3.415 ;
-        RECT 6.395 3.245 6.565 3.415 ;
-        RECT 6.875 3.245 7.045 3.415 ;
-        RECT 7.355 3.245 7.525 3.415 ;
-        RECT 7.835 3.245 8.005 3.415 ;
-        RECT 8.315 3.245 8.485 3.415 ;
-        RECT 8.795 3.245 8.965 3.415 ;
-        RECT 9.275 3.245 9.445 3.415 ;
-        RECT 9.755 3.245 9.925 3.415 ;
-        RECT 1.835 2.820 2.005 2.990 ;
+        RECT 1.835 3.245 2.005 3.415 ;
+        RECT 1.835 2.795 2.005 2.965 ;
     END
   END VPWR
   PIN Y
     ANTENNADIFFAREA 1.661650 ;
     PORT
       LAYER met1 ;
-        RECT 4.655 0.440 4.945 0.730 ;
+        RECT 4.655 2.600 4.945 2.890 ;
     END
   END Y
   OBS
       LAYER nwell ;
         RECT 0.000 1.790 10.080 3.330 ;
       LAYER li1 ;
+        RECT 4.635 2.580 4.965 2.910 ;
+        RECT 7.515 2.715 7.845 3.045 ;
         RECT 0.555 2.175 0.885 2.505 ;
-        RECT 4.235 2.090 4.405 2.425 ;
-        RECT 4.635 2.260 4.965 2.505 ;
+        RECT 5.135 2.410 5.445 2.505 ;
+        RECT 5.115 2.175 5.445 2.410 ;
         RECT 8.955 2.260 9.285 2.505 ;
-        RECT 4.655 2.175 4.965 2.260 ;
         RECT 8.975 2.175 9.285 2.260 ;
-        RECT 4.155 1.760 4.485 2.090 ;
+        RECT 1.275 1.760 1.605 2.090 ;
+        RECT 2.715 1.760 3.045 2.090 ;
+        RECT 4.155 2.010 4.485 2.090 ;
+        RECT 4.155 1.840 4.885 2.010 ;
+        RECT 4.155 1.760 4.485 1.840 ;
+        RECT 2.795 1.155 2.965 1.760 ;
         RECT 1.275 0.825 1.605 1.155 ;
         RECT 2.715 0.825 3.045 1.155 ;
-        RECT 4.715 0.750 4.885 2.175 ;
+        RECT 4.155 0.825 4.485 1.155 ;
+        RECT 0.555 0.420 0.885 0.750 ;
+        RECT 1.775 0.655 2.085 0.750 ;
+        RECT 1.755 0.420 2.085 0.655 ;
+        RECT 4.715 0.500 4.885 1.840 ;
+        RECT 5.195 0.750 5.365 2.175 ;
+        RECT 5.615 2.005 5.925 2.090 ;
+        RECT 5.595 1.760 5.925 2.005 ;
         RECT 7.035 1.760 7.365 2.090 ;
         RECT 8.475 1.760 8.805 2.090 ;
-        RECT 8.555 1.155 8.725 1.760 ;
-        RECT 5.595 0.825 5.925 1.155 ;
+        RECT 5.595 0.920 5.925 1.155 ;
+        RECT 5.615 0.825 5.925 0.920 ;
         RECT 7.035 0.825 7.365 1.155 ;
-        RECT 8.475 0.825 8.805 1.155 ;
-        RECT 0.555 0.420 0.885 0.750 ;
-        RECT 4.635 0.420 4.965 0.750 ;
-        RECT 8.975 0.655 9.285 0.750 ;
-        RECT 8.955 0.420 9.285 0.655 ;
+        RECT 8.475 0.920 8.805 1.155 ;
+        RECT 8.475 0.825 8.785 0.920 ;
+        RECT 5.115 0.420 5.445 0.750 ;
+        RECT 7.535 0.655 7.845 0.750 ;
+        RECT 7.515 0.420 7.845 0.655 ;
+        RECT 8.955 0.420 9.285 0.750 ;
+        RECT 1.835 0.240 2.005 0.420 ;
+        RECT 7.595 0.240 7.765 0.420 ;
+        RECT 0.155 0.085 9.925 0.240 ;
+        RECT 0.000 -0.085 10.080 0.085 ;
       LAYER mcon ;
+        RECT 4.715 2.660 4.885 2.830 ;
+        RECT 7.595 2.795 7.765 2.965 ;
         RECT 0.635 2.255 0.805 2.425 ;
-        RECT 4.235 2.255 4.405 2.425 ;
         RECT 9.035 2.255 9.205 2.425 ;
+        RECT 1.355 1.840 1.525 2.010 ;
+        RECT 2.795 1.840 2.965 2.010 ;
         RECT 1.355 0.905 1.525 1.075 ;
-        RECT 2.795 0.905 2.965 1.075 ;
+        RECT 4.235 0.905 4.405 1.075 ;
+        RECT 0.635 0.500 0.805 0.670 ;
+        RECT 5.675 1.840 5.845 2.010 ;
         RECT 7.115 1.840 7.285 2.010 ;
         RECT 8.555 1.840 8.725 2.010 ;
         RECT 5.675 0.905 5.845 1.075 ;
         RECT 7.115 0.905 7.285 1.075 ;
-        RECT 0.635 0.500 0.805 0.670 ;
-        RECT 4.715 0.500 4.885 0.670 ;
+        RECT 8.555 0.905 8.725 1.075 ;
         RECT 9.035 0.500 9.205 0.670 ;
+        RECT 7.595 -0.085 7.765 0.085 ;
       LAYER met1 ;
-        RECT 0.575 2.410 0.865 2.485 ;
-        RECT 4.175 2.410 4.465 2.485 ;
-        RECT 0.575 2.270 6.310 2.410 ;
-        RECT 0.575 2.195 0.865 2.270 ;
-        RECT 4.175 2.195 4.465 2.270 ;
-        RECT 0.650 0.730 0.790 2.195 ;
-        RECT 5.615 1.060 5.905 1.135 ;
-        RECT 6.170 1.060 6.310 2.270 ;
+        RECT 0.575 2.195 0.865 2.485 ;
         RECT 8.975 2.195 9.265 2.485 ;
+        RECT 0.650 0.730 0.790 2.195 ;
         RECT 7.055 1.780 7.345 2.070 ;
         RECT 7.130 1.135 7.270 1.780 ;
-        RECT 5.615 0.920 6.310 1.060 ;
-        RECT 7.055 1.060 7.345 1.135 ;
-        RECT 9.050 1.060 9.190 2.195 ;
-        RECT 7.055 0.920 9.190 1.060 ;
-        RECT 5.615 0.845 5.905 0.920 ;
-        RECT 7.055 0.845 7.345 0.920 ;
-        RECT 9.050 0.730 9.190 0.920 ;
-        RECT 0.575 0.440 0.865 0.730 ;
-        RECT 8.975 0.440 9.265 0.730 ;
+        RECT 5.615 0.845 5.905 1.135 ;
+        RECT 7.055 0.845 7.345 1.135 ;
+        RECT 0.575 0.655 0.865 0.730 ;
+        RECT 4.655 0.655 4.945 0.730 ;
+        RECT 5.690 0.655 5.830 0.845 ;
+        RECT 0.575 0.515 5.830 0.655 ;
+        RECT 7.130 0.655 7.270 0.845 ;
+        RECT 9.050 0.730 9.190 2.195 ;
+        RECT 8.975 0.655 9.265 0.730 ;
+        RECT 7.130 0.515 9.265 0.655 ;
+        RECT 0.575 0.440 0.865 0.515 ;
+        RECT 4.655 0.440 4.945 0.515 ;
+        RECT 8.975 0.440 9.265 0.515 ;
   END
 END XOR2X1
 END LIBRARY
diff --git a/cells/mag/XOR2X1.mag b/cells/mag/XOR2X1.mag
index f99cd61..251ab61 100644
--- a/cells/mag/XOR2X1.mag
+++ b/cells/mag/XOR2X1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624953873
+timestamp 1636809603
 << checkpaint >>
 rect -1260 -1374 11260 2038
 << nwell >>
@@ -24,26 +24,30 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 401 100 561 132
+rect 303 48 561 100
 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 100 1039 132
+rect 1073 132 1085 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1073 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 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
 rect 1743 100 1807 132
 rect 1841 132 1853 134
 rect 1841 100 1901 132
@@ -53,38 +57,42 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 450 849 618
-rect 879 485 1137 618
-rect 879 451 943 485
-rect 977 451 1137 485
+rect 879 566 1137 618
+rect 879 532 943 566
+rect 977 532 1137 566
+rect 879 485 1137 532
+rect 879 451 1039 485
+rect 1073 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 1455 593 1713 618
+rect 1455 559 1519 593
+rect 1553 559 1713 593
+rect 1455 450 1713 559
 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 1027 439 1085 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 367 100 401 134
+rect 1039 100 1073 134
+rect 1519 100 1553 134
 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 367 559 401 593
+rect 943 532 977 566
+rect 1039 451 1073 485
+rect 1519 559 1553 593
 rect 1807 451 1841 485
 << poly >>
 rect 273 618 303 644
@@ -173,50 +181,34 @@
 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 0 649 367 683
+rect 401 649 2016 683
+rect 31 643 1985 649
+rect 31 618 1469 643
+rect 1603 618 1985 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 1503 593 1569 609
+rect 351 543 417 559
+rect 927 566 993 582
+rect 927 532 943 566
+rect 977 532 993 566
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
+rect 927 516 993 532
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
+rect 1027 485 1089 501
+rect 1027 482 1039 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 1023 451 1039 482
+rect 1073 451 1089 485
 rect 1791 485 1857 501
 rect 1791 452 1807 485
-rect 931 435 993 451
+rect 1023 435 1089 451
 rect 1795 451 1807 452
 rect 1841 451 1857 485
 rect 1795 435 1857 451
@@ -230,9 +222,9 @@
 rect 543 352 609 368
 rect 831 402 897 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 368 977 402
 rect 831 352 897 368
-rect 559 323 593 352
+rect 559 231 593 352
 rect 255 215 321 231
 rect 255 181 271 215
 rect 305 181 321 215
@@ -243,12 +235,21 @@
 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 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 355 134 417 150
+rect 355 131 367 134
+rect 111 84 177 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 943 134 977 368
+rect 1039 150 1073 435
+rect 1123 402 1185 418
+rect 1123 401 1135 402
+rect 1119 368 1135 401
 rect 1169 368 1185 402
 rect 1119 352 1185 368
 rect 1407 402 1473 418
@@ -259,214 +260,105 @@
 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 1119 184 1135 215
+rect 1123 181 1135 184
 rect 1169 181 1185 215
-rect 1119 165 1185 181
+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 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 1745 184 1761 215
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1023 134 1089 150
+rect 1023 100 1039 134
+rect 1073 100 1089 134
+rect 1507 134 1569 150
+rect 1507 131 1519 134
+rect 351 84 417 100
+rect 1023 84 1089 100
+rect 1503 100 1519 131
+rect 1553 100 1569 134
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
 rect 1841 100 1857 134
 rect 1791 84 1857 100
-rect 1503 48 1569 68
+rect 367 48 401 84
+rect 1519 48 1553 84
 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
+rect 0 -17 1519 17
+rect 1553 -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 367 649 401 683
+rect 367 559 401 593
+rect 943 532 977 566
+rect 1519 559 1553 593
 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 559 368 593 402
 rect 271 181 305 215
-rect 559 181 593 215
 rect 847 181 881 215
+rect 127 100 161 134
 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 1711 181 1745 215
 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
+rect 1519 -17 1553 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 1507 593 1565 618
+rect 355 547 413 559
+rect 931 566 989 578
+rect 931 532 943 566
+rect 977 532 989 566
+rect 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
+rect 931 520 989 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 161 451 173 485
+rect 1795 485 1853 497
 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 562 454 1742 482
 rect 130 146 158 439
+rect 562 414 590 454
+rect 1714 414 1742 454
+rect 1795 451 1807 485
+rect 1841 451 1853 485
+rect 1795 439 1853 451
 rect 259 402 317 414
 rect 259 368 271 402
-rect 305 399 317 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 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 547 356 605 368
+rect 850 371 1135 399
 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
@@ -476,60 +368,55 @@
 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 1714 227 1742 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 305 184 847 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+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 212 1469 215
-rect 1810 212 1838 439
-rect 1457 184 1838 212
-rect 1457 181 1469 184
+rect 1457 181 1469 215
 rect 1411 169 1469 181
-rect 1810 146 1838 184
+rect 1699 215 1757 227
+rect 1699 181 1711 215
+rect 1745 181 1757 215
+rect 1699 169 1757 181
 rect 115 134 173 146
 rect 115 100 127 134
-rect 161 100 173 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 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 931 100 943 103
+rect 977 131 989 134
+rect 1138 131 1166 169
+rect 977 103 1166 131
+rect 1426 131 1454 169
+rect 1810 146 1838 439
 rect 1795 134 1853 146
+rect 1795 131 1807 134
+rect 1426 103 1807 131
+rect 977 100 989 103
 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 1795 100 1807 103
 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 -17 1519 17
+rect 1553 -17 2016 17
 rect 0 -48 2016 -17
 << labels >>
 rlabel metal1 0 618 2016 714 0 VPWR
@@ -538,31 +425,45 @@
 port 3 se
 rlabel metal1 0 -48 2016 48 0 VGND
 port 2 se
-rlabel metal1 931 88 989 146 0 Y
+rlabel metal1 0 -48 2016 48 0 VGND
+port 2 se
+rlabel metal1 931 520 989 578 0 Y
 port 4 se
-rlabel metal1 259 169 317 227 0 A
+rlabel metal1 259 169 317 184 0 A
 port 0 se
-rlabel metal1 835 169 893 227 0 A
+rlabel metal1 835 169 893 184 0 A
+port 0 se
+rlabel metal1 259 184 893 212 0 A
+port 0 se
+rlabel metal1 259 212 317 227 0 A
+port 0 se
+rlabel metal1 835 212 893 227 0 A
 port 0 se
 rlabel metal1 274 227 302 356 0 A
 port 0 se
-rlabel metal1 259 356 317 371 0 A
-port 0 se
 rlabel metal1 850 227 878 371 0 A
 port 0 se
 rlabel metal1 1123 356 1181 371 0 A
 port 0 se
-rlabel metal1 259 371 1181 399 0 A
+rlabel metal1 850 371 1181 399 0 A
 port 0 se
-rlabel metal1 259 399 317 414 0 A
+rlabel metal1 259 356 317 414 0 A
 port 0 se
 rlabel metal1 1123 399 1181 414 0 A
 port 0 se
-rlabel metal1 547 169 605 227 0 B
+rlabel metal1 1699 169 1757 227 0 B
 port 1 se
-rlabel metal1 562 227 590 277 0 B
+rlabel metal1 1714 227 1742 356 0 B
 port 1 se
-rlabel metal1 547 277 605 335 0 B
+rlabel metal1 547 356 605 414 0 B
+port 1 se
+rlabel metal1 1699 356 1757 414 0 B
+port 1 se
+rlabel metal1 562 414 590 454 0 B
+port 1 se
+rlabel metal1 1714 414 1742 454 0 B
+port 1 se
+rlabel metal1 562 454 1742 482 0 B
 port 1 se
 rlabel locali 0 -17 2016 17 4 VGND
 port 2 se ground default abutment
@@ -570,7 +471,7 @@
 port 2 se ground default abutment
 rlabel locali 0 649 2016 683 4 VPWR
 port 3 se power default abutment
-rlabel locali 31 618 1985 649 4 VGND
+rlabel metal1 31 618 1985 649 4 VGND
 port 2 se power default abutment
 << properties >>
 string FIXED_BBOX 0 0 2016 666
diff --git a/cells/mag/XOR2X1.mag.beforemagic b/cells/mag/XOR2X1.mag.beforemagic
index 5a5a4f8..665f0a4 100644
--- a/cells/mag/XOR2X1.mag.beforemagic
+++ b/cells/mag/XOR2X1.mag.beforemagic
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1624754072
+timestamp 1636762323
 << nwell >>
 rect 0 358 2016 666
 << nmos >>
@@ -22,26 +22,30 @@
 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 355 134 413 146
+rect 355 132 367 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 303 100 367 132
+rect 401 132 413 134
+rect 1027 134 1085 146
+rect 1027 132 1039 134
+rect 401 100 561 132
+rect 303 48 561 100
 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 100 1039 132
+rect 1073 132 1085 134
+rect 1507 134 1565 146
+rect 1507 132 1519 134
+rect 1073 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 1455 100 1519 132
+rect 1553 132 1565 134
+rect 1795 134 1853 146
+rect 1795 132 1807 134
+rect 1553 100 1713 132
+rect 1455 48 1713 100
 rect 1743 100 1807 132
 rect 1841 132 1853 134
 rect 1841 100 1901 132
@@ -51,38 +55,42 @@
 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 303 593 561 618
+rect 303 559 367 593
+rect 401 559 561 593
+rect 303 450 561 559
 rect 591 450 849 618
-rect 879 485 1137 618
-rect 879 451 943 485
-rect 977 451 1137 485
+rect 879 566 1137 618
+rect 879 532 943 566
+rect 977 532 1137 566
+rect 879 485 1137 532
+rect 879 451 1039 485
+rect 1073 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 1455 593 1713 618
+rect 1455 559 1519 593
+rect 1553 559 1713 593
+rect 1455 450 1713 559
 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 1027 439 1085 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 367 100 401 134
+rect 1039 100 1073 134
+rect 1519 100 1553 134
 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 367 559 401 593
+rect 943 532 977 566
+rect 1039 451 1073 485
+rect 1519 559 1553 593
 rect 1807 451 1841 485
 << poly >>
 rect 273 618 303 644
@@ -172,50 +180,34 @@
 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 0 649 367 683
+rect 401 649 2016 683
+rect 0 643 2016 649
+rect 0 618 1469 643
+rect 1603 618 2016 643
+rect 351 593 417 618
+rect 351 559 367 593
+rect 401 559 417 593
+rect 1503 593 1569 609
+rect 351 543 417 559
+rect 927 566 993 582
+rect 927 532 943 566
+rect 977 532 993 566
+rect 1503 559 1519 593
+rect 1553 559 1569 593
+rect 1503 543 1569 559
+rect 927 516 993 532
 rect 111 485 177 501
 rect 111 451 127 485
 rect 161 451 177 485
+rect 1027 485 1089 501
+rect 1027 482 1039 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 1023 451 1039 482
+rect 1073 451 1089 485
 rect 1791 485 1857 501
 rect 1791 452 1807 485
-rect 931 435 993 451
+rect 1023 435 1089 451
 rect 1795 451 1807 452
 rect 1841 451 1857 485
 rect 1795 435 1857 451
@@ -229,9 +221,9 @@
 rect 543 352 609 368
 rect 831 402 897 418
 rect 831 368 847 402
-rect 881 368 897 402
+rect 881 368 977 402
 rect 831 352 897 368
-rect 559 323 593 352
+rect 559 231 593 352
 rect 255 215 321 231
 rect 255 181 271 215
 rect 305 181 321 215
@@ -242,12 +234,21 @@
 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 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 355 134 417 150
+rect 355 131 367 134
+rect 111 84 177 100
+rect 351 100 367 131
+rect 401 100 417 134
+rect 943 134 977 368
+rect 1039 150 1073 435
+rect 1123 402 1185 418
+rect 1123 401 1135 402
+rect 1119 368 1135 401
 rect 1169 368 1185 402
 rect 1119 352 1185 368
 rect 1407 402 1473 418
@@ -258,215 +259,106 @@
 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 1119 184 1135 215
+rect 1123 181 1135 184
 rect 1169 181 1185 215
-rect 1119 165 1185 181
+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 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 1745 184 1761 215
+rect 1745 181 1757 184
+rect 1695 165 1757 181
+rect 1023 134 1089 150
+rect 1023 100 1039 134
+rect 1073 100 1089 134
+rect 1507 134 1569 150
+rect 1507 131 1519 134
+rect 351 84 417 100
+rect 1023 84 1089 100
+rect 1503 100 1519 131
+rect 1553 100 1569 134
+rect 1503 84 1569 100
+rect 1791 134 1857 150
+rect 1791 100 1807 134
 rect 1841 100 1857 134
 rect 1791 84 1857 100
-rect 1503 48 1569 68
+rect 367 48 401 84
+rect 1519 48 1553 84
 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 -17 1519 17
+rect 1553 -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 367 649 401 683
+rect 367 559 401 593
+rect 943 532 977 566
+rect 1519 559 1553 593
 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 559 368 593 402
 rect 271 181 305 215
-rect 559 181 593 215
 rect 847 181 881 215
+rect 127 100 161 134
 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 1711 181 1745 215
 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
+rect 1519 -17 1553 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 649 367 683
+rect 401 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 355 593 413 618
+rect 355 559 367 593
+rect 401 559 413 593
+rect 1507 593 1565 618
+rect 355 547 413 559
+rect 931 566 989 578
+rect 931 532 943 566
+rect 977 532 989 566
+rect 1507 559 1519 593
+rect 1553 559 1565 593
+rect 1507 547 1565 559
+rect 931 520 989 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 161 451 173 485
+rect 1795 485 1853 497
 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 562 454 1742 482
 rect 130 146 158 439
+rect 562 414 590 454
+rect 1714 414 1742 454
+rect 1795 451 1807 485
+rect 1841 451 1853 485
+rect 1795 439 1853 451
 rect 259 402 317 414
 rect 259 368 271 402
-rect 305 399 317 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 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 547 356 605 368
+rect 850 371 1135 399
 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
@@ -476,96 +368,103 @@
 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 1714 227 1742 356
+rect 259 215 317 227
+rect 259 181 271 215
+rect 305 212 317 215
+rect 835 215 893 227
+rect 835 212 847 215
+rect 305 184 847 212
+rect 305 181 317 184
+rect 259 169 317 181
+rect 835 181 847 184
+rect 881 181 893 215
+rect 835 169 893 181
+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 212 1469 215
-rect 1810 212 1838 439
-rect 1457 184 1838 212
-rect 1457 181 1469 184
+rect 1457 181 1469 215
 rect 1411 169 1469 181
-rect 1810 146 1838 184
+rect 1699 215 1757 227
+rect 1699 181 1711 215
+rect 1745 181 1757 215
+rect 1699 169 1757 181
 rect 115 134 173 146
 rect 115 100 127 134
-rect 161 100 173 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 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 931 100 943 103
+rect 977 131 989 134
+rect 1138 131 1166 169
+rect 977 103 1166 131
+rect 1426 131 1454 169
+rect 1810 146 1838 439
 rect 1795 134 1853 146
+rect 1795 131 1807 134
+rect 1426 103 1807 131
+rect 977 100 989 103
 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 1795 100 1807 103
 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 -17 1519 17
+rect 1553 -17 2016 17
 rect 0 -48 2016 -17
 << labels >>
-rlabel locali 0 618 2016 714 0 VDD
+rlabel metal1 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
+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
+rlabel metal1 931 520 989 578 0 Y
 port 5 se
-rlabel metal1 259 169 317 227 0 A
+rlabel metal1 259 169 317 184 0 A
 port 6 se
-rlabel metal1 835 169 893 227 0 A
+rlabel metal1 835 169 893 184 0 A
 port 7 se
-rlabel metal1 274 227 302 356 0 A
+rlabel metal1 259 184 893 212 0 A
 port 8 se
-rlabel metal1 259 356 317 371 0 A
+rlabel metal1 259 212 317 227 0 A
 port 9 se
-rlabel metal1 850 227 878 371 0 A
+rlabel metal1 835 212 893 227 0 A
 port 10 se
-rlabel metal1 1123 356 1181 371 0 A
+rlabel metal1 274 227 302 356 0 A
 port 11 se
-rlabel metal1 259 371 1181 399 0 A
+rlabel metal1 850 227 878 371 0 A
 port 12 se
-rlabel metal1 259 399 317 414 0 A
+rlabel metal1 1123 356 1181 371 0 A
 port 13 se
-rlabel metal1 1123 399 1181 414 0 A
+rlabel metal1 850 371 1181 399 0 A
 port 14 se
-rlabel metal1 547 169 605 227 0 B
+rlabel metal1 259 356 317 414 0 A
 port 15 se
-rlabel metal1 562 227 590 277 0 B
+rlabel metal1 1123 399 1181 414 0 A
 port 16 se
-rlabel metal1 547 277 605 335 0 B
+rlabel metal1 1699 169 1757 227 0 B
 port 17 se
+rlabel metal1 1714 227 1742 356 0 B
+port 18 se
+rlabel metal1 547 356 605 414 0 B
+port 19 se
+rlabel metal1 1699 356 1757 414 0 B
+port 20 se
+rlabel metal1 562 414 590 454 0 B
+port 21 se
+rlabel metal1 1714 414 1742 454 0 B
+port 22 se
+rlabel metal1 562 454 1742 482 0 B
+port 23 se
 << properties >>
 string FIXED_BBOX 0 0 2016 666
 << end >>
diff --git a/cells/sp/ASYNC2.sp b/cells/sp/ASYNC2.sp
new file mode 100644
index 0000000..e38b53a
--- /dev/null
+++ b/cells/sp/ASYNC2.sp
@@ -0,0 +1,13 @@
+*** Spice netlist generated by cell2spice.pl from cell file ASYNC2.cell ***
+
+.subckt ASYNC2 VPWR VGND A B C CN
+M0 CN C GND VGND nmos w=0.420u l=0.150u
+M1 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M2 CN B net1 VPWR pmos w=0.840u l=0.150u
+M3 C CN VDD VPWR pmos w=0.840u l=0.150u
+M4 CN C VDD VPWR pmos w=0.840u l=0.150u
+M5 CN B net2 VGND nmos w=0.420u l=0.150u
+M6 net2 A GND VGND nmos w=0.420u l=0.150u
+M7 C CN GND VGND nmos w=0.420u l=0.150u
+.ends ASYNC2
+
diff --git a/cells/sp/ASYNC3.sp b/cells/sp/ASYNC3.sp
new file mode 100644
index 0000000..5148e0b
--- /dev/null
+++ b/cells/sp/ASYNC3.sp
@@ -0,0 +1,17 @@
+*** Spice netlist generated by cell2spice.pl from cell file ASYNC3.cell ***
+
+.subckt ASYNC3 VPWR VGND B A C CN
+M0 CN B net2 VGND nmos w=0.420u l=0.150u
+M1 net2 A GND VGND nmos w=0.420u l=0.150u
+M2 CN A net1 VGND nmos w=0.420u l=0.150u
+M3 C CN GND VGND nmos w=0.420u l=0.150u
+M4 net1 B GND VGND nmos w=0.420u l=0.150u
+M5 net2 C net1 VGND nmos w=0.420u l=0.150u
+M6 CN B net3 VPWR pmos w=0.840u l=0.150u
+M7 net3 A VDD VPWR pmos w=0.840u l=0.150u
+M8 net4 B VDD VPWR pmos w=0.840u l=0.150u
+M9 CN A net4 VPWR pmos w=0.840u l=0.150u
+M10 C CN VDD VPWR pmos w=0.840u l=0.150u
+M11 net4 C net3 VPWR pmos w=0.840u l=0.150u
+.ends ASYNC3
+
diff --git a/cells/sp/CLKBUF2.sp b/cells/sp/CLKBUF2.sp
new file mode 100644
index 0000000..21b0ac3
--- /dev/null
+++ b/cells/sp/CLKBUF2.sp
@@ -0,0 +1,29 @@
+*** Spice netlist generated by cell2spice.pl from cell file CLKBUF2.cell ***
+
+.subckt CLKBUF2 VPWR VGND A Y
+M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M1 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M2 2 1 VPWR VPWR pmos w=0.840u l=0.150u
+M3 2 1 VPWR VPWR pmos w=0.840u l=0.150u
+M4 3 2 VPWR VPWR pmos w=0.840u l=0.150u
+M5 3 2 VPWR VPWR pmos w=0.840u l=0.150u
+M6 4 3 VPWR VPWR pmos w=0.840u l=0.150u
+M7 4 3 VPWR VPWR pmos w=0.840u l=0.150u
+M8 5 4 VPWR VPWR pmos w=0.840u l=0.150u
+M9 5 4 VPWR VPWR pmos w=0.840u l=0.150u
+M10 Y 5 VPWR VPWR pmos w=0.840u l=0.150u
+M11 Y 5 VPWR VPWR pmos w=0.840u l=0.150u
+M12 1 A VGND VGND nmos w=0.420u l=0.150u
+M13 1 A VGND VGND nmos w=0.420u l=0.150u
+M14 2 1 VGND VGND nmos w=0.420u l=0.150u
+M15 2 1 VGND VGND nmos w=0.420u l=0.150u
+M16 3 2 VGND VGND nmos w=0.420u l=0.150u
+M17 3 2 VGND VGND nmos w=0.420u l=0.150u
+M18 4 3 VGND VGND nmos w=0.420u l=0.150u
+M19 4 3 VGND VGND nmos w=0.420u l=0.150u
+M20 5 4 VGND VGND nmos w=0.420u l=0.150u
+M21 5 4 VGND VGND nmos w=0.420u l=0.150u
+M22 Y 5 VGND VGND nmos w=0.420u l=0.150u
+M23 Y 5 VGND VGND nmos w=0.420u l=0.150u
+.ends CLKBUF2
+
diff --git a/cells/sp/HAX1.sp b/cells/sp/HAX1.sp
new file mode 100644
index 0000000..f505f82
--- /dev/null
+++ b/cells/sp/HAX1.sp
@@ -0,0 +1,19 @@
+*** Spice netlist generated by cell2spice.pl from cell file HAX1.cell ***
+
+.subckt HAX1 VPWR VGND B A YS YC
+M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M1 1 B VPWR VPWR pmos w=0.840u l=0.150u
+M2 YC 1 VPWR VPWR pmos w=0.840u l=0.150u
+M3 2 1 VPWR VPWR pmos w=0.840u l=0.150u
+M4 3 B 2 VPWR pmos w=0.840u l=0.150u
+M5 3 A VPWR VPWR pmos w=0.840u l=0.150u
+M6 YS 2 VPWR VPWR pmos w=0.840u l=0.150u
+M7 4 A VGND VGND nmos w=0.420u l=0.150u
+M8 1 B 4 VGND nmos w=0.420u l=0.150u
+M9 YC 1 VGND VGND nmos w=0.420u l=0.150u
+M10 5 1 VGND VGND nmos w=0.420u l=0.150u
+M11 2 B 5 VGND nmos w=0.420u l=0.150u
+M12 5 A 2 VGND nmos w=0.420u l=0.150u
+M13 YS 2 VGND VGND nmos w=0.420u l=0.150u
+.ends HAX1
+
diff --git a/cells/sp/MARTIN1989.sp b/cells/sp/MARTIN1989.sp
new file mode 100644
index 0000000..1583819
--- /dev/null
+++ b/cells/sp/MARTIN1989.sp
@@ -0,0 +1,13 @@
+*** Spice netlist generated by cell2spice.pl from cell file MARTIN1989.cell ***
+
+.subckt MARTIN1989 VPWR VGND A B C
+M0 net2 B net3 VGND nmos w=0.420u l=0.150u
+M1 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net2 B net1 VPWR pmos w=0.840u l=0.150u
+M3 C net2 VDD VPWR pmos w=0.840u l=0.150u
+M4 net3 A GND VGND nmos w=0.420u l=0.150u
+M5 C net2 GND VGND nmos w=0.420u l=0.150u
+M6 net2 C VDD VPWR pmos w=0.840u l=0.150u
+M7 net2 C GND VGND nmos w=0.420u l=0.150u
+.ends MARTIN1989
+
diff --git a/cells/sp/NOR2X1.sp b/cells/sp/NOR2X1.sp
new file mode 100644
index 0000000..83836fa
--- /dev/null
+++ b/cells/sp/NOR2X1.sp
@@ -0,0 +1,9 @@
+*** Spice netlist generated by cell2spice.pl from cell file NOR2X1.cell ***
+
+.subckt NOR2X1 VPWR VGND B A Y
+M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M1 Y B 1 VPWR pmos w=0.840u l=0.150u
+M2 Y A VGND VGND nmos w=0.420u l=0.150u
+M3 Y B VGND VGND nmos w=0.420u l=0.150u
+.ends NOR2X1
+
diff --git a/cells/sp/OAI21X1.sp b/cells/sp/OAI21X1.sp
new file mode 100644
index 0000000..21bb648
--- /dev/null
+++ b/cells/sp/OAI21X1.sp
@@ -0,0 +1,11 @@
+*** Spice netlist generated by cell2spice.pl from cell file OAI21X1.cell ***
+
+.subckt OAI21X1 VPWR VGND C B A Y
+M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M1 Y B 1 VPWR pmos w=0.840u l=0.150u
+M2 Y C VPWR VPWR pmos w=0.840u l=0.150u
+M3 2 A VGND VGND nmos w=0.420u l=0.150u
+M4 2 B VGND VGND nmos w=0.420u l=0.150u
+M5 Y C 2 VGND nmos w=0.420u l=0.150u
+.ends OAI21X1
+
diff --git a/cells/sp/OAI22X1.sp b/cells/sp/OAI22X1.sp
new file mode 100644
index 0000000..3fa121b
--- /dev/null
+++ b/cells/sp/OAI22X1.sp
@@ -0,0 +1,13 @@
+*** Spice netlist generated by cell2spice.pl from cell file OAI22X1.cell ***
+
+.subckt OAI22X1 VPWR VGND D C B A Y
+M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
+M1 Y B 1 VPWR pmos w=0.840u l=0.150u
+M2 2 D Y VPWR pmos w=0.840u l=0.150u
+M3 2 C VPWR VPWR pmos w=0.840u l=0.150u
+M4 3 A VGND VGND nmos w=0.420u l=0.150u
+M5 3 B VGND VGND nmos w=0.420u l=0.150u
+M6 Y D 3 VGND nmos w=0.420u l=0.150u
+M7 3 C Y VGND nmos w=0.420u l=0.150u
+.ends OAI22X1
+
diff --git a/cells/sp/SUTHERLAND1989.sp b/cells/sp/SUTHERLAND1989.sp
new file mode 100644
index 0000000..51425cf
--- /dev/null
+++ b/cells/sp/SUTHERLAND1989.sp
@@ -0,0 +1,17 @@
+*** Spice netlist generated by cell2spice.pl from cell file SUTHERLAND1989.cell ***
+
+.subckt SUTHERLAND1989 VPWR VGND B A C
+M0 net6 B net5 VGND nmos w=0.420u l=0.150u
+M1 net2 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net6 B net2 VPWR pmos w=0.840u l=0.150u
+M3 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M4 net1 B VDD VPWR pmos w=0.840u l=0.150u
+M5 net3 C net1 VPWR pmos w=0.840u l=0.150u
+M6 C net3 VDD VPWR pmos w=0.840u l=0.150u
+M7 net3 C net4 VGND nmos w=0.420u l=0.150u
+M8 net5 A GND VGND nmos w=0.420u l=0.150u
+M9 net4 B GND VGND nmos w=0.420u l=0.150u
+M10 net4 A GND VGND nmos w=0.420u l=0.150u
+M11 C net3 GND VGND nmos w=0.420u l=0.150u
+.ends SUTHERLAND1989
+
diff --git a/cells/sp/VANBERKEL1991.sp b/cells/sp/VANBERKEL1991.sp
new file mode 100644
index 0000000..5a57811
--- /dev/null
+++ b/cells/sp/VANBERKEL1991.sp
@@ -0,0 +1,17 @@
+*** Spice netlist generated by cell2spice.pl from cell file VANBERKEL1991.cell ***
+
+.subckt VANBERKEL1991 VPWR VGND A B C
+M0 net3 B net5 VGND nmos w=0.420u l=0.150u
+M1 net2 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net3 B net2 VPWR pmos w=0.840u l=0.150u
+M3 net1 B VDD VPWR pmos w=0.840u l=0.150u
+M4 net3 A net1 VPWR pmos w=0.840u l=0.150u
+M5 C net3 VDD VPWR pmos w=0.840u l=0.150u
+M6 net3 A net4 VGND nmos w=0.420u l=0.150u
+M7 net5 A GND VGND nmos w=0.420u l=0.150u
+M8 net4 B GND VGND nmos w=0.420u l=0.150u
+M9 net4 C net5 VGND nmos w=0.420u l=0.150u
+M10 C net3 GND VGND nmos w=0.420u l=0.150u
+M11 net1 C net2 VPWR pmos w=0.840u l=0.150u
+.ends VANBERKEL1991
+
diff --git a/cells/sp/libresilicon.sp b/cells/sp/libresilicon.sp
index 1254c34..adc08c1 100644
--- a/cells/sp/libresilicon.sp
+++ b/cells/sp/libresilicon.sp
@@ -38,6 +38,47 @@
 M7 3 C VGND VGND nmos w=0.420u l=0.150u
 .ends AOI22X1
 
+.subckt ASYNC1 VPWR VGND A B C CN
+M0 CN B net3 VGND nmos w=0.420u l=0.150u
+M1 net4 A VDD VPWR pmos w=0.840u l=0.150u
+M2 CN B net4 VPWR pmos w=0.840u l=0.150u
+M3 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M4 net1 B VDD VPWR pmos w=0.840u l=0.150u
+M5 CN C net1 VPWR pmos w=0.840u l=0.150u
+M6 C CN VDD VPWR pmos w=0.840u l=0.150u
+M7 CN C net2 VGND nmos w=0.420u l=0.150u
+M8 net3 A GND VGND nmos w=0.420u l=0.150u
+M9 net2 B GND VGND nmos w=0.420u l=0.150u
+M10 net2 A GND VGND nmos w=0.420u l=0.150u
+M11 C CN GND VGND nmos w=0.420u l=0.150u
+.ends ASYNC1
+
+.subckt ASYNC2 VPWR VGND A B C CN
+M0 CN C GND VGND nmos w=0.420u l=0.150u
+M1 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M2 CN B net1 VPWR pmos w=0.840u l=0.150u
+M3 C CN VDD VPWR pmos w=0.840u l=0.150u
+M4 CN C VDD VPWR pmos w=0.840u l=0.150u
+M5 CN B net2 VGND nmos w=0.420u l=0.150u
+M6 net2 A GND VGND nmos w=0.420u l=0.150u
+M7 C CN GND VGND nmos w=0.420u l=0.150u
+.ends ASYNC2
+
+.subckt ASYNC3 VPWR VGND B A C CN
+M0 CN B net2 VGND nmos w=0.420u l=0.150u
+M1 net2 A GND VGND nmos w=0.420u l=0.150u
+M2 CN A net1 VGND nmos w=0.420u l=0.150u
+M3 C CN GND VGND nmos w=0.420u l=0.150u
+M4 net1 B GND VGND nmos w=0.420u l=0.150u
+M5 net2 C net1 VGND nmos w=0.420u l=0.150u
+M6 CN B net3 VPWR pmos w=0.840u l=0.150u
+M7 net3 A VDD VPWR pmos w=0.840u l=0.150u
+M8 net4 B VDD VPWR pmos w=0.840u l=0.150u
+M9 CN A net4 VPWR pmos w=0.840u l=0.150u
+M10 C CN VDD VPWR pmos w=0.840u l=0.150u
+M11 net4 C net3 VPWR pmos w=0.840u l=0.150u
+.ends ASYNC3
+
 .subckt BUFX2 VPWR VGND A Y
 M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
 M1 Y 1 VPWR VPWR pmos w=0.840u l=0.150u
@@ -382,6 +423,17 @@
 M34 usemux1muxsel1p usexor_n usemux0asel0p VPWR pmos w=0.840u l=0.150u
 .ends LOFTY2
 
+.subckt MARTIN1989 VPWR VGND A B C
+M0 net2 B net3 VGND nmos w=0.420u l=0.150u
+M1 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net2 B net1 VPWR pmos w=0.840u l=0.150u
+M3 C net2 VDD VPWR pmos w=0.840u l=0.150u
+M4 net3 A GND VGND nmos w=0.420u l=0.150u
+M5 C net2 GND VGND nmos w=0.420u l=0.150u
+M6 net2 C VDD VPWR pmos w=0.840u l=0.150u
+M7 net2 C GND VGND nmos w=0.420u l=0.150u
+.ends MARTIN1989
+
 .subckt MUX2X1 VPWR VGND S B A Y
 M0 1 S VPWR VPWR pmos w=0.840u l=0.150u
 M1 2 B VPWR VPWR pmos w=0.840u l=0.150u
@@ -723,6 +775,21 @@
 R81 5 YPAD 100
 .ends PADOUT
 
+.subckt SUTHERLAND1989 VPWR VGND B A C
+M0 net6 B net5 VGND nmos w=0.420u l=0.150u
+M1 net2 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net6 B net2 VPWR pmos w=0.840u l=0.150u
+M3 net1 A VDD VPWR pmos w=0.840u l=0.150u
+M4 net1 B VDD VPWR pmos w=0.840u l=0.150u
+M5 net3 C net1 VPWR pmos w=0.840u l=0.150u
+M6 C net3 VDD VPWR pmos w=0.840u l=0.150u
+M7 net3 C net4 VGND nmos w=0.420u l=0.150u
+M8 net5 A GND VGND nmos w=0.420u l=0.150u
+M9 net4 B GND VGND nmos w=0.420u l=0.150u
+M10 net4 A GND VGND nmos w=0.420u l=0.150u
+M11 C net3 GND VGND nmos w=0.420u l=0.150u
+.ends SUTHERLAND1989
+
 .subckt TBUFX1 VPWR VGND EN A Y
 M0 1 EN VPWR VPWR pmos w=0.840u l=0.150u
 M1 2 1 Y VPWR pmos w=0.840u l=0.150u
@@ -745,6 +812,21 @@
 M9 3 A VGND VGND nmos w=0.420u l=0.150u
 .ends TBUFX2
 
+.subckt VANBERKEL1991 VPWR VGND A B C
+M0 net3 B net5 VGND nmos w=0.420u l=0.150u
+M1 net2 A VDD VPWR pmos w=0.840u l=0.150u
+M2 net3 B net2 VPWR pmos w=0.840u l=0.150u
+M3 net1 B VDD VPWR pmos w=0.840u l=0.150u
+M4 net3 A net1 VPWR pmos w=0.840u l=0.150u
+M5 C net3 VDD VPWR pmos w=0.840u l=0.150u
+M6 net3 A net4 VGND nmos w=0.420u l=0.150u
+M7 net5 A GND VGND nmos w=0.420u l=0.150u
+M8 net4 B GND VGND nmos w=0.420u l=0.150u
+M9 net4 C net5 VGND nmos w=0.420u l=0.150u
+M10 C net3 GND VGND nmos w=0.420u l=0.150u
+M11 net1 C net2 VPWR pmos w=0.840u l=0.150u
+.ends VANBERKEL1991
+
 .subckt XNOR2X1 VPWR VGND B A Y
 M0 1 A VPWR VPWR pmos w=0.840u l=0.150u
 M1 3 2 VPWR VPWR pmos w=0.840u l=0.150u