diff --git a/VERSION b/VERSION
index 8d88d69..a0b3453 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.0.404
+1.0.405
diff --git a/sky130/custom/sky130_fd_io/gds/sky130_ef_io__analog.gds b/sky130/custom/sky130_fd_io/gds/sky130_ef_io__analog.gds
index 6e2a043..ff79b8d 100644
--- a/sky130/custom/sky130_fd_io/gds/sky130_ef_io__analog.gds
+++ b/sky130/custom/sky130_fd_io/gds/sky130_ef_io__analog.gds
Binary files differ
diff --git a/sky130/custom/sky130_fd_io/lef/sky130_ef_io__analog_noesd_pad.lef b/sky130/custom/sky130_fd_io/lef/sky130_ef_io__analog_noesd_pad.lef
new file mode 100644
index 0000000..bd69a92
--- /dev/null
+++ b/sky130/custom/sky130_fd_io/lef/sky130_ef_io__analog_noesd_pad.lef
@@ -0,0 +1,345 @@
+VERSION 5.7 ;
+  NOWIREEXTENSIONATPIN ON ;
+  DIVIDERCHAR "/" ;
+  BUSBITCHARS "[]" ;
+MACRO sky130_ef_io__analog_noesd_pad
+  CLASS PAD ;
+  FOREIGN sky130_ef_io__analog_noesd_pad ;
+  ORIGIN 0.000 0.000 ;
+  SIZE 75.000 BY 200.000 ;
+  PIN P_CORE
+    PORT
+      LAYER met3 ;
+        RECT 24.720 0.000 49.720 82.350 ;
+    END
+  END P_CORE
+  PIN VSSA
+    PORT
+      LAYER met4 ;
+        RECT 0.000 36.735 1.270 40.185 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.000 56.405 75.000 56.735 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.000 47.735 75.000 48.065 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.000 51.645 1.270 52.825 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 36.735 75.000 40.185 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 56.405 75.000 56.735 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 47.735 75.000 48.065 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 51.645 75.000 52.825 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 36.840 75.000 40.085 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 47.735 1.270 56.735 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 36.840 1.270 40.085 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 47.735 75.000 56.735 ;
+    END
+  END VSSA
+  PIN VSSD
+    PORT
+      LAYER met4 ;
+        RECT 0.000 41.585 1.270 46.235 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 41.585 75.000 46.235 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 41.685 1.270 46.135 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 41.685 75.000 46.135 ;
+    END
+  END VSSD
+  PIN AMUXBUS_B
+    PORT
+      LAYER met4 ;
+        RECT 0.000 48.365 75.000 51.345 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 48.365 75.000 51.345 ;
+    END
+  END AMUXBUS_B
+  PIN AMUXBUS_A
+    PORT
+      LAYER met4 ;
+        RECT 0.000 53.125 75.000 56.105 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 53.125 75.000 56.105 ;
+    END
+  END AMUXBUS_A
+  PIN VDDIO_Q
+    PORT
+      LAYER met4 ;
+        RECT 0.000 64.085 1.270 68.535 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 64.085 75.000 68.535 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 64.185 75.000 68.435 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 64.185 1.270 68.435 ;
+    END
+  END VDDIO_Q
+  PIN VDDIO
+    PORT
+      LAYER met4 ;
+        RECT 0.000 70.035 1.270 95.000 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.000 19.785 1.270 24.435 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 70.035 75.000 95.000 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 19.785 75.000 24.435 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 19.885 1.270 24.335 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 70.035 1.270 94.985 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 19.885 75.000 24.335 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 70.035 75.000 94.985 ;
+    END
+  END VDDIO
+  PIN VSWITCH
+    PORT
+      LAYER met4 ;
+        RECT 0.000 31.885 1.270 35.335 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 31.885 75.000 35.335 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 31.985 75.000 35.235 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 31.985 1.270 35.235 ;
+    END
+  END VSWITCH
+  PIN VSSIO
+    PORT
+      LAYER met4 ;
+        RECT 0.000 25.835 1.270 30.485 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 25.835 75.000 30.485 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.000 175.785 1.270 200.000 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 0.630 191.600 0.640 191.610 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 175.785 75.000 200.000 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 74.360 191.600 74.370 191.610 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 25.935 75.000 30.385 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 175.785 75.000 200.000 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 175.785 1.270 200.000 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 25.935 1.270 30.385 ;
+    END
+  END VSSIO
+  PIN VDDA
+    PORT
+      LAYER met4 ;
+        RECT 0.000 14.935 0.965 18.385 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 74.035 14.935 75.000 18.385 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 15.035 0.965 18.285 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 74.035 15.035 75.000 18.285 ;
+    END
+  END VDDA
+  PIN VCCD
+    PORT
+      LAYER met4 ;
+        RECT 0.000 8.885 1.270 13.535 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 8.885 75.000 13.535 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 8.985 1.270 13.435 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 8.985 75.000 13.435 ;
+    END
+  END VCCD
+  PIN VCCHIB
+    PORT
+      LAYER met4 ;
+        RECT 0.000 2.035 1.270 7.485 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 2.035 75.000 7.485 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 2.135 1.270 7.385 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 2.135 75.000 7.385 ;
+    END
+  END VCCHIB
+  PIN VSSIO_Q
+    PORT
+      LAYER met4 ;
+        RECT 0.000 58.235 1.270 62.685 ;
+    END
+    PORT
+      LAYER met4 ;
+        RECT 73.730 58.235 75.000 62.685 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 73.730 58.335 75.000 62.585 ;
+    END
+    PORT
+      LAYER met5 ;
+        RECT 0.000 58.335 1.270 62.585 ;
+    END
+  END VSSIO_Q
+  PIN P_PAD
+    PORT
+      LAYER met5 ;
+        RECT 7.050 105.120 67.890 165.945 ;
+    END
+  END P_PAD
+  OBS
+      LAYER li1 ;
+        RECT 2.905 48.265 72.045 181.100 ;
+      LAYER met1 ;
+        RECT 4.250 46.255 70.440 48.855 ;
+      LAYER met2 ;
+        RECT 4.250 46.255 70.440 48.855 ;
+      LAYER met3 ;
+        RECT 0.455 82.750 74.250 173.315 ;
+        RECT 0.455 14.905 24.320 82.750 ;
+        RECT 50.120 14.905 74.250 82.750 ;
+      LAYER met4 ;
+        RECT 1.670 175.385 73.330 200.000 ;
+        RECT 0.965 95.400 74.035 175.385 ;
+        RECT 1.670 69.635 73.330 95.400 ;
+        RECT 0.965 68.935 74.035 69.635 ;
+        RECT 1.670 63.685 73.330 68.935 ;
+        RECT 0.965 63.085 74.035 63.685 ;
+        RECT 1.670 57.835 73.330 63.085 ;
+        RECT 0.965 57.135 74.035 57.835 ;
+        RECT 1.670 51.745 73.330 52.725 ;
+        RECT 0.965 46.635 74.035 47.335 ;
+        RECT 1.670 41.185 73.330 46.635 ;
+        RECT 0.965 40.585 74.035 41.185 ;
+        RECT 1.670 36.335 73.330 40.585 ;
+        RECT 0.965 35.735 74.035 36.335 ;
+        RECT 1.670 31.485 73.330 35.735 ;
+        RECT 0.965 30.885 74.035 31.485 ;
+        RECT 1.670 25.435 73.330 30.885 ;
+        RECT 0.965 24.835 74.035 25.435 ;
+        RECT 1.670 19.385 73.330 24.835 ;
+        RECT 0.965 18.785 74.035 19.385 ;
+        RECT 1.365 14.535 73.635 18.785 ;
+        RECT 0.965 13.935 74.035 14.535 ;
+        RECT 1.670 8.485 73.330 13.935 ;
+        RECT 0.965 7.885 74.035 8.485 ;
+        RECT 1.670 2.035 73.330 7.885 ;
+      LAYER met5 ;
+        RECT 2.870 174.185 72.130 200.000 ;
+        RECT 0.000 167.545 75.000 174.185 ;
+        RECT 0.000 103.520 5.450 167.545 ;
+        RECT 69.490 103.520 75.000 167.545 ;
+        RECT 0.000 96.585 75.000 103.520 ;
+        RECT 2.870 36.840 72.130 96.585 ;
+        RECT 0.000 36.835 75.000 36.840 ;
+        RECT 2.870 18.285 72.130 36.835 ;
+        RECT 2.565 15.035 72.435 18.285 ;
+        RECT 2.870 2.135 72.130 15.035 ;
+  END
+END sky130_ef_io__analog_noesd_pad
+END LIBRARY
+
diff --git a/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_noesd_pad.spice b/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_noesd_pad.spice
new file mode 100644
index 0000000..e235ead
--- /dev/null
+++ b/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_noesd_pad.spice
@@ -0,0 +1,40 @@
+* NGSPICE file created from sky130_ef_io__analog_noesd_pad.ext - technology: sky130A
+
+.subckt sky130_fd_io__pad_esd VSUBS m4_960_20297# m5_1354_20528#
+R0 m4_960_20297# m5_1354_20528# sky130_fd_pr__res_generic_m5 w=2.5284e+08u l=100000u
+.ends
+
+.subckt sky130_fd_io__com_busses_esd VSUBS sky130_fd_io__com_bus_hookup_0/VCCD sky130_fd_io__com_bus_hookup_0/VSWITCH
++ sky130_fd_io__com_bus_hookup_0/AMUXBUS_A sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
++ sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_bus_hookup_0/VDDIO sky130_fd_io__com_bus_hookup_0/VSSIO_Q
++ sky130_fd_io__pad_esd_0/m5_1354_20528# sky130_fd_io__pad_esd_0/m4_960_20297# sky130_fd_io__com_bus_hookup_0/VDDIO_Q
++ sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_bus_hookup_0/VSSD sky130_fd_io__com_bus_hookup_0/VCCHIB
+Xsky130_fd_io__pad_esd_0 VSUBS sky130_fd_io__pad_esd_0/m4_960_20297# sky130_fd_io__pad_esd_0/m5_1354_20528#
++ sky130_fd_io__pad_esd
+.ends
+
+.subckt sky130_fd_io__simple_pad_and_busses VSUBS sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO
++ m3_99_16575# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20528#
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD
++ w_818_9944# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD
+Xsky130_fd_io__com_busses_esd_0 VSUBS sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20528#
++ m3_99_16575# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB sky130_fd_io__com_busses_esd
+.ends
+
+.subckt sky130_ef_io__analog_noesd_pad P_CORE VSSA VSSD AMUXBUS_B AMUXBUS_A VDDIO_Q VDDIO
++ VSWITCH VSSIO VDDA VCCD VCCHIB VSSIO_Q P_PAD
+Xsky130_fd_io__simple_pad_and_busses_0 sky130_fd_io__simple_pad_and_busses_0/VSUBS
++ VSWITCH VDDA VSSIO VCCHIB VDDIO P_CORE VSSIO_Q AMUXBUS_A P_PAD AMUXBUS_B VSSA VDDIO_Q
++ VSSD sky130_fd_io__simple_pad_and_busses_0/VSUBS VCCD sky130_fd_io__simple_pad_and_busses
+.ends
+
diff --git a/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_pad.spice b/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_pad.spice
index ee7b06b..9156cf5 100644
--- a/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_pad.spice
+++ b/sky130/custom/sky130_fd_io/spice/sky130_ef_io__analog_pad.spice
@@ -1,40 +1,62 @@
 * NGSPICE file created from sky130_ef_io__analog_pad.ext - technology: sky130A
 
