diff --git a/doitcode/frame.py b/doitcode/frame.py
index 8b06584..9bf5d39 100644
--- a/doitcode/frame.py
+++ b/doitcode/frame.py
@@ -83,8 +83,14 @@
     "io_analog[2]": _geo.Rect(left=2326.97, bottom=3511.50, right=2351.97, top=3524.00),
     "io_analog[3]": _geo.Rect(left=2066.97, bottom=3511.50, right=2091.97, top=3524.00),
     "io_analog[4]": _geo.Rect(left=1594.97, bottom=3511.50, right=1619.97, top=3524.00),
+    "io_clamp_low[0]": _geo.Rect(left=1621.47, bottom=3511.50, right=1632.47, top=3524.00),
+    "io_clamp_high[0]": _geo.Rect(left=1633.97, bottom=3511.50, right=1644.97, top=3524.00),
     "io_analog[5]": _geo.Rect(left=1086.47, bottom=3511.50, right=1111.47, top=3524.00),
+    "io_clamp_low[1]": _geo.Rect(left=1112.97, bottom=3511.50, right=1123.97, top=3524.00),
+    "io_clamp_high[1]": _geo.Rect(left=1125.47, bottom=3511.50, right=1136.47, top=3524.00),
     "io_analog[6]": _geo.Rect(left=827.97, bottom=3511.50, right=852.97, top=3524.00),
+    "io_clamp_low[2]": _geo.Rect(left=854.47, bottom=3511.50, right=865.47, top=3524.00),
+    "io_clamp_high[2]": _geo.Rect(left=866.97, bottom=3511.50, right=877.97, top=3524.00),
     "io_analog[7]": _geo.Rect(left=600.97, bottom=3511.50, right=625.97, top=3524.00),
     "io_analog[8]": _geo.Rect(left=340.97, bottom=3511.50, right=365.97, top=3524.00),
     "io_analog[9]": _geo.Rect(left=80.97, bottom=3511.50, right=105.97, top=3524.00),
diff --git a/doitcode/sram.py b/doitcode/sram.py
index 86edfb7..b0ddb51 100644
--- a/doitcode/sram.py
+++ b/doitcode/sram.py
@@ -84,8 +84,8 @@
     _io_spec(sram_signal="d[1]", io_type="io_in", io_number=26),
     _io_spec(sram_signal="d[0]", io_type="io_in", io_number=25),
     _io_spec(sram_signal="q[0]", io_type="io_out", io_number=24),
