Fixed DAC connection
diff --git a/gds/caravel.gds.gz b/gds/caravel.gds.gz
index b8c2edb..df7c5d9 100644
--- a/gds/caravel.gds.gz
+++ b/gds/caravel.gds.gz
Binary files differ
diff --git a/gds/caravel.mag b/gds/caravel.mag
index 21f79f7..183cf39 100644
--- a/gds/caravel.mag
+++ b/gds/caravel.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1608041998
+timestamp 1608047658
 << checkpaint >>
 rect -1260 -1260 718860 1038860
 << metal1 >>
@@ -81614,187 +81614,187 @@
 rect 400342 222659 400384 222895
 rect 380288 222617 400384 222659
 use user_id_programming  user_id_value ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 656625 0 1 80926
 box 0 0 7109 7077
 use storage  storage ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 52031 0 1 61392
 box 0 0 88934 189234
 use mgmt_core  soc ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 204550 0 1 53700
 box 0 0 430000 170000
 use sky130_fd_sc_hvl__lsbufhv2lv_1_wrapped  rstb_level ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 154753 0 1 51403
 box 0 1 5124 5084
 use simple_por  por ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 654176 0 1 104197
 box 25 11 11344 8338
 use mgmt_protect  mgmt_buffers ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 288100 0 1 239747
 box 0 0 169594 13025
 use gpio_control_block  gpio_control_bidir\[1\] ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 166200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_bidir\[0\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 121000
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[37\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 202600
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[36\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 245800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[3\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 256400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[2\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 211200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[35\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 289000
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[34\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 332200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[33\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 375400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[5\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 346400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[4\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 301400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[7\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 479800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[6\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 391600
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[32\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 418600
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[31\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 546200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[30\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 589400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[29\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 632600
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[9\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 568800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[8\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 523800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[10\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 614000
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[28\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 675800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[27\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 719000
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[26\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 762200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[13\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 749200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[12\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 704200
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[11\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 659000
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[25\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 805400
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[24\]
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 8567 0 1 889800
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[23\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 97200 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[22\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 148600 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[21\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 200000 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[20\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 251400 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[19\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 303000 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[18\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 353400 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[17\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 420800 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[16\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 497800 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[15\]
-timestamp 1608041998
+timestamp 1608047658
 transform 0 1 549200 -1 0 1029747
 box 0 0 33934 18344
 use gpio_control_block  gpio_control_in\[14\]
-timestamp 1608041998
+timestamp 1608047658
 transform -1 0 708537 0 1 927600
 box 0 0 33934 18344
 use chip_io  padframe ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 0 0 1 0
 box 0 0 717600 1037600
 use user_project_wrapper  mprj ../mag
-timestamp 1608041998
+timestamp 1608047658
 transform 1 0 65277 0 1 276402
 box -8576 -7506 592500 711442
 << properties >>
diff --git a/gds/caravel.old.gds.gz b/gds/caravel.old.gds.gz
index 79a2997..49e0b26 100644
--- a/gds/caravel.old.gds.gz
+++ b/gds/caravel.old.gds.gz
Binary files differ
diff --git a/gds/user_project_wrapper.gds.gz b/gds/user_project_wrapper.gds.gz
index a26097c..aab2cb9 100644
--- a/gds/user_project_wrapper.gds.gz
+++ b/gds/user_project_wrapper.gds.gz
Binary files differ
diff --git a/mag/10good.mag b/mag/10good.mag
index 40ed69c..66ddeb3 100644
--- a/mag/10good.mag
+++ b/mag/10good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608006120
+timestamp 1608047394
 << metal1 >>
 rect 36077 24683 36179 24689
 rect 36077 24624 36087 24683
@@ -529,18 +529,18 @@
 rect 18759 20110 20417 20186
 rect 28739 20130 30397 20206
 rect 8944 20078 10466 20087
-use 9good  9good_1
-timestamp 1608004133
-transform 1 0 19934 0 1 3
-box -3 -1 19911 23259
-use 9good  9good_0
-timestamp 1608004133
-transform 1 0 2 0 1 1
-box -3 -1 19911 23259
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 38534 0 1 22730
 box -70 45 891 509
+use 9good  9good_0
+timestamp 1608047394
+transform 1 0 2 0 1 1
+box -3 -1 19911 23259
+use 9good  9good_1
+timestamp 1608047394
+transform 1 0 19934 0 1 3
+box -3 -1 19911 23259
 << labels >>
 rlabel metal4 -339 21054 -292 21094 1 GND
 rlabel metal2 -349 20793 -302 20833 1 VDD
diff --git a/mag/2good.mag b/mag/2good.mag
index 74a5466..3085440 100644
--- a/mag/2good.mag
+++ b/mag/2good.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1608004133
+timestamp 1608047394
 << locali >>
 rect -180 1366 -114 1382
 rect -184 1324 -174 1366
@@ -119,32 +119,32 @@
 rect 638 -224 708 75
 rect 633 -294 2671 -224
 rect 638 -1126 708 -294
-use sky130_fd_pr__res_generic_po_0v6cx5  sky130_fd_pr__res_generic_po_0v6cx5_0
+use Sw-1  Sw-1_0
+timestamp 1608047394
+transform 1 0 124 0 1 -86
+box -140 90 1782 1018
+use Sw-1  Sw-1_1
+timestamp 1608047394
+transform 1 0 110 0 1 -1292
+box -140 90 1782 1018
+use Sw-1  Sw-1_2
+timestamp 1608047394
+transform 1 0 2068 0 1 -460
+box -140 90 1782 1018
+use sky130_fd_pr__res_generic_po_abfehu  sky130_fd_pr__res_generic_po_abfehu_0
 timestamp 1606707439
-transform 1 0 -67 0 1 -150
-box -33 -244 33 244
-use sky130_fd_pr__res_generic_po_kabjgr  sky130_fd_pr__res_generic_po_kabjgr_0
-timestamp 1606707439
-transform 1 0 -151 0 1 556
+transform 1 0 -147 0 1 1176
 box -33 -244 33 244
 use sky130_fd_pr__res_generic_po_i65fu2  sky130_fd_pr__res_generic_po_i65fu2_0
 timestamp 1606707439
 transform 1 0 -147 0 1 -742
 box -33 -244 33 244
-use sky130_fd_pr__res_generic_po_abfehu  sky130_fd_pr__res_generic_po_abfehu_0
+use sky130_fd_pr__res_generic_po_kabjgr  sky130_fd_pr__res_generic_po_kabjgr_0
 timestamp 1606707439
-transform 1 0 -147 0 1 1176
+transform 1 0 -151 0 1 556
 box -33 -244 33 244
-use Sw-1  Sw-1_2
-timestamp 1608004133
-transform 1 0 2068 0 1 -460
-box -140 90 1782 1018
-use Sw-1  Sw-1_1
-timestamp 1608004133
-transform 1 0 110 0 1 -1292
-box -140 90 1782 1018
-use Sw-1  Sw-1_0
-timestamp 1608004133
-transform 1 0 124 0 1 -86
-box -140 90 1782 1018
+use sky130_fd_pr__res_generic_po_0v6cx5  sky130_fd_pr__res_generic_po_0v6cx5_0
+timestamp 1606707439
+transform 1 0 -67 0 1 -150
+box -33 -244 33 244
 << end >>
diff --git a/mag/3good.mag b/mag/3good.mag
index d659429..2c35487 100644
--- a/mag/3good.mag
+++ b/mag/3good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 1992 1550 2030 2024
 rect 1766 1532 2030 1550
@@ -32,16 +32,16 @@
 << metal4 >>
 rect 443 1164 488 1310
 rect 472 1083 1491 1121
-use Sw-1  Sw-1_0
-timestamp 1608004133
-transform 1 0 1185 0 1 1008
-box -70 45 891 509
-use 2good  2good_1
-timestamp 1608004133
-transform 1 0 103 0 1 1850
-box -97 -601 1925 738
 use 2good  2good_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 98 0 1 604
 box -97 -601 1925 738
+use 2good  2good_1
+timestamp 1608047394
+transform 1 0 103 0 1 1850
+box -97 -601 1925 738
+use Sw-1  Sw-1_0
+timestamp 1608047394
+transform 1 0 1185 0 1 1008
+box -70 45 891 509
 << end >>
diff --git a/mag/4good.mag b/mag/4good.mag
index 1bbfa00..174acc5 100644
--- a/mag/4good.mag
+++ b/mag/4good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 2051 2833 2083 3926
 rect 1750 2814 2083 2833
@@ -41,16 +41,16 @@
 rect 1403 1503 1582 1522
 << metal4 >>
 rect 435 2401 473 2578
-use 3good  3good_1
-timestamp 1608004133
-transform 1 0 4 0 1 2517
-box 1 3 2076 2588
-use 3good  3good_0
-timestamp 1608004133
-transform 1 0 -2 0 1 -1
-box 1 3 2076 2588
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 1173 0 1 2246
 box -70 45 891 509
+use 3good  3good_0
+timestamp 1608047394
+transform 1 0 -2 0 1 -1
+box 1 3 2076 2588
+use 3good  3good_1
+timestamp 1608047394
+transform 1 0 4 0 1 2517
+box 1 3 2076 2588
 << end >>
diff --git a/mag/5good.mag b/mag/5good.mag
index 4444610..058b8ff 100644
--- a/mag/5good.mag
+++ b/mag/5good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 2106 8299 2213 8307
 rect 2106 8285 2216 8299
@@ -50,16 +50,16 @@
 rect 479 5506 1641 5545
 rect 479 5503 521 5506
 rect 516 2943 1528 2982
-use 4good  4good_1
-timestamp 1608004133
-transform 1 0 48 0 1 5663
-box -1 2 2115 5105
-use 4good  4good_0
-timestamp 1608004133
-transform 1 0 48 0 1 614
-box -1 2 2115 5105
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 1336 0 1 5441
 box -70 45 891 509
+use 4good  4good_0
+timestamp 1608047394
+transform 1 0 48 0 1 614
+box -1 2 2115 5105
+use 4good  4good_1
+timestamp 1608047394
+transform 1 0 48 0 1 5663
+box -1 2 2115 5105
 << end >>
diff --git a/mag/6good.mag b/mag/6good.mag
index e4babb4..db73835 100644
--- a/mag/6good.mag
+++ b/mag/6good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 2192 15324 2211 15325
 rect 2174 15302 2211 15324
@@ -59,16 +59,16 @@
 rect 425 10001 1608 10043
 rect 425 9954 515 10001
 rect 465 9951 515 9954
-use Sw-1  Sw-1_0
-timestamp 1608004133
-transform 1 0 1308 0 1 9932
-box -70 45 891 509
-use 5good  5good_1
-timestamp 1608004133
-transform 1 0 -50 0 1 9485
-box 47 616 2227 10768
 use 5good  5good_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 -48 0 1 -616
 box 47 616 2227 10768
+use 5good  5good_1
+timestamp 1608047394
+transform 1 0 -50 0 1 9485
+box 47 616 2227 10768
+use Sw-1  Sw-1_0
+timestamp 1608047394
+transform 1 0 1308 0 1 9932
+box -70 45 891 509
 << end >>
diff --git a/mag/7good.mag b/mag/7good.mag
index 3b04d24..2e77fca 100644
--- a/mag/7good.mag
+++ b/mag/7good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 2292 20720 3540 20735
 rect 1958 20696 2034 20702
@@ -303,16 +303,16 @@
 rect 2845 9892 2852 9932
 rect 2271 9883 2852 9892
 rect 2271 9880 2317 9883
-use 6good  6good_0
-timestamp 1608004133
-transform 1 0 2 0 1 0
-box -3 0 2218 20253
-use 6good  6good_1
-timestamp 1608004133
-transform 1 0 2537 0 1 -28
-box -3 0 2218 20253
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 3529 0 1 20226
 box -70 45 891 509
+use 6good  6good_1
+timestamp 1608047394
+transform 1 0 2537 0 1 -28
+box -3 0 2218 20253
+use 6good  6good_0
+timestamp 1608047394
+transform 1 0 2 0 1 0
+box -3 0 2218 20253
 << end >>
diff --git a/mag/8good.mag b/mag/8good.mag
index 99f4aac..1030928 100644
--- a/mag/8good.mag
+++ b/mag/8good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 4387 21952 4421 21979
 rect 5884 21966 6423 21971
@@ -307,16 +307,16 @@
 rect 3803 20291 5579 20343
 rect 8913 20329 8970 20343
 rect 8913 20262 8956 20329
-use 7good  7good_0
-timestamp 1608004133
-transform 1 0 0 0 1 28
-box -1 -28 4820 20841
-use 7good  7good_1
-timestamp 1608004133
-transform 1 0 5108 0 1 20
-box -1 -28 4820 20841
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 8660 0 1 21115
 box -70 45 891 509
+use 7good  7good_1
+timestamp 1608047394
+transform 1 0 5108 0 1 20
+box -1 -28 4820 20841
+use 7good  7good_0
+timestamp 1608047394
+transform 1 0 0 0 1 28
+box -1 -28 4820 20841
 << end >>
diff --git a/mag/9good.mag b/mag/9good.mag
index 6ae9859..fc4eef6 100644
--- a/mag/9good.mag
+++ b/mag/9good.mag
@@ -1,6 +1,6 @@
 magic
 tech sky130A
-timestamp 1608004133
+timestamp 1608047394
 << metal1 >>
 rect 16202 22417 16247 23211
 rect 16171 22409 16265 22417
@@ -288,16 +288,16 @@
 rect 18018 21419 18605 21464
 << metal4 >>
 rect 18916 21220 18958 22150
-use 8good  8good_0
-timestamp 1608004133
-transform 1 0 -2 0 1 7
-box -1 -8 9928 21979
-use 8good  8good_1
-timestamp 1608004133
-transform 1 0 9983 0 1 10
-box -1 -8 9928 21979
 use Sw-1  Sw-1_0
-timestamp 1608004133
+timestamp 1608047394
 transform 1 0 18665 0 1 22033
 box -70 45 891 509
+use 8good  8good_1
+timestamp 1608047394
+transform 1 0 9983 0 1 10
+box -1 -8 9928 21979
+use 8good  8good_0
+timestamp 1608047394
+transform 1 0 -2 0 1 7
+box -1 -8 9928 21979
 << end >>
diff --git a/mag/Sw-1.mag b/mag/Sw-1.mag
index d00bc06..a180bf7 100644
--- a/mag/Sw-1.mag
+++ b/mag/Sw-1.mag
@@ -1,7 +1,7 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1608004133
+timestamp 1608047394
 << nwell >>
 rect 10 760 664 822
 rect 10 758 248 760
@@ -282,14 +282,14 @@
 timestamp 1606234862
 transform 1 0 77 0 1 277
 box -57 69 141 457
-use sky130_fd_pr__nfet_01v8_raze6j  sky130_fd_pr__nfet_01v8_raze6j_0
-timestamp 1606234862
-transform 1 0 121 0 1 120
-box 0 0 1 1
 use sky130_fd_pr__nfet_01v8_p8bhg1  sky130_fd_pr__nfet_01v8_p8bhg1_0
 timestamp 1606234862
 transform 1 0 73 0 1 99
 box 0 0 1 1
+use sky130_fd_pr__nfet_01v8_raze6j  sky130_fd_pr__nfet_01v8_raze6j_0
+timestamp 1606234862
+transform 1 0 121 0 1 120
+box 0 0 1 1
 use sky130_fd_pr__pfet_01v8_b4l3oq  sky130_fd_pr__pfet_01v8_b4l3oq_0
 timestamp 1606237748
 transform 1 0 505 0 1 725
diff --git a/mag/chip-w-opamp.mag b/mag/chip-w-opamp.mag
index 1d9fcdf..a232e17 100644
--- a/mag/chip-w-opamp.mag
+++ b/mag/chip-w-opamp.mag
@@ -541,54 +541,54 @@
 rect 17076 -2341 17943 -2175
 rect 16905 -2346 17081 -2341
 rect 17871 -3734 17943 -2341
-use inverter  inverter_0
-timestamp 1606603647
-transform 1 0 -1166 0 1 2098
-box -126 -478 242 448
-use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_0
+use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_2
 timestamp 1606535953
-transform 1 0 694 0 1 622
-box -1114 -638 10633 4416
-use one-way  one-way_0
-timestamp 1606105257
-transform 1 0 -618 0 1 1859
-box -37 0 183 688
-use pass-gate-inv-2  pass-gate-inv-2_2
-timestamp 1606604430
-transform 1 0 17165 0 1 28
-box -669 -156 899 1683
-use pass-gate-inv-2  pass-gate-inv-2_3
-timestamp 1606604430
-transform 1 0 17165 0 1 -1786
-box -669 -156 899 1683
-use pass-gate-inv-2  pass-gate-inv-2_1
-timestamp 1606604430
-transform 1 0 17167 0 1 1858
-box -669 -156 899 1683
-use pass-gate-inv-2  pass-gate-inv-2_0
-timestamp 1606604430
-transform 1 0 17167 0 1 3624
-box -669 -156 899 1683
-use 2x2-array  2x2-array_0
-timestamp 1608024784
-transform 1 0 -23516 0 1 6758
-box -968 -870 3024 2996
-use inverter  inverter_1
-timestamp 1606603647
-transform 1 0 -1150 0 1 7804
-box -126 -478 242 448
-use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_1
-timestamp 1606535953
-transform 1 0 694 0 1 6448
+transform 1 0 694 0 1 12268
 box -1114 -638 10633 4416
 use one-way  one-way_1
 timestamp 1606105257
 transform 1 0 -543 0 1 7572
 box -37 0 183 688
-use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_2
+use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_1
 timestamp 1606535953
-transform 1 0 694 0 1 12268
+transform 1 0 694 0 1 6448
 box -1114 -638 10633 4416
+use inverter  inverter_1
+timestamp 1606603647
+transform 1 0 -1150 0 1 7804
+box -126 -478 242 448
+use 2x2-array  2x2-array_0
+timestamp 1608024784
+transform 1 0 -23516 0 1 6758
+box -968 -870 3024 2996
+use pass-gate-inv-2  pass-gate-inv-2_0
+timestamp 1606604430
+transform 1 0 17167 0 1 3624
+box -669 -156 899 1683
+use pass-gate-inv-2  pass-gate-inv-2_1
+timestamp 1606604430
+transform 1 0 17167 0 1 1858
+box -669 -156 899 1683
+use pass-gate-inv-2  pass-gate-inv-2_3
+timestamp 1606604430
+transform 1 0 17165 0 1 -1786
+box -669 -156 899 1683
+use pass-gate-inv-2  pass-gate-inv-2_2
+timestamp 1606604430
+transform 1 0 17165 0 1 28
+box -669 -156 899 1683
+use one-way  one-way_0
+timestamp 1606105257
+transform 1 0 -618 0 1 1859
+box -37 0 183 688
+use neuron-labeled-extended-opamp  neuron-labeled-extended-opamp_0
+timestamp 1606535953
+transform 1 0 694 0 1 622
+box -1114 -638 10633 4416
+use inverter  inverter_0
+timestamp 1606603647
+transform 1 0 -1166 0 1 2098
+box -126 -478 242 448
 << labels >>
 flabel metal2 -8082 23014 -8034 23104 0 FreeSans 1600 0 0 0 i_bias
 port 0 nsew
diff --git a/mag/inverter.mag b/mag/inverter.mag
index 9b92bed..840f189 100644
--- a/mag/inverter.mag
+++ b/mag/inverter.mag
@@ -72,14 +72,14 @@
 rect 128 -276 186 -234
 rect 226 -276 242 -234
 rect -32 -282 242 -276
-use sky130_fd_pr__nfet_01v8_8mr83b  sky130_fd_pr__nfet_01v8_8mr83b_0
-timestamp 1604286783
-transform 1 0 109 0 1 -130
-box -73 -68 73 68
 use sky130_fd_pr__pfet_01v8_ykwexw  sky130_fd_pr__pfet_01v8_ykwexw_0
 timestamp 1604286783
 transform 1 0 109 0 1 104
 box -109 -104 109 104
+use sky130_fd_pr__nfet_01v8_8mr83b  sky130_fd_pr__nfet_01v8_8mr83b_0
+timestamp 1604286783
+transform 1 0 109 0 1 -130
+box -73 -68 73 68
 << labels >>
 flabel locali -120 -4 -114 2 0 FreeSans 800 0 0 0 in
 port 0 nsew
diff --git a/mag/neuron-labeled-extended-opamp.mag b/mag/neuron-labeled-extended-opamp.mag
index 6d829d3..8d331ff 100644
--- a/mag/neuron-labeled-extended-opamp.mag
+++ b/mag/neuron-labeled-extended-opamp.mag
@@ -397,26 +397,26 @@
 rect 3926 178 4928 328
 rect -1011 141 4928 178
 rect 3878 138 4120 141
-use neuron-labeled  neuron-labeled_0
-timestamp 1604452313
-transform 1 0 364 0 1 678
-box -364 -678 3630 2294
-use pmos-diff-amp  pmos-diff-amp_0
+use pmos-diff-amp  pmos-diff-amp_3
 timestamp 1606516043
-transform 1 0 6001 0 1 1657
-box -231 -477 703 691
-use pmos-diff-amp  pmos-diff-amp_1
-timestamp 1606516043
-transform 1 0 7251 0 1 1657
+transform 1 0 9749 0 1 1657
 box -231 -477 703 691
 use pmos-diff-amp  pmos-diff-amp_2
 timestamp 1606516043
 transform 1 0 8477 0 1 1657
 box -231 -477 703 691
-use pmos-diff-amp  pmos-diff-amp_3
+use pmos-diff-amp  pmos-diff-amp_1
 timestamp 1606516043
-transform 1 0 9749 0 1 1657
+transform 1 0 7251 0 1 1657
 box -231 -477 703 691
+use pmos-diff-amp  pmos-diff-amp_0
+timestamp 1606516043
+transform 1 0 6001 0 1 1657
+box -231 -477 703 691
+use neuron-labeled  neuron-labeled_0
+timestamp 1604452313
+transform 1 0 364 0 1 678
+box -364 -678 3630 2294
 << labels >>
 flabel metal1 -598 3840 -548 3886 0 FreeSans 800 0 0 0 v
 port 0 nsew
diff --git a/mag/neuron-labeled.mag b/mag/neuron-labeled.mag
index 9e7e16a..1f6bc72 100644
--- a/mag/neuron-labeled.mag
+++ b/mag/neuron-labeled.mag
@@ -995,66 +995,66 @@
 rect 559 -319 1720 -285
 rect 3001 -392 3035 -169
 rect 257 -426 3035 -392
-use sky130_fd_pr__pfet_01v8_zt2j7p  M4
+use sky130_fd_pr__nfet_01v8_dlksd1  M10
 timestamp 1604306825
-transform 1 0 1065 0 1 1460
-box -134 -182 134 182
-use sky130_fd_pr__nfet_01v8_ckptud  M5
-timestamp 1604306825
-transform 1 0 1066 0 1 -64
+transform 1 0 2585 0 1 -155
 box -98 -68 98 68
-use sky130_fd_pr__nfet_01v8_h43ndc  M8
+use sky130_fd_pr__nfet_01v8_wpylm8  Cu
 timestamp 1604306825
-transform 0 1 703 -1 0 -148
-box -98 -68 98 68
-use sky130_fd_pr__nfet_01v8_s3efqo  M11
+transform 1 0 1617 0 1 661
+box -388 -426 388 426
+use sky130_fd_pr__nfet_01v8_tb02ql  Ca
 timestamp 1604306825
-transform 0 1 402 -1 0 -148
-box -98 -68 98 68
-use sky130_fd_pr__nfet_01v8_zgaw3c  Mk
+transform 1 0 2868 0 1 916
+box -618 -826 618 826
+use sky130_fd_pr__pfet_01v8_2vaynq  M6
 timestamp 1604306825
-transform 0 1 13 -1 0 -148
-box -98 -68 98 68
-use sky130_fd_pr__pfet_01v8_u061qr  M2
-timestamp 1604371879
-transform 0 1 335 -1 0 1537
-box -134 -142 134 142
-use sky130_fd_pr__nfet_01v8_lca7f7  M1
-timestamp 1604306825
-transform 0 1 728 -1 0 1448
-box -98 -68 98 68
-use sky130_fd_pr__nfet_01v8_9hqhhq  Cv
-timestamp 1604306825
-transform 1 0 378 0 1 688
-box -498 -526 498 526
-use sky130_fd_pr__pfet_01v8_h2n75u  M3
-timestamp 1604306825
-transform 0 1 -8 -1 0 1537
-box -134 -142 134 142
-use sky130_fd_pr__pfet_01v8_6z4qh8  M9
-timestamp 1604306825
-transform 1 0 1863 0 1 1432
+transform 1 0 1454 0 1 1432
 box -134 -142 134 142
 use sky130_fd_pr__nfet_01v8_9i6r5e  M7
 timestamp 1604306825
 transform 1 0 1414 0 1 -65
 box -98 -68 98 68
-use sky130_fd_pr__pfet_01v8_2vaynq  M6
+use sky130_fd_pr__pfet_01v8_6z4qh8  M9
 timestamp 1604306825
-transform 1 0 1454 0 1 1432
+transform 1 0 1863 0 1 1432
 box -134 -142 134 142
-use sky130_fd_pr__nfet_01v8_tb02ql  Ca
+use sky130_fd_pr__pfet_01v8_h2n75u  M3
 timestamp 1604306825
-transform 1 0 2868 0 1 916
-box -618 -826 618 826
-use sky130_fd_pr__nfet_01v8_wpylm8  Cu
+transform 0 1 -8 -1 0 1537
+box -134 -142 134 142
+use sky130_fd_pr__nfet_01v8_9hqhhq  Cv
 timestamp 1604306825
-transform 1 0 1617 0 1 661
-box -388 -426 388 426
-use sky130_fd_pr__nfet_01v8_dlksd1  M10
+transform 1 0 378 0 1 688
+box -498 -526 498 526
+use sky130_fd_pr__nfet_01v8_lca7f7  M1
 timestamp 1604306825
-transform 1 0 2585 0 1 -155
+transform 0 1 728 -1 0 1448
 box -98 -68 98 68
+use sky130_fd_pr__pfet_01v8_u061qr  M2
+timestamp 1604371879
+transform 0 1 335 -1 0 1537
+box -134 -142 134 142
+use sky130_fd_pr__nfet_01v8_zgaw3c  Mk
+timestamp 1604306825
+transform 0 1 13 -1 0 -148
+box -98 -68 98 68
+use sky130_fd_pr__nfet_01v8_s3efqo  M11
+timestamp 1604306825
+transform 0 1 402 -1 0 -148
+box -98 -68 98 68
+use sky130_fd_pr__nfet_01v8_h43ndc  M8
+timestamp 1604306825
+transform 0 1 703 -1 0 -148
+box -98 -68 98 68
+use sky130_fd_pr__nfet_01v8_ckptud  M5
+timestamp 1604306825
+transform 1 0 1066 0 1 -64
+box -98 -68 98 68
+use sky130_fd_pr__pfet_01v8_zt2j7p  M4
+timestamp 1604306825
+transform 1 0 1065 0 1 1460
+box -134 -182 134 182
 << labels >>
 flabel metal1 -210 2026 -128 2114 0 FreeSans 240 0 0 0 VPWR
 port 0 nsew
diff --git a/mag/one-way.mag b/mag/one-way.mag
index 38ebc4b..ad03bc7 100644
--- a/mag/one-way.mag
+++ b/mag/one-way.mag
@@ -20,12 +20,12 @@
 rect 12 168 46 314
 rect 100 166 134 312
 rect 12 16 46 162
-use sky130_fd_pr__nfet_01v8_63vi9a  sky130_fd_pr__nfet_01v8_63vi9a_0
-timestamp 1606105257
-transform 1 0 73 0 1 99
-box -73 -99 73 99
 use sky130_fd_pr__pfet_01v8_owy61o  sky130_fd_pr__pfet_01v8_owy61o_0
 timestamp 1606105257
 transform 1 0 73 0 1 371
 box -109 -123 109 123
+use sky130_fd_pr__nfet_01v8_63vi9a  sky130_fd_pr__nfet_01v8_63vi9a_0
+timestamp 1606105257
+transform 1 0 73 0 1 99
+box -73 -99 73 99
 << end >>
diff --git a/mag/pass-gate-inv-2.mag b/mag/pass-gate-inv-2.mag
index a612f75..a0bfdc9 100644
--- a/mag/pass-gate-inv-2.mag
+++ b/mag/pass-gate-inv-2.mag
@@ -60,18 +60,18 @@
 rect 706 754 778 851
 rect 624 682 778 754
 rect 706 -156 778 682
-use inverter  inverter_0
-timestamp 1606603647
-transform 1 0 -332 0 1 446
-box -126 -478 242 448
-use pass-gate  pass-gate_1
-timestamp 1605929851
-transform 1 0 210 0 -1 1385
-box -210 -218 503 586
 use pass-gate  pass-gate_0
 timestamp 1605929851
 transform 1 0 210 0 1 218
 box -210 -218 503 586
+use pass-gate  pass-gate_1
+timestamp 1605929851
+transform 1 0 210 0 -1 1385
+box -210 -218 503 586
+use inverter  inverter_0
+timestamp 1606603647
+transform 1 0 -332 0 1 446
+box -126 -478 242 448
 << labels >>
 flabel metal1 -652 344 -640 362 0 FreeSans 800 0 0 0 in_1
 port 0 nsew
diff --git a/mag/pass-gate.mag b/mag/pass-gate.mag
index 6be09f7..f15345b 100644
--- a/mag/pass-gate.mag
+++ b/mag/pass-gate.mag
@@ -90,14 +90,14 @@
 rect 411 464 503 534
 rect 411 458 422 464
 rect 326 446 422 458
-use sky130_fd_pr__pfet_01v8_pa2hmj  sky130_fd_pr__pfet_01v8_pa2hmj_0
-timestamp 1605923309
-transform 0 1 128 -1 0 327
-box -109 -180 109 180
 use sky130_fd_pr__nfet_01v8_5mkfxl  sky130_fd_pr__nfet_01v8_5mkfxl_0
 timestamp 1605923309
 transform 0 1 130 -1 0 73
 box -73 -130 73 130
+use sky130_fd_pr__pfet_01v8_pa2hmj  sky130_fd_pr__pfet_01v8_pa2hmj_0
+timestamp 1605923309
+transform 0 1 128 -1 0 327
+box -109 -180 109 180
 << labels >>
 flabel locali -201 61 -189 79 0 FreeSans 640 0 0 0 clk
 port 0 nsew
diff --git a/mag/pmos-diff-amp.mag b/mag/pmos-diff-amp.mag
index 48aae57..d4bea91 100644
--- a/mag/pmos-diff-amp.mag
+++ b/mag/pmos-diff-amp.mag
@@ -78,30 +78,30 @@
 rect 306 -419 424 -377
 rect 467 -419 703 -377
 rect -215 -477 703 -419
-use sky130_fd_pr__pfet_01v8_4pknhj  sky130_fd_pr__pfet_01v8_4pknhj_1
-timestamp 1606512719
-transform 0 1 392 -1 0 134
-box -134 -148 134 114
-use sky130_fd_pr__pfet_01v8_4pknhj  sky130_fd_pr__pfet_01v8_4pknhj_0
-timestamp 1606512719
-transform 0 -1 110 1 0 134
-box -134 -148 134 114
-use sky130_fd_pr__nfet_01v8_r0atdz  sky130_fd_pr__nfet_01v8_r0atdz_1
-timestamp 1606512719
-transform 0 -1 325 1 0 -210
-box -98 -107 98 107
-use sky130_fd_pr__nfet_01v8_r0atdz  sky130_fd_pr__nfet_01v8_r0atdz_0
-timestamp 1606512719
-transform 0 1 177 -1 0 -210
-box -98 -107 98 107
-use sky130_fd_pr__pfet_01v8_4ujh9u  sky130_fd_pr__pfet_01v8_4ujh9u_0
-timestamp 1606515282
-transform 0 -1 340 1 0 395
-box -144 -198 144 164
 use sky130_fd_pr__pfet_01v8_4ujh9u  sky130_fd_pr__pfet_01v8_4ujh9u_1
 timestamp 1606515282
 transform 0 1 84 -1 0 395
 box -144 -198 144 164
+use sky130_fd_pr__pfet_01v8_4ujh9u  sky130_fd_pr__pfet_01v8_4ujh9u_0
+timestamp 1606515282
+transform 0 -1 340 1 0 395
+box -144 -198 144 164
+use sky130_fd_pr__nfet_01v8_r0atdz  sky130_fd_pr__nfet_01v8_r0atdz_0
+timestamp 1606512719
+transform 0 1 177 -1 0 -210
+box -98 -107 98 107
+use sky130_fd_pr__nfet_01v8_r0atdz  sky130_fd_pr__nfet_01v8_r0atdz_1
+timestamp 1606512719
+transform 0 -1 325 1 0 -210
+box -98 -107 98 107
+use sky130_fd_pr__pfet_01v8_4pknhj  sky130_fd_pr__pfet_01v8_4pknhj_0
+timestamp 1606512719
+transform 0 -1 110 1 0 134
+box -134 -148 134 114
+use sky130_fd_pr__pfet_01v8_4pknhj  sky130_fd_pr__pfet_01v8_4pknhj_1
+timestamp 1606512719
+transform 0 1 392 -1 0 134
+box -134 -148 134 114
 << labels >>
 flabel metal1 -200 128 -186 138 0 FreeSans 800 0 0 0 in_1
 port 0 nsew
diff --git a/mag/user_project_wrapper.mag b/mag/user_project_wrapper.mag
index 8f8ab5f..c74c0ab 100644
--- a/mag/user_project_wrapper.mag
+++ b/mag/user_project_wrapper.mag
@@ -1,7 +1,16 @@
 magic
 tech sky130A
 magscale 1 2
-timestamp 1608025504
+timestamp 1608047394
+<< metal1 >>
+rect 147840 212278 148036 212284
+rect 147840 212276 148116 212278
+rect 147838 212220 147848 212276
+rect 147922 212236 148116 212276
+rect 147922 212220 148036 212236
+rect 147840 212212 148036 212220
+<< via1 >>
+rect 147848 212220 147922 212276
 << metal2 >>
 rect 8086 703520 8198 704960
 rect 24278 703520 24390 704960
@@ -79,6 +88,11 @@
 rect 145050 212220 145056 212278
 rect 145118 212220 145124 212278
 rect 145050 212192 145124 212220
+rect 147734 212276 147930 212284
+rect 147734 212220 147744 212276
+rect 147832 212220 147848 212276
+rect 147922 212220 147930 212276
+rect 147734 212212 147930 212220
 rect 151427 211264 151601 211294
 rect 149934 211166 150062 211228
 rect 151427 211178 151448 211264
@@ -865,6 +879,7 @@
 rect 301608 439792 301814 440000
 rect 257282 216638 257590 217032
 rect 145056 212220 145118 212278
+rect 147744 212220 147832 212276
 rect 149958 211054 150038 211166
 rect 151448 211146 151566 211264
 rect 149942 27862 150054 27964
@@ -1150,10 +1165,13 @@
 rect 258504 216590 258618 216996
 rect 583520 216868 584960 217108
 rect 257168 216512 258618 216590
-rect 145050 212278 147750 212286
+rect 145050 212284 147750 212286
+rect 145050 212278 147840 212284
 rect 145050 212220 145056 212278
-rect 145118 212220 147750 212278
-rect 145050 212212 147750 212220
+rect 145118 212276 147840 212278
+rect 145118 212220 147744 212276
+rect 147832 212220 147840 212276
+rect 145050 212212 147840 212220
 rect 149934 211166 150064 211381
 rect 149934 211054 149958 211166
 rect 150038 211054 150064 211166
@@ -10498,14 +10516,14 @@
 rect 533604 -7506 534204 -7504
 rect 569604 -7506 570204 -7504
 rect 591900 -7506 592500 -7504
+use 10good  10good_0
+timestamp 1608047394
+transform -1 0 226924 0 -1 258492
+box -738 -22 79994 49740
 use chip-w-opamp  chip-w-opamp_0
 timestamp 1608024904
 transform 1 0 434984 0 1 528374
 box -26627 -8570 19927 24418
-use 10good  10good_0
-timestamp 1608006120
-transform -1 0 226924 0 -1 258492
-box -738 -22 79994 49740
 << labels >>
 rlabel metal3 s 583520 5796 584960 6036 6 analog_io[0]
 port 0 nsew default bidirectional