-.subckt sky130_fd_io__pad_esd VSUBS m4_960_20297# m5_1354_20528#
-R0 m4_960_20297# m5_1354_20528# sky130_fd_pr__res_generic_m5 w=2.5284e+08u l=100000u
+.subckt sky130_fd_io__pad_esd m4_960_20017# m5_1354_20500#
+R0 m4_960_20017# m5_1354_20500# sky130_fd_pr__res_generic_m5 w=253 l=0.1
 .ends
 
-.subckt sky130_fd_io__com_busses_esd VSUBS sky130_fd_io__com_bus_hookup_0/VCCD sky130_fd_io__com_bus_hookup_0/VSWITCH
-+ sky130_fd_io__com_bus_hookup_0/AMUXBUS_A sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
-+ sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_bus_hookup_0/VDDIO sky130_fd_io__com_bus_hookup_0/VSSIO_Q
-+ sky130_fd_io__pad_esd_0/m5_1354_20528# sky130_fd_io__pad_esd_0/m4_960_20297# sky130_fd_io__com_bus_hookup_0/VDDIO_Q
-+ sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_bus_hookup_0/VSSD sky130_fd_io__com_bus_hookup_0/VCCHIB
-Xsky130_fd_io__pad_esd_0 VSUBS sky130_fd_io__pad_esd_0/m4_960_20297# sky130_fd_io__pad_esd_0/m5_1354_20528#
+.subckt sky130_fd_io__com_busses_esd sky130_fd_io__com_bus_hookup_0/VCCHIB sky130_fd_io__com_bus_hookup_0/VSSD
++ sky130_fd_io__pad_esd_0/m5_1354_20500# sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_bus_hookup_0/VDDIO_Q
++ sky130_fd_io__com_bus_hookup_0/VSSIO_Q sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__pad_esd_0/m4_960_20017#
++ sky130_fd_io__com_bus_hookup_0/AMUXBUS_B sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_bus_hookup_0/AMUXBUS_A
++ sky130_fd_io__com_bus_hookup_0/VDDIO sky130_fd_io__com_bus_hookup_0/VSWITCH sky130_fd_io__com_bus_hookup_0/VCCD
+Xsky130_fd_io__pad_esd_0 sky130_fd_io__pad_esd_0/m4_960_20017# sky130_fd_io__pad_esd_0/m5_1354_20500#
 + sky130_fd_io__pad_esd
 .ends
 