-    _io_spec(sram_signal="vss", io_type="io_analog", io_number=4),
-    _io_spec(sram_signal="vdd", io_type="io_analog", io_number=5),
+    _io_spec(sram_signal="vdd", io_type="io_analog", io_number=4),
+    _io_spec(sram_signal="vss", io_type="io_analog", io_number=5),
 )
 io_sig2spec = {
     spec.sram_signal: spec
@@ -271,10 +271,10 @@
         dvss_rightrowm1bb = lay.bounds(mask=m1.mask)
 
         assert dvss_rightrowm1bb.center.x < dvss_bb.center.x, "Internal error"
-        w = dvss_rightrowm1bb.width
-        h = dvss_bb.height
-        x_via = dvss_rightrowm1bb.center.x
-        y_via = dvss_bb.center.y
+        w = tech.on_grid(dvss_rightrowm1bb.width, mult=2, rounding="floor")
+        h = tech.on_grid(dvss_bb.height, mult=2, rounding="floor")
+        x_via = tech.on_grid(dvss_rightrowm1bb.center.x)
+        y_via = tech.on_grid(dvss_bb.center.y)
         layouter.add_wire(
             net=dvss, wire=via, x=x_via, y=y_via,
             bottom_width=w, bottom_height=h, top_width=w, top_height=h,
@@ -301,10 +301,10 @@
         dvdd_rightrowm1bb = lay.bounds(mask=m1.mask)
 
         assert dvdd_rightrowm1bb.center.x < dvdd_bb.center.x, "Internal error"
-        w = dvdd_rightrowm1bb.width
-        h = dvdd_bb.height
-        x_via = dvdd_rightrowm1bb.center.x
-        y_via = dvdd_bb.center.y
+        w = tech.on_grid(dvdd_rightrowm1bb.width, mult=2, rounding="floor")
+        h = tech.on_grid(dvdd_bb.height, mult=2, rounding="floor")
+        x_via = tech.on_grid(dvdd_rightrowm1bb.center.x)
+        y_via = tech.on_grid(dvdd_bb.center.y)
         layouter.add_wire(
             net=dvdd, wire=via, x=x_via, y=y_via,
             bottom_width=w, bottom_height=h, top_width=w, top_height=h,
@@ -428,41 +428,6 @@
         bbs = tuple(ms.shape.bounds for ms in sram_lay.filter_polygons(
             net=net, mask=m2pin.mask, depth=1, split=True,
         ))
-        right = min(bb.right for bb in bbs)
-        top = max(bb.top for bb in bbs)
-        bottom = min(bb.bottom for bb in bbs)
-        w = 10.0
-        x_via2 = right - w/2.0
-        left = right - w
-
-        for bb in bbs:
-            y_via2 = bb.center.y
-            layouter.add_wire(
-                net=net, wire=via2, x=x_via2, y=y_via2,
-                bottom_width=w, bottom_enclosure="wide",
-                top_width=w, top_enclosure="wide",
-            )
-
-        shape = _geo.Rect(
-            left=left, bottom=bottom, right=right, top=(top + 20.0),
-        )
-        layouter.add_wire(net=net, wire=m3, shape=shape)
-        shape = _geo.Rect(
-            left=left, bottom=(top + 10.0), right=toppin_bb.right, top=(top+20.0),
-        )
-        layouter.add_wire(net=net, wire=m3, shape=shape)
-        shape = _geo.Rect.from_rect(rect=toppin_bb, bottom=(top + 10.0))
-        layouter.add_wire(net=net, wire=m3, shape=shape)
-        layouter.add_wire(net=net, wire=m3, pin=m3pin, shape=toppin_bb)
-
-        # vdd
-        spec = io_sig2spec["vdd"]
-        sram_port = sram.ports[spec.sram_signal]
-        net = ckt.new_net(name=spec.toppin_name, external=True, childports=sram_port)
-        toppin_bb = _frm.toppins[spec.toppin_name]
-        bbs = tuple(ms.shape.bounds for ms in sram_lay.filter_polygons(
-            net=net, mask=m2pin.mask, depth=1, split=True,
-        ))
         left = max(bb.left for bb in bbs)
         top = max(bb.top for bb in bbs)
         bottom = min(bb.bottom for bb in bbs)
@@ -490,6 +455,57 @@
         layouter.add_wire(net=net, wire=m3, shape=shape)
         layouter.add_wire(net=net, wire=m3, pin=m3pin, shape=toppin_bb)
 
+        # io_clamp_low
+        clamp_bb = _frm.toppins["io_clamp_low[1]"]
+        shape = _geo.Rect.from_rect(rect=clamp_bb, bottom=(top + 10))
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+
+        # vdd
+        spec = io_sig2spec["vdd"]
+        sram_port = sram.ports[spec.sram_signal]
+        net = ckt.new_net(name=spec.toppin_name, external=True, childports=sram_port)
+        toppin_bb = _frm.toppins[spec.toppin_name]
+        bbs = tuple(ms.shape.bounds for ms in sram_lay.filter_polygons(
+            net=net, mask=m2pin.mask, depth=1, split=True,
+        ))
+        right = min(bb.right for bb in bbs)
+        top = max(bb.top for bb in bbs)
+        bottom = min(bb.bottom for bb in bbs)
+        w = 10.0
+        x_via2 = right - w/2.0
+        left = right - w
+
+        for bb in bbs:
+            y_via2 = bb.center.y
+            layouter.add_wire(
+                net=net, wire=via2, x=x_via2, y=y_via2,
+                bottom_width=w, bottom_enclosure="wide",
+                top_width=w, top_enclosure="wide",
+            )
+
+        shape = _geo.Rect(
+            left=left, bottom=bottom, right=right, top=(top + 20.0),
+        )
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+        shape = _geo.Rect(
+            left=left, bottom=(top + 10.0), right=toppin_bb.right, top=(top + 20.0),
+        )
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+        shape = _geo.Rect.from_rect(rect=toppin_bb, bottom=(top + 10.0))
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+        layouter.add_wire(net=net, wire=m3, pin=m3pin, shape=toppin_bb)
+
+        # io_clamp_high
+        clamp_bb = _frm.toppins["io_clamp_high[1]"]
+        w = clamp_bb.width
+        shape = _geo.Rect.from_rect(rect=clamp_bb, bottom=(clamp_bb.bottom - 2*w))
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+        shape = _geo.Rect(
+            left=clamp_bb.left, bottom=(clamp_bb.bottom - 2*w),
+            right=toppin_bb.right, top=(clamp_bb.bottom - w)
+        )
+        layouter.add_wire(net=net, wire=m3, shape=shape)
+
         # connect the input signals
         a_col = 0
         for sig_name in (
@@ -560,7 +576,10 @@
 
             # place buf
             _buf_rotilipinbb = rot*_buf_ilipinbb
-            y_buf = toppin_bb.top - _buf_rotilipinbb.bottom
+            y_buf = tech.on_grid(
+                toppin_bb.top - _buf_rotilipinbb.bottom,
+                mult=2,
+            )
             buf_lay = layouter.place(buf, x=x_row, y=y_buf, rotation=rot)
             pinbuf_lipinbb = buf_lay.bounds(mask=lipin.mask, net=pin_net, depth=1)
             sigbuf_lipinbb = buf_lay.bounds(mask=lipin.mask, net=sig_net, depth=1)
@@ -596,21 +615,20 @@
             oneoeb_lipinbb = one_lay.bounds(mask=lipin.mask, net=oeb_net, depth=1)
 
             # connect pin_net
-            w = pinbuf_lipinbb.width
-            x_via = pinbuf_lipinbb.center.x
-            y_via = pinbuf_lipinbb.center.y
+            w = tech.on_grid(pinbuf_lipinbb.width, mult=2, rounding="floor")
+            o_via = tech.on_grid(pinbuf_lipinbb.center)
             layouter.add_wire(
-                net=pin_net, wire=mcon, x=x_via, y=y_via,
+                net=pin_net, wire=mcon, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             layouter.add_wire(
-                net=pin_net, wire=via, x=x_via, y=y_via,
+                net=pin_net, wire=via, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via2_lay = layouter.add_wire(
-                net=pin_net, wire=via2, x=x_via, y=y_via,
+                net=pin_net, wire=via2, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
@@ -624,28 +642,27 @@
             layouter.add_wire(net=pin_net, wire=m3, pin=m3pin, shape=toppin_bb)
 
             # connect sig_net
-            w = sigbuf_lipinbb.width
-            x_via = sigbuf_lipinbb.center.x
-            y_via = sigbuf_lipinbb.center.y
+            w = tech.on_grid(sigbuf_lipinbb.width, mult=2, rounding="floor")
+            o_via = tech.on_grid(sigbuf_lipinbb.center)
             layouter.add_wire(
-                net=sig_net, wire=mcon, x=x_via, y=y_via,
+                net=sig_net, wire=mcon, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             layouter.add_wire(
-                net=sig_net, wire=via, x=x_via, y=y_via,
+                net=sig_net, wire=via, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via2_lay = layouter.add_wire(
-                net=sig_net, wire=via2, x=x_via, y=y_via,
+                net=sig_net, wire=via2, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via2_m3bb1 = via2_lay.bounds(mask=m3.mask)
 
             _via2_lay = layouter.wire_layout(
-                net=sig_net, wire=via2, rows=6, columns=6,
+                net=sig_net, wire=via2, rows=6, columns=3,
             )
             _via2_m2bb = _via2_lay.bounds(mask=m2.mask)
             if is_leftrow:
@@ -666,24 +683,23 @@
             layouter.add_wire(net=sig_net, wire=m3, shape=shape)
 
             # connect oeb_net
-            w = oneoeb_lipinbb.width
-            x_via = oneoeb_lipinbb.center.x
-            y_via = oneoeb_lipinbb.center.y
+            w = tech.on_grid(oneoeb_lipinbb.width, mult=2, rounding="floor")
+            o_via = tech.on_grid(oneoeb_lipinbb.center)
             layouter.add_wire(
-                net=oeb_net, wire=mcon, x=x_via, y=y_via,
+                net=oeb_net, wire=mcon, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via_lay = layouter.add_wire(
-                net=oeb_net, wire=via, x=x_via, y=y_via,
+                net=oeb_net, wire=via, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via_m2bb = via_lay.bounds(mask=m2.mask)
 
-            y_via2 = oeb_bb.center.y
+            o_via2 = _geo.Point.from_point(point=o_via, y=oeb_bb.center.y)
             via2_lay = layouter.add_wire(
-                net=oeb_net, wire=via2, x=x_via, y=y_via2,
+                net=oeb_net, wire=via2, origin=o_via2,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
@@ -704,21 +720,20 @@
             layouter.add_wire(net=oeb_net, wire=m3, pin=m3pin, shape=oeb_bb)
 
             # connect out_net
-            w = zeroout_lipinbb.width
-            x_via = zeroout_lipinbb.center.x
-            y_via = zeroout_lipinbb.center.y
+            w = tech.on_grid(zeroout_lipinbb.width, mult=2, rounding="floor")
+            o_via = tech.on_grid(zeroout_lipinbb.center)
             layouter.add_wire(
-                net=out_net, wire=mcon, x=x_via, y=y_via,
+                net=out_net, wire=mcon, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             layouter.add_wire(
-                net=out_net, wire=via, x=x_via, y=y_via,
+                net=out_net, wire=via, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via2_lay = layouter.add_wire(
-                net=out_net, wire=via2, x=x_via, y=y_via,
+                net=out_net, wire=via2, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
@@ -776,7 +791,10 @@
             rot = rot_midrow
             y_row = y_midrow
             _buf_rotilipinbb = rot*_buf_ilipinbb
-            x_buf = sram_m2pinbb.right - _buf_rotilipinbb.left
+            x_buf = tech.on_grid(
+                sram_m2pinbb.right - _buf_rotilipinbb.left,
+                mult=2, rounding="ceiling",
+            )
             buf_lay = layouter.place(buf, x=x_buf, y=y_row, rotation=rot)
             pinbuf_lipinbb = buf_lay.bounds(mask=lipin.mask, net=pin_net, depth=1)
             sigbuf_lipinbb = buf_lay.bounds(mask=lipin.mask, net=sig_net, depth=1)
@@ -799,16 +817,15 @@
             layouter.place(tie, x=x_row, y=y_tie, rotation=rot)
 
             # connect sig_net
-            h = sigbuf_lipinbb.height
-            x_via = sigbuf_lipinbb.center.x
-            y_via = sigbuf_lipinbb.center.y
+            h = tech.on_grid(sigbuf_lipinbb.height, mult=2, rounding="floor")
+            o_via = tech.on_grid(sigbuf_lipinbb.center)
             layouter.add_wire(
-                net=sig_net, wire=mcon, x=x_via, y=y_via,
+                net=sig_net, wire=mcon, origin=o_via,
                 bottom_height=h, bottom_enclosure="tall",
                 top_height=h, top_enclosure="tall",
             )
             via_lay = layouter.add_wire(
-                net=sig_net, wire=via, x=x_via, y=y_via,
+                net=sig_net, wire=via, origin=o_via,
                 bottom_height=h, bottom_enclosure="tall",
                 top_height=h, top_enclosure="tall",
             )
@@ -818,24 +835,23 @@
             layouter.add_wire(net=sig_net, wire=m2, shape=shape)
 
             # connect pin_net
-            h = pinbuf_lipinbb.height
-            x_via = pinbuf_lipinbb.center.x
-            y_via = pinbuf_lipinbb.center.y
+            h = tech.on_grid(pinbuf_lipinbb.height, mult=2, rounding="floor")
+            o_via = tech.on_grid(pinbuf_lipinbb.center)
 
             layouter.add_wire(
-                net=sig_net, wire=mcon, x=x_via, y=y_via,
+                net=sig_net, wire=mcon, origin=o_via,
                 bottom_height=h, bottom_enclosure="tall",
                 top_height=h, top_enclosure="tall",
             )
             via_lay = layouter.add_wire(
-                net=sig_net, wire=via, x=x_via, y=y_via,
+                net=sig_net, wire=via, origin=o_via,
                 bottom_height=h, bottom_enclosure="tall",
                 top_height=h, top_enclosure="tall",
             )
             via_m2bb = via_lay.bounds(mask=m2.mask)
 
             _via2_lay = layouter.wire_layout(
-                net=pin_net, wire=via2, rows=6, columns=6,
+                net=pin_net, wire=via2, rows=6, columns=3,
             )
             _via2_m2bb = _via2_lay.bounds(mask=m2.mask)
             if is_leftrow:
@@ -857,21 +873,20 @@
             layouter.add_wire(net=pin_net, wire=m3, pin=m3pin, shape=toppin_bb)
 
             # connect oeb_net
-            w = zero_zerolipinbb.width
-            x_via = zero_zerolipinbb.center.x
-            y_via = zero_zerolipinbb.center.y
+            w = tech.on_grid(zero_zerolipinbb.width, mult=2, rounding="floor")
+            o_via = tech.on_grid(zero_zerolipinbb.center)
             layouter.add_wire(
-                net=oeb_net, wire=mcon, x=x_via, y=y_via,
+                net=oeb_net, wire=mcon, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             layouter.add_wire(
-                net=oeb_net, wire=via, x=x_via, y=y_via,
+                net=oeb_net, wire=via, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
             via2_lay = layouter.add_wire(
-                net=oeb_net, wire=via2, x=x_via, y=y_via,
+                net=oeb_net, wire=via2, origin=o_via,
                 bottom_width=w, bottom_enclosure="wide",
                 top_width=w, top_enclosure="wide",
             )
diff --git a/gds/user_analog_project_wrapper.gds.gz b/gds/user_analog_project_wrapper.gds.gz
index 9d084bf..e6b360b 100644
--- a/gds/user_analog_project_wrapper.gds.gz
+++ b/gds/user_analog_project_wrapper.gds.gz
Binary files differ