-.subckt sky130_fd_io__simple_pad_and_busses VSUBS sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO
-+ m3_99_16575# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20528#
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD
-+ w_818_9944# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD
-Xsky130_fd_io__com_busses_esd_0 VSUBS sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20528#
-+ m3_99_16575# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD
-+ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB sky130_fd_io__com_busses_esd
+.subckt sky130_ef_io__esd_pdiode_11v0_array a_n1540_n5136# a_1132_n5000# a_516_n5000#
++ a_n1332_n5000# a_n716_n5000# a_n100_n5000#
+D0 a_n716_n5000# a_n716_n5000# sky130_fd_pr__diode_pw2nd_11v0 pj=1.02e+08 area=5e+13
+D1 a_n1332_n5000# a_n1332_n5000# sky130_fd_pr__diode_pw2nd_11v0 pj=1.02e+08 area=5e+13
+D2 a_n100_n5000# a_n100_n5000# sky130_fd_pr__diode_pw2nd_11v0 pj=1.02e+08 area=5e+13
+D3 a_1132_n5000# a_1132_n5000# sky130_fd_pr__diode_pw2nd_11v0 pj=1.02e+08 area=5e+13
+D4 a_516_n5000# a_516_n5000# sky130_fd_pr__diode_pw2nd_11v0 pj=1.02e+08 area=5e+13
+.ends
+
+.subckt sky130_ef_io__esd_ndiode_11v0_array a_964_n5000# a_n1164_n5000# a_432_n5000#
++ a_n632_n5000# a_n100_n5000# w_n1396_n5168#
+D0 a_432_n5000# w_n1396_n5168# sky130_fd_pr__diode_pd2nw_11v0 pj=1.02e+08 area=5e+13
+D1 a_n100_n5000# w_n1396_n5168# sky130_fd_pr__diode_pd2nw_11v0 pj=1.02e+08 area=5e+13
+D2 a_n632_n5000# w_n1396_n5168# sky130_fd_pr__diode_pd2nw_11v0 pj=1.02e+08 area=5e+13
+D3 a_964_n5000# w_n1396_n5168# sky130_fd_pr__diode_pd2nw_11v0 pj=1.02e+08 area=5e+13
+D4 a_n1164_n5000# w_n1396_n5168# sky130_fd_pr__diode_pd2nw_11v0 pj=1.02e+08 area=5e+13
+.ends
+
+.subckt sky130_ef_io__esd_pad_and_busses sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD
++ m1_2509_27880# sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20500#
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH
+Xsky130_fd_io__com_busses_esd_0 sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCHIB
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSD sky130_fd_io__com_busses_esd_0/sky130_fd_io__pad_esd_0/m5_1354_20500#
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSA sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO_Q
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO_Q sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDA
++ m1_2509_27880# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_B
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/AMUXBUS_A
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSWITCH
++ sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VCCD sky130_fd_io__com_busses_esd
+Xsky130_ef_io__esd_vssio sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VSSIO
++ m1_2509_27880# m1_2509_27880# m1_2509_27880# m1_2509_27880# m1_2509_27880# sky130_ef_io__esd_pdiode_11v0_array
+Xsky130_ef_io__esd_vddio m1_2509_27880# m1_2509_27880# m1_2509_27880# m1_2509_27880#
++ m1_2509_27880# sky130_fd_io__com_busses_esd_0/sky130_fd_io__com_bus_hookup_0/VDDIO
++ sky130_ef_io__esd_ndiode_11v0_array
 .ends
 
 .subckt sky130_ef_io__analog_pad P_CORE VSSA VSSD AMUXBUS_B AMUXBUS_A VDDIO_Q VDDIO
 + VSWITCH VSSIO VDDA VCCD VCCHIB VSSIO_Q P_PAD
-Xsky130_fd_io__simple_pad_and_busses_0 sky130_fd_io__simple_pad_and_busses_0/VSUBS
-+ VSWITCH VDDA VSSIO VCCHIB VDDIO P_CORE VSSIO_Q AMUXBUS_A P_PAD AMUXBUS_B VSSA VDDIO_Q
-+ VSSD sky130_fd_io__simple_pad_and_busses_0/VSUBS VCCD sky130_fd_io__simple_pad_and_busses
+Xsky130_ef_io__esd_pad_and_busses_0 VCCD P_CORE P_PAD VSSD VDDIO_Q VSSA AMUXBUS_B
++ AMUXBUS_A VSSIO_Q VDDIO VCCHIB VSSIO VDDA VSWITCH sky130_ef_io__esd_pad_and_busses
 .ends
 
diff --git a/sky130/custom/sky130_fd_io/verilog/sky130_ef_io__analog_noesd_pad.v b/sky130/custom/sky130_fd_io/verilog/sky130_ef_io__analog_noesd_pad.v
new file mode 100644
index 0000000..540c5e2
--- /dev/null
+++ b/sky130/custom/sky130_fd_io/verilog/sky130_ef_io__analog_noesd_pad.v
@@ -0,0 +1,210 @@
+/**
+ * Copyright 2020 The SkyWater PDK Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+`ifndef SKY130_EF_IO__ANALOG_NOESD_PAD_V
+`define SKY130_EF_IO__ANALOG_NOESD_PAD_V
+
+/**
+ * analog_noesd_pad: Analog PAD, without ESD structures.
+ *
+ * Verilog top module.
+ *
+ * WARNING: This file is autogenerated, do not modify directly!
+ */
+
+`timescale 1ns / 1ps
+`default_nettype none
+
+`ifdef USE_POWER_PINS
+
+`ifdef FUNCTIONAL
+
+/*
+ * Copyright 2020 The SkyWater PDK Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+*/
+
+module sky130_ef_io__analog_noesd_pad (AMUXBUS_A, AMUXBUS_B, P_PAD, P_CORE
+                                 ,VCCD, VCCHIB, VDDA, VDDIO, VDDIO_Q, VSSA, VSSD, VSSIO, VSSIO_Q, VSWITCH
+                                );
+inout AMUXBUS_A;
+inout AMUXBUS_B;
+inout P_PAD;
+inout P_CORE;
+inout VCCD;
+inout VCCHIB;
+inout VDDA;
+inout VDDIO;
+inout VDDIO_Q;
+inout VSSA;
+inout VSSD;
+inout VSSIO;
+inout VSSIO_Q;
+inout VSWITCH;
+wire pwr_good = VDDIO===1 && VSSIO===0;
+wire pad_sw = pwr_good===1 ? 1'b1 : 1'bx;
+tranif1 x_pad (P_PAD, P_CORE, pad_sw);
+endmodule
+
+`else  // FUNCTIONAL
+
+/*
+ * Copyright 2020 The SkyWater PDK Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+*/
+
+module sky130_ef_io__analog_noesd_pad (AMUXBUS_A, AMUXBUS_B, P_PAD, P_CORE
+                                 ,VCCD, VCCHIB, VDDA, VDDIO, VDDIO_Q, VSSA, VSSD, VSSIO, VSSIO_Q, VSWITCH
+                                );
+inout AMUXBUS_A;
+inout AMUXBUS_B;
+inout P_PAD;
+inout P_CORE;
+inout VCCD;
+inout VCCHIB;
+inout VDDA;
+inout VDDIO;
+inout VDDIO_Q;
+inout VSSA;
+inout VSSD;
+inout VSSIO;
+inout VSSIO_Q;
+inout VSWITCH;
+wire pwr_good = VDDIO===1 && VSSIO===0;
+wire pad_sw = pwr_good===1 ? 1'b1 : 1'bx;
+tranif1 x_pad (P_PAD, P_CORE, pad_sw);
+endmodule
+
+`endif // FUNCTIONAL
+
+`else  // USE_POWER_PINS
+
+`ifdef FUNCTIONAL
+
+/*
+ * Copyright 2020 The SkyWater PDK Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+*/
+
+module sky130_ef_io__analog_noesd_pad (AMUXBUS_A, AMUXBUS_B, P_PAD, P_CORE
+                                );
+inout AMUXBUS_A;
+inout AMUXBUS_B;
+inout P_PAD;
+inout P_CORE;
+supply1 VCCD;
+supply1 VCCHIB;
+supply1 VDDA;
+supply1 VDDIO;
+supply1 VDDIO_Q;
+supply0 VSSA;
+supply0 VSSD;
+supply0 VSSIO;
+supply0 VSSIO_Q;
+supply1 VSWITCH;
+wire pwr_good = 1;
+wire pad_sw = pwr_good===1 ? 1'b1 : 1'bx;
+tranif1 x_pad (P_PAD, P_CORE, pad_sw);
+endmodule
+
+`else  // FUNCTIONAL
+
+/*
+ * Copyright 2020 The SkyWater PDK Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+*/
+
+module sky130_ef_io__analog_noesd_pad (AMUXBUS_A, AMUXBUS_B, P_PAD, P_CORE
+                                );
+inout AMUXBUS_A;
+inout AMUXBUS_B;
+inout P_PAD;
+inout P_CORE;
+supply1 VCCD;
+supply1 VCCHIB;
+supply1 VDDA;
+supply1 VDDIO;
+supply1 VDDIO_Q;
+supply0 VSSA;
+supply0 VSSD;
+supply0 VSSIO;
+supply0 VSSIO_Q;
+supply1 VSWITCH;
+wire pwr_good = 1;
+wire pad_sw = pwr_good===1 ? 1'b1 : 1'bx;
+tranif1 x_pad (P_PAD, P_CORE, pad_sw);
+endmodule
+
+`endif // FUNCTIONAL
+
+`endif // USE_POWER_PINS
+
+`default_nettype wire
+`endif  // SKY130_EF_IO__ANALOG_NOESD_PAD_V
