Fixes to the (work in progress) xcircuit installation, and added a
patch file for fixing sky130_fd_pr, created from the patch file in
xschem_sky130 but applied between the build and installation, so
that it does not directly patch the skywater-pdk repository.
diff --git a/VERSION b/VERSION
index cfc7214..0f8b392 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.0.123
+1.0.124
diff --git a/common/preproc.py b/common/preproc.py
index 1fca5be..709ea11 100755
--- a/common/preproc.py
+++ b/common/preproc.py
@@ -54,6 +54,7 @@
 #	#endif
 #--------------------------------------------------------------------
 
+import os
 import re
 import sys
 
@@ -500,6 +501,7 @@
     print('Usage: ' + progname + ' input_file [output_file] [-options]')
     print('   Options are:')
     print('      -help         Print this help text.')
+    print('      -quiet        Stop without error if input file is not found.')
     print('      -ccomm        Remove C comments in /* ... */ delimiters.')
     print('      -D<def>       Define word <def> and set its value to 1.')
     print('      -D<def>=<val> Define word <def> and set its value to <val>.')
@@ -532,6 +534,7 @@
     keys = []
     incdirs = []
     ccomm = False
+    quiet = False
     for item in options:
         result = item.split('=')
         if result[0] == '-help':
@@ -539,6 +542,8 @@
             sys.exit(0)
         elif result[0] == '-ccomm':
             ccomm = True
+        elif result[0] == '-quiet':
+            quiet = True
         elif result[0][0:2] == '-I':
             incdirs.append(result[0][2:])
         elif result[0][0:2] == '-D':
@@ -552,16 +557,22 @@
             keys.append(keyword)
             keys = sortkeys(keys)
         else:
-            print('Bad option ' + item + ', options are -help, -ccomm, -D<def> -I<dir>\n')
+            print('Bad option ' + item + ', options are -help, -quiet, -ccomm, -D<def> -I<dir>\n')
             sys.exit(1)
 
+    if not os.path.isfile(inputfile):
+        if not quiet:
+            print("Error:  No input file " + inputfile + " found.")
+        else:
+            sys.exit(0)
+
     if outputfile:
         ofile = open(outputfile, 'w')
     else:
         ofile = sys.stdout
 
     if not ofile:
-        print("Error:  Cannot open file " + output_file + " for writing.")
+        print("Error:  Cannot open file " + outputfile + " for writing.")
         sys.exit(1)
 
     # Sort keys so that if any definition contains another definition, the
diff --git a/common/staging_install.py b/common/staging_install.py
index 3a94d71..22f5e2b 100755
--- a/common/staging_install.py
+++ b/common/staging_install.py
@@ -64,7 +64,7 @@
 
 def filter_recursive(tooldir, stagingdir, localdir):
     # Add any non-ASCII file types here
-    bintypes = ['.gds', '.gds2', '.gdsii', '.png']
+    bintypes = ['.gds', '.gds2', '.gdsii', '.png', '.swp']
 
     if not os.path.exists(tooldir):
         return 0
@@ -74,9 +74,6 @@
     toolfiles = os.listdir(tooldir)
     total = 0
 
-    # Add any non-ASCII 
-    binexts = ['.png']
-
     for file in toolfiles:
         # Do not attempt to do text substitutions on a binary file!
         if os.path.splitext(file)[1] in bintypes:
@@ -609,6 +606,8 @@
                                 os.remove(filepath)
                             elif os.path.splitext(libfile)[1] == '.ext':
                                 os.remove(filepath)
+                            elif os.path.splitext(libfile)[1] == '.swp':
+                                os.remove(filepath)
         else:
             libraries = os.listdir(targetdir + refdir)
             for library in libraries:
diff --git a/sky130/Makefile.in b/sky130/Makefile.in
index 01aa7dd..d49e141 100644
--- a/sky130/Makefile.in
+++ b/sky130/Makefile.in
@@ -107,7 +107,7 @@
 #
 # Run "make clean" to remove all staging files.
 #
-# Run "make veryclean" to remove all staging and install log files.
+# Run "make veryclean" to remove all staging and make.log files.
 #
 # For the sake of simplicity, the "standard" installation can be done
 # with the usual
@@ -222,8 +222,10 @@
 
 ifeq (${EF_STYLE}, 1)
     MAGICPATH = ${MAGICTOP}/${REVISION}
+    MAGICCURRENT = ${MAGICTOP}/current
 else
     MAGICPATH = ${MAGICTOP}
+    MAGICCURRENT = ${MAGICTOP}
 endif
 
 # Currently, netgen, qflow, irsim, and klayout do not use revisioning (needs to change!)
@@ -253,7 +255,7 @@
 XSCHEM_STAGING_A = ${STAGING_PATH}/${SKY130A}/${XSCHEMPATH}
 XCIRCUIT_STAGING_A = ${STAGING_PATH}/${SKY130A}/${XCIRCUITPATH}
 
-SKY130A_DEFS += -DMAGIC_CURRENT=${MAGICTOP}/current
+SKY130A_DEFS += -DMAGIC_CURRENT=${MAGICCURRENT}
 
 # Openlane has a number of files that are common to all digital
 # standard cell libraries, so these are collected in one definition
@@ -360,17 +362,17 @@
 	fi
 
 all-a: prerequisites
-	echo "Starting sky130A PDK staging on "`date` > ${SKY130A}_install.log
+	echo "Starting sky130A PDK staging on "`date` > ${SKY130A}_make.log
 	${MAKE} tools-a
 	${MAKE} vendor-a
-	echo "Ended sky130A PDK staging on "`date` >> ${SKY130A}_install.log
+	echo "Ended sky130A PDK staging on "`date` >> ${SKY130A}_make.log
 
 tools-a: $(addsuffix -a, $(TOOLS))
 
 general-a: ${TECH}.json
 	mkdir -p ${STAGING_PATH}/${SKY130A}/${CONFIG_DIR}
 	rm -f ${STAGING_PATH}/${SKY130A}/${CONFIG_DIR}/nodeinfo.json
-	${CPP} ${SKY130A_DEFS} ${TECH}.json > \
+	${CPP} ${SKY130A_DEFS} ${TECH}.json \
 		${STAGING_PATH}/${SKY130A}/${CONFIG_DIR}/nodeinfo.json
 
 magic-a: magic/${TECH}.tech magic/${TECH}gds.tech magic/${TECH}.magicrc magic/${TECH}.tcl
@@ -382,16 +384,18 @@
 	rm -f ${MAGIC_STAGING_A}/${SKY130A}.tcl
 	rm -f ${MAGIC_STAGING_A}/${SKY130A}-BindKeys
 	rm -f ${MAGIC_STAGING_A}/magicrc
-	(cd ${MAGICTOP_STAGING_A} ; ln -s ${REV_DIR} current)
+	if "${EF_STYLE}" == "1" ; then \
+	    (cd ${MAGICTOP_STAGING_A} ; ln -s ${REV_DIR} current) ; \
+	fi
 	cp -rp custom/scripts/seal_ring_generator ${MAGIC_STAGING_A}/.
 	cp -rp custom/scripts/bump_bond_generator ${MAGIC_STAGING_A}/.
 	cp custom/scripts/generate_fill.py ${MAGIC_STAGING_A}/.
 	cp custom/scripts/check_density.py ${MAGIC_STAGING_A}/.
-	${CPP} ${SKY130A_DEFS} magic/${TECH}.tech > ${MAGIC_STAGING_A}/${SKY130A}.tech
-	${CPP} ${SKY130A_DEFS} magic/${TECH}gds.tech > ${MAGIC_STAGING_A}/${SKY130A}-GDS.tech
-	${CPP} ${SKY130A_DEFS} magic/${TECH}.magicrc > ${MAGIC_STAGING_A}/${SKY130A}.magicrc
-	${CPP} ${SKY130A_DEFS} ../common/pdk.bindkeys > ${MAGIC_STAGING_A}/${SKY130A}-BindKeys
-	${CPP} ${SKY130A_DEFS} magic/${TECH}.tcl > ${MAGIC_STAGING_A}/${SKY130A}.tcl
+	${CPP} ${SKY130A_DEFS} magic/${TECH}.tech ${MAGIC_STAGING_A}/${SKY130A}.tech
+	${CPP} ${SKY130A_DEFS} magic/${TECH}gds.tech ${MAGIC_STAGING_A}/${SKY130A}-GDS.tech
+	${CPP} ${SKY130A_DEFS} magic/${TECH}.magicrc ${MAGIC_STAGING_A}/${SKY130A}.magicrc
+	${CPP} ${SKY130A_DEFS} ../common/pdk.bindkeys ${MAGIC_STAGING_A}/${SKY130A}-BindKeys
+	${CPP} ${SKY130A_DEFS} magic/${TECH}.tcl ${MAGIC_STAGING_A}/${SKY130A}.tcl
 	${CPP} ${SKY130A_DEFS} ../common/pdk.tcl >> ${MAGIC_STAGING_A}/${SKY130A}.tcl
 
 qflow-a: qflow/${TECH}.sh qflow/${TECH}.par
@@ -413,37 +417,37 @@
 	rm -f ${QFLOW_STAGING_A}/${SKY130A}ms.par
 	rm -f ${QFLOW_STAGING_A}/${SKY130A}osu.sh
 	rm -f ${QFLOW_STAGING_A}/${SKY130A}osu.par
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hd qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hd qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}hd.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hdll qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hdll qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}hdll.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hvl qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hvl qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}hvl.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hs qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_hs qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}hs.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_lp qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_lp qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}lp.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_ls qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_ls qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}ls.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_ms qflow/${TECH}.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_fd_sc_ms qflow/${TECH}.sh \
 		${QFLOW_STAGING_A}/${SKY130A}ms.sh
-	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_osu_sc_t18 qflow/sky130osu.sh > \
+	${CPP} ${SKY130A_DEFS} -DLIBRARY=sky130_osu_sc_t18 qflow/sky130osu.sh \
 		${QFLOW_STAGING_A}/${SKY130A}osu.sh
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}hd.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}hdll.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}hvl.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}hs.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}ms.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}lp.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}ls.par
-	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par > ${QFLOW_STAGING_A}/${SKY130A}osu.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}hd.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}hdll.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}hvl.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}hs.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}ms.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}lp.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}ls.par
+	${CPP} ${SKY130A_DEFS} qflow/${TECH}.par ${QFLOW_STAGING_A}/${SKY130A}osu.par
 
 netgen-a: netgen/${TECH}_setup.tcl
 	mkdir -p ${NETGENTOP_STAGING_A}
 	mkdir -p ${NETGEN_STAGING_A}
 	rm -f ${NETGEN_STAGING_A}/${SKY130A}_setup.tcl
 	rm -f ${NETGEN_STAGING_A}/setup.tcl
-	${CPP} ${SKY130A_DEFS} netgen/${TECH}_setup.tcl > ${NETGEN_STAGING_A}/${SKY130A}_setup.tcl
+	${CPP} ${SKY130A_DEFS} netgen/${TECH}_setup.tcl ${NETGEN_STAGING_A}/${SKY130A}_setup.tcl
 	(cd ${NETGEN_STAGING_A} ; ln -s ${SKY130A}_setup.tcl setup.tcl)
 
 irsim-a: irsim
@@ -457,8 +461,8 @@
 	mkdir -p ${KLAYOUT_STAGING_A}
 	rm -f ${KLAYOUT_STAGING_A}/${SKY130A}.lyp
 	rm -f ${KLAYOUT_STAGING_A}/${SKY130A}.lyt
-	${CPP} ${SKY130A_DEFS} klayout/${TECH}.lyp > ${KLAYOUT_STAGING_A}/${SKY130A}.lyp
-	${CPP} ${SKY130A_DEFS} klayout/${TECH}.lyt > ${KLAYOUT_STAGING_A}/${SKY130A}.lyt
+	${CPP} ${SKY130A_DEFS} klayout/${TECH}.lyp ${KLAYOUT_STAGING_A}/${SKY130A}.lyp
+	${CPP} ${SKY130A_DEFS} klayout/${TECH}.lyt ${KLAYOUT_STAGING_A}/${SKY130A}.lyt
 	cp klayout/${TECH}.lydrc ${KLAYOUT_STAGING_A}/${SKY130A}.lydrc
 	./custom/scripts/gen_run_drc.py -l ${KLAYOUT_STAGING_A}/${SKY130A}.lydrc -o ${KLAYOUT_STAGING_A}/${SKY130A}.drc
 
@@ -468,11 +472,10 @@
 	mkdir -p ${XCIRCUIT_STAGING_A}
 	rm -f ${XCIRCUIT_STAGING_A}/*.lps
 	rm -f ${XCIRCUIT_STAGING_A}/${SKY130A}.xcircuitrc
-	${CPP} xcircuit/sky130_fd_pr.lps > ${XCIRCUIT_STAGING_A}/sky130_fd_pr.lps
-	${CPP} xcircuit/sky130_fd_sc_hd.lps > ${XCIRCUIT_STAGING_A}/sky130_fd_sc_hd.lps
-	${CPP} xcircuit/ngspice.lps > ${XCIRCUIT_STAGING_A}/ngspice.lps
-	cp xcircuit/${TECH}_*.lps ${XCIRCUIT_STAGING_A}/
-	${CPP} ${SKY130A_DEFS} xcircuit/${TECH}.xcircuitrc > ${XCIRCUIT_STAGING_A}/${SKY130A}.xcircuitrc
+	${CPP} ${SKY130A_DEFS} xcircuit/ngspice.lps ${XCIRCUIT_STAGING_A}/ngspice.lps
+	${CPP} ${SKY130A_DEFS} xcircuit/sky130_fd_pr.lps ${XCIRCUIT_STAGING_A}/sky130_fd_pr.lps
+	${CPP} ${SKY130A_DEFS} xcircuit/sky130_fd_sc_hd.lps ${XCIRCUIT_STAGING_A}/sky130_fd_sc_hd.lps
+	${CPP} ${SKY130A_DEFS} xcircuit/${TECH}.xcircuitrc ${XCIRCUIT_STAGING_A}/${SKY130A}.xcircuitrc
 
 xschem-a: ${XSCHEM_PATH}
 	rm -rf ${XSCHEM_STAGING_A}
@@ -486,7 +489,8 @@
 	# a component of XSCHEM_LIBRARY_PATH
 	cat ${XSCHEM_PATH}/xschemrc | \
 		sed -e "/PWD/aappend XSCHEM_LIBRARY_PATH :${XSCHEM_STAGING_A}" | \
-		sed -e "/sky130_models.tcl/s#scripts#${XSCHEM_STAGING_A}/scripts#" \
+		sed -e "/sky130_models.tcl/s#scripts#${XSCHEM_STAGING_A}/scripts#" | \
+		sed -e "/netlist_dir/aset netlist_dir ." \
 		> ${XSCHEM_STAGING_A}/xschemrc
 
 openlane-a: openlane/common_pdn.tcl openlane/config.tcl openlane/sky130_fd_sc_hd/config.tcl  openlane/sky130_fd_sc_hs/config.tcl openlane/sky130_fd_sc_ms/config.tcl openlane/sky130_fd_sc_ls/config.tcl openlane/sky130_fd_sc_hdll/config.tcl openlane/sky130_osu_sc_t18/config.tcl
@@ -525,36 +529,38 @@
 	done
 
 	cp -r openlane/custom_cells ${OPENLANE_STAGING_A}
-	${CPP} ${SKY130A_DEFS} openlane/common_pdn.tcl > ${OPENLANE_STAGING_A}/common_pdn.tcl
-	${CPP} ${SKY130A_DEFS} openlane/config.tcl > ${OPENLANE_STAGING_A}/config.tcl
+	${CPP} ${SKY130A_DEFS} openlane/common_pdn.tcl ${OPENLANE_STAGING_A}/common_pdn.tcl
+	${CPP} ${SKY130A_DEFS} openlane/config.tcl ${OPENLANE_STAGING_A}/config.tcl
 
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_hd/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_hd/$$file ; \
 	done
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_hs/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_hs/$$file ; \
 	done
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_ms/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_ms/$$file ; \
 	done
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_ls/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_ls/$$file ; \
 	done
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_hdll/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_hdll/$$file ; \
 	done
 	for file in ${OPENLANE_COMMON} ; do \
-	    ${CPP} ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/$$file > \
+	    ${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_fd_sc_hvl/$$file \
 		${OPENLANE_STAGING_A}/sky130_fd_sc_hvl/$$file ; \
 	done
 
-	${CPP} ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/config.tcl > ${OPENLANE_STAGING_A}/sky130_osu_sc_t18/config.tcl
-	${CPP} ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/tracks.info > ${OPENLANE_STAGING_A}/sky130_osu_sc_t18/tracks.info
+	${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/config.tcl \
+		${OPENLANE_STAGING_A}/sky130_osu_sc_t18/config.tcl
+	${CPP} -quiet ${SKY130A_DEFS} openlane/sky130_osu_sc_t18/tracks.info \
+		${OPENLANE_STAGING_A}/sky130_osu_sc_t18/tracks.info
 
 vendor-a:
 	# Modify the LEF files to update hs and ms libraries
@@ -562,14 +568,14 @@
 	${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130A} \
 		-ngspice sky130_fd_pr/latest/models/* \
 		filter=custom/scripts/rename_models.py \
-		|& tee -a ${SKY130A}_install.log
+		|& tee -a ${SKY130A}_make.log
 	# Install base device library from vendor files
 	${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130A} \
 		-gds %l/latest/cells/*/*.gds compile-only \
 		-cdl %l/latest/cells/*/*.cdl compile-only \
 		-lef %l/latest/cells/*/*.magic.lef compile-only \
 		-spice %l/latest/cells/*/*.spice filter=custom/scripts/rename_cells.py \
-		-library primitive sky130_fd_pr |& tee -a ${SKY130A}_install.log
+		-library primitive sky130_fd_pr |& tee -a ${SKY130A}_make.log
 	# Custom:  Add "short" resistor model and subcircuit to the r+c models file
 	cat ./custom/models/short.spice >> \
 		${STAGING_PATH}/${SKY130A}/libs.tech/ngspice/sky130_fd_pr__model__r+c.model.spice
@@ -577,13 +583,18 @@
 	cat ./custom/models/diode.spice >> \
 		${STAGING_PATH}/${SKY130A}/libs.tech/ngspice/sky130_fd_pr__model__r+c.model.spice
 
+	# Custom:  Patch the models to work around ngspice issue with the relative
+	# order of the "nf" and "mult" parameters.
+	patch -p1 -f -d ${STAGING_PATH}/${SKY130A} \
+		< custom/patches/sky130_fd_pr.patch \
+		|& tee -a ${SKY130A}_make.log || true
 	# Install custom additions to I/O pad library
 	${STAGE} -source ./custom -target ${STAGING_PATH}/${SKY130A} \
 		-verilog %l/verilog/*.v \
 		-cdl %l/cdl/*.cdl \
 		-gds %l/gds/*.gds \
 		-lef %l/lef/*.lef compile-only rename=sky130_ef_io \
-		-library general sky130_fd_io |& tee -a ${SKY130A}_install.log
+		-library general sky130_fd_io |& tee -a ${SKY130A}_make.log
 	# Install SkyWater I/O pad library
 	${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130A} \
 		-spice %l/latest/cells/*/*.spice compile-only \
@@ -601,7 +612,7 @@
 		-verilog %l/latest/cells/*/*.v exclude=*.*.v \
 			compile-only filter=custom/scripts/inc_verilog.py \
 			sort=custom/scripts/sort_pdkfiles.py \
-		-library general sky130_fd_io |& tee -a ${SKY130A}_install.log
+		-library general sky130_fd_io |& tee -a ${SKY130A}_make.log
 	# Remove the base verilog files which have already been included into
 	# the libraries
 	${RM} ${STAGING_PATH}/${SKY130A}/libs.ref/sky130_fd_io/verilog/*.*.v
@@ -610,7 +621,7 @@
 		-gds %l/gds/*.gds \
 		-lef %l/lef/*.lef \
 		-verilog %l/verilog/*.v \
-		-library digital sky130_fd_sc_hd |& tee -a ${SKY130A}_install.log
+		-library digital sky130_fd_sc_hd |& tee -a ${SKY130A}_make.log
 	# Add a maskhint set for the GPIO pad .mag view to prevent problems writing
 	# when writing HVI to GDS during hierarchical adjustments.
 	${ADDPROP} ${STAGING_PATH}/${SKY130A} sky130_fd_io sky130_fd_io__top_gpiov2 \
@@ -641,7 +652,7 @@
 		-library digital sky130_fd_sc_hs \
 		-library digital sky130_fd_sc_ls \
 		-library digital sky130_fd_sc_ms \
-		-library digital sky130_fd_sc_lp |& tee -a ${SKY130A}_install.log
+		-library digital sky130_fd_sc_lp |& tee -a ${SKY130A}_make.log
 	# Add a maskhint set for the tap cell .ag view to prevent problems writing
 	# when writing NSDM and PSDM to GDS during hierarchical adjustments.
 	${ADDPROP} ${STAGING_PATH}/${SKY130A} sky130_fd_sc_hd sky130_fd_sc_hd__tapvpwrvgnd_1 \
@@ -659,13 +670,15 @@
 	${RM} ${STAGING_PATH}/${SKY130A}/libs.ref/sky130_fd_sc_lp/verilog/*.*.v
 	# Apply extra PDK patches until they get fixed properly in the source
 	patch -p1 -f -d ${STAGING_PATH}/${SKY130A}/libs.ref/sky130_fd_sc_hd/techlef \
-		< custom/patches/hd_minenclosed.squeaky.patch || true
+		< custom/patches/hd_minenclosed.squeaky.patch \
+		|& tee -a ${SKY130A}_make.log || true
 	patch -p1 -f -d ${STAGING_PATH}/${SKY130A}/libs.ref/sky130_fd_sc_hdll/techlef \
-		< custom/patches/hdll_minenclosed.squeaky.patch || true
+		< custom/patches/hdll_minenclosed.squeaky.patch \
+		|& tee -a ${SKY130A}_make.log || true
 	# Install alphanumeric library.
 	${STAGE} -source ${ALPHA_PATH}/.. -target ${STAGING_PATH}/${SKY130A} \
 		-mag %l/mag/*.mag filter=custom/scripts/text2m5.py \
-		-library general sky130_ml_xx_hd |& tee -a ${SKY130A}_install.log
+		-library general sky130_ml_xx_hd |& tee -a ${SKY130A}_make.log
 	# Install text2mag.py script for alphanumeric library
 	mkdir -p ${STAGING_PATH}/${SKY130A}/libs.ref/sky130_ml_xx_hd/scripts
 	cp custom/scripts/text2mag.py \
@@ -677,7 +690,7 @@
 		-lef %l/latest/lef/*.lef compile-only \
 		-lib %l/latest/lib/*.lib \
 		-gds %l/latest/gds/*.gds compile-only \
-		-library digital sky130_osu_sc_t18 |& tee -a ${SKY130A}_install.log
+		-library digital sky130_osu_sc_t18 |& tee -a ${SKY130A}_make.log
 
 install:
 	if test "x${DIST_PATH}" == "x" ; then \
@@ -689,23 +702,23 @@
 install-local: install-local-a
 
 install-local-a:
-	echo "Starting SKY130 PDK migration on "`date` > ${SKY130A}_migrate.log
+	echo "Starting SKY130 PDK migration on "`date` > ${SKY130A}_install.log
 	${INSTALL} -source ${STAGING_PATH}/${SKY130A} \
 		-target ${LOCAL_PATH}/${SKY130A} \
 		-variable PDKPATH \
-		-link_from ${LINK_TARGETS} |& tee -a ${SKY130A}_migrate.log
-	echo "Ended SKY130 PDK migration on "`date` >> ${SKY130A}_migrate.log
+		-link_from ${LINK_TARGETS} |& tee -a ${SKY130A}_install.log
+	echo "Ended SKY130 PDK migration on "`date` >> ${SKY130A}_install.log
 
 install-dist: install-dist-a
 
 install-dist-a:
-	echo "Starting SKY130 PDK migration on "`date` > ${SKY130A}_migrate.log
+	echo "Starting SKY130 PDK migration on "`date` > ${SKY130A}_install.log
 	${INSTALL} -source ${STAGING_PATH}/${SKY130A} \
 		-target ${DIST_PATH}/${SKY130A} \
 		-variable PDKPATH \
 		-local ${LOCAL_PATH}/${SKY130A} \
-		-link_from ${DIST_LINK_TARGETS} |& tee -a ${SKY130A}_migrate.log
-	echo "Ended SKY130 PDK migration on "`date` >> ${SKY130A}_migrate.log
+		-link_from ${DIST_LINK_TARGETS} |& tee -a ${SKY130A}_install.log
+	echo "Ended SKY130 PDK migration on "`date` >> ${SKY130A}_install.log
 
 clean: clean-a
 
@@ -715,6 +728,8 @@
 veryclean: veryclean-a
 
 veryclean-a: clean-a
+	${RM} ${SKY130A}_make.log
 	${RM} ${SKY130A}_install.log
+	# Legacy name
 	${RM} ${SKY130A}_migrate.log
 
diff --git a/sky130/custom/patches/sky130_fd_pr.patch b/sky130/custom/patches/sky130_fd_pr.patch
new file mode 100644
index 0000000..c91c789
--- /dev/null
+++ b/sky130/custom/patches/sky130_fd_pr.patch
@@ -0,0 +1,902 @@
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8.pm3.spice	2021-02-13 16:16:48.446571470 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8.pm3.spice	2021-02-13 15:53:01.687900225 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 1.45e-07 lmax = 1.55e-07 wmin = 1.255e-06 wmax = 1.265e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ff.pm3.spice	2021-02-13 16:16:48.265570547 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ff.pm3.spice	2021-02-13 15:53:01.479899064 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__fs.pm3.spice	2021-02-13 16:16:48.794573245 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__fs.pm3.spice	2021-02-13 15:53:02.070902363 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__leak.pm3.spice	2021-02-13 16:16:47.392566096 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__leak.pm3.spice	2021-02-13 15:53:00.631894331 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__sf.pm3.spice	2021-02-13 16:16:46.854563352 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__sf.pm3.spice	2021-02-13 15:53:00.085891283 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ss.pm3.spice	2021-02-13 16:16:47.763567988 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__ss.pm3.spice	2021-02-13 15:53:00.995896363 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice	2021-02-13 16:16:49.094574775 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt.pm3.spice	2021-02-13 15:53:02.357903964 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt_leak.pm3.spice	2021-02-13 16:16:48.008569237 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8__tt_leak.pm3.spice	2021-02-13 15:53:01.239897724 +0000
+@@ -27,8 +27,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8 d g s b sky130_fd_pr__nfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8__model.0 nmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt.pm3.spice	2021-02-13 16:16:51.364586351 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt.pm3.spice	2021-02-13 15:53:04.799917594 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 9.95e-07 lmax = 1.005e-06 wmin = 9.95e-07 wmax = 1.005e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ff.pm3.spice	2021-02-13 16:16:51.056584780 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ff.pm3.spice	2021-02-13 15:53:04.433915551 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__fs.pm3.spice	2021-02-13 16:16:51.280585923 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__fs.pm3.spice	2021-02-13 15:53:04.717917137 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__leak.pm3.spice	2021-02-13 16:16:51.721588171 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__leak.pm3.spice	2021-02-13 15:53:05.203919849 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__sf.pm3.spice	2021-02-13 16:16:52.500592144 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__sf.pm3.spice	2021-02-13 15:53:06.013924370 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ss.pm3.spice	2021-02-13 16:16:51.506587075 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__ss.pm3.spice	2021-02-13 15:53:04.939918376 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt.pm3.spice	2021-02-13 16:16:52.076589982 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt.pm3.spice	2021-02-13 15:53:05.583921970 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt_leak.pm3.spice	2021-02-13 16:16:52.284591043 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_01v8_lvt__tt_leak.pm3.spice	2021-02-13 15:53:05.776923047 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_01v8_lvt d g s b sky130_fd_pr__nfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_01v8_lvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 8e-06 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_03v3_nvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_03v3_nvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_03v3_nvt.pm3.spice	2021-02-13 16:17:04.307652354 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_03v3_nvt.pm3.spice	2021-02-13 15:53:17.687989528 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_03v3_nvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_03v3_nvt d g s b sky130_fd_pr__nfet_03v3_nvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_03v3_nvt d g s b sky130_fd_pr__nfet_03v3_nvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_03v3_nvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 4.95e-07 lmax = 5.05e-07 wmin = 9.995e-06 wmax = 1.0005e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_05v0_nvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_05v0_nvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_05v0_nvt.pm3.spice	2021-02-13 16:16:49.836578559 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_05v0_nvt.pm3.spice	2021-02-13 15:53:03.049907827 +0000
+@@ -32,8 +32,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_05v0_nvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_05v0_nvt d g s b sky130_fd_pr__nfet_05v0_nvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_05v0_nvt d g s b sky130_fd_pr__nfet_05v0_nvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_05v0_nvt__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 1.995e-06 lmax = 2.005e-06 wmin = 9.995e-06 wmax = 1.0005e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5.pm3.spice	2021-02-13 16:16:26.851461346 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5.pm3.spice	2021-02-13 15:52:40.128779895 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 4.95e-07 lmax = 5.05e-07 wmin = 9.995e-06 wmax = 1.0005e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ff.pm3.spice	2021-02-13 16:16:27.393464110 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ff.pm3.spice	2021-02-13 15:52:40.658782853 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__fs.pm3.spice	2021-02-13 16:16:26.670460423 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__fs.pm3.spice	2021-02-13 15:52:39.948778890 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__leak.pm3.spice	2021-02-13 16:16:27.666465502 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__leak.pm3.spice	2021-02-13 15:52:40.941784433 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__sf.pm3.spice	2021-02-13 16:16:25.750455731 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__sf.pm3.spice	2021-02-13 15:52:39.171774554 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ss.pm3.spice	2021-02-13 16:16:26.243458245 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__ss.pm3.spice	2021-02-13 15:52:39.581776842 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt.pm3.spice	2021-02-13 16:16:26.479459449 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt.pm3.spice	2021-02-13 15:52:39.765777869 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt_leak.pm3.spice	2021-02-13 16:16:25.941456706 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d10v5__tt_leak.pm3.spice	2021-02-13 15:52:39.313775346 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__nfet_g5v0d10v5 d g s b sky130_fd_pr__nfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d10v5__model.0 nmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0.pm3.spice	2021-02-13 16:16:44.980553796 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0.pm3.spice	2021-02-13 15:52:58.282881220 +0000
+@@ -35,8 +35,8 @@
+ * }
+ .subckt  sky130_fd_pr__nfet_g5v0d16v0__base d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 delvto = 0.0
+-msky130_fd_pr__nfet_g5v0d16v0__base d g s b sky130_fd_pr__nfet_g5v0d16v0__model_base l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1 delvto = 0.0
++msky130_fd_pr__nfet_g5v0d16v0__base d g s b sky130_fd_pr__nfet_g5v0d16v0__model_base l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__nfet_g5v0d16v0__model_base.0 nmos
+ * Model Flag Parameters
+ + lmin = 6.95e-007 lmax = 7.05e-007 wmin = 1.9995e-005 wmax = 2.00005e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0__subcircuit.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0__subcircuit.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0__subcircuit.pm3.spice	2021-02-13 16:16:45.151554667 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__nfet_g5v0d16v0__subcircuit.pm3.spice	2021-02-13 15:52:58.473882286 +0000
+@@ -13,11 +13,11 @@
+ * limitations under the License.
+ 
+ * SKY130 Spice File.
+-.subckt  sky130_fd_pr__nfet_g5v0d16v0 d g s b  w=5.0 l=0.7 nf=1 ad=0 as=0 pd=0 ps=0 nrd=0 nrs=0 delvto=0 m=1 sa=0.28 sb=2.41 sd=0 mult=1
++.subckt  sky130_fd_pr__nfet_g5v0d16v0 d g s b  w=5.0 l=0.7 ad=0 as=0 pd=0 ps=0 nrd=0 nrs=0 delvto=0 mf=1 m=1 sa=0.28 sb=2.41 sd=0 mult=1
+ .param  sky130_fd_pr__nfet_g5v0d16v0__rdiff=5.906500e+003 sky130_fd_pr__nfet_g5v0d16v0__rdiff_tc1=1.483000e-003 sky130_fd_pr__nfet_g5v0d16v0__rdiff_tc2=7.824000e-006
+ *.param sb_cadfixedvalue_nvhv=2.41
+ .param sb_cadfixedvalue_nvhv=1.585
+-xmain1 d1 g s b sky130_fd_pr__nfet_g5v0d16v0__base  w=w l=l nf=nf ad=0 as=as pd=0 ps=ps nrd=nrd nrs=nrs delvto=delvto mult=mult sa=sa sb=sb_cadfixedvalue_nvhv m=m
++xmain1 d1 g s b sky130_fd_pr__nfet_g5v0d16v0__base  w=w l=l ad=0 as=as pd=0 ps=ps nrd=nrd nrs=nrs delvto=delvto m=m mult=mult sa=sa sb=sb_cadfixedvalue_nvhv
+ rldd_nvhv d d1 R='(1/w)*sky130_fd_pr__nfet_g5v0d16v0__rdiff*sky130_fd_pr__nfet_g5v0d16v0__rdiff_mult' tc1 = 'sky130_fd_pr__nfet_g5v0d16v0__rdiff_tc1' tc2 = 'sky130_fd_pr__nfet_g5v0d16v0__rdiff_tc2'
+ dnw1 b d sky130_fd_pr__model__parasitic__diode_ps2nw  area='ad/2' pj='pd/2'
+ dnw2 b d1 sky130_fd_pr__model__parasitic__diode_ps2nw area='ad/2' pj='pd/2'
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8.pm3.spice	2021-02-13 16:17:02.713644226 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8.pm3.spice	2021-02-13 15:53:16.062980458 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 1.45e-07 lmax = 1.55e-07 wmin = 1.255e-06 wmax = 1.265e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ff.pm3.spice	2021-02-13 16:17:02.578643537 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ff.pm3.spice	2021-02-13 15:53:15.945979805 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__fs.pm3.spice	2021-02-13 16:17:02.062640906 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__fs.pm3.spice	2021-02-13 15:53:15.462977109 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__leak.pm3.spice	2021-02-13 16:17:01.799639565 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__leak.pm3.spice	2021-02-13 15:53:15.217975742 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__sf.pm3.spice	2021-02-13 16:17:01.291636974 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__sf.pm3.spice	2021-02-13 15:53:14.834973604 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ss.pm3.spice	2021-02-13 16:17:00.586633379 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__ss.pm3.spice	2021-02-13 15:53:14.017969044 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt.pm3.spice	2021-02-13 16:17:00.939635179 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt.pm3.spice	2021-02-13 15:53:14.425971321 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt_leak.pm3.spice	2021-02-13 16:17:01.599638545 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8__tt_leak.pm3.spice	2021-02-13 15:53:15.046974787 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8 d g s b sky130_fd_pr__pfet_01v8__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt.pm3.spice	2021-02-13 16:16:36.839512280 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt.pm3.spice	2021-02-13 15:52:50.080835441 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 1.45e-07 lmax = 1.55e-07 wmin = 1.255e-06 wmax = 1.265e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ff.pm3.spice	2021-02-13 16:16:35.030503055 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ff.pm3.spice	2021-02-13 15:52:48.267825322 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__fs.pm3.spice	2021-02-13 16:16:36.704511592 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__fs.pm3.spice	2021-02-13 15:52:49.959834766 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__leak.pm3.spice	2021-02-13 16:16:35.384504860 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__leak.pm3.spice	2021-02-13 15:52:48.593827142 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__sf.pm3.spice	2021-02-13 16:16:35.988507940 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__sf.pm3.spice	2021-02-13 15:52:49.212830597 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ss.pm3.spice	2021-02-13 16:16:37.473515513 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__ss.pm3.spice	2021-02-13 15:52:50.673838751 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt.pm3.spice	2021-02-13 16:16:35.648506207 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt.pm3.spice	2021-02-13 15:52:48.871828693 +0000
+@@ -29,9 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
+-
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt_leak.pm3.spice	2021-02-13 16:16:37.118513703 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_hvt__tt_leak.pm3.spice	2021-02-13 15:52:50.348836937 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_hvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_hvt d g s b sky130_fd_pr__pfet_01v8_hvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_hvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 2.0e-05 lmax = 0.0001 wmin = 7.0e-06 wmax = 0.0001
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt.pm3.spice	2021-02-13 16:16:58.714623833 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt.pm3.spice	2021-02-13 15:53:12.203958919 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 9.95e-07 lmax = 1.005e-06 wmin = 9.95e-07 wmax = 1.005e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ff.pm3.spice	2021-02-13 16:17:00.038630584 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ff.pm3.spice	2021-02-13 15:53:13.436965801 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__fs.pm3.spice	2021-02-13 16:16:59.704628881 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__fs.pm3.spice	2021-02-13 15:53:13.086963847 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__leak.pm3.spice	2021-02-13 16:16:59.907629916 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__leak.pm3.spice	2021-02-13 15:53:13.303965058 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__sf.pm3.spice	2021-02-13 16:16:58.811624327 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__sf.pm3.spice	2021-02-13 15:53:12.297959444 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ss.pm3.spice	2021-02-13 16:16:59.417627418 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__ss.pm3.spice	2021-02-13 15:53:12.865962614 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt.pm3.spice	2021-02-13 16:16:59.246626545 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt.pm3.spice	2021-02-13 15:53:12.732961871 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt_leak.pm3.spice	2021-02-13 16:16:59.073625663 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_lvt__tt_leak.pm3.spice	2021-02-13 15:53:12.558960901 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_lvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_lvt d g s b sky130_fd_pr__pfet_01v8_lvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_lvt__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 7e-06 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_mvt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_mvt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_mvt.pm3.spice	2021-02-13 16:17:03.099646194 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_01v8_mvt.pm3.spice	2021-02-13 15:53:16.483982808 +0000
+@@ -31,8 +31,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_01v8_mvt d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_01v8_mvt d g s b sky130_fd_pr__pfet_01v8_mvt__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_01v8_mvt d g s b sky130_fd_pr__pfet_01v8_mvt__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_01v8_mvt__model.0 pmos
+ * Model Flag Parameters
+ + lmin = 1.45e-007 lmax = 1.55e-007 wmin = 1.675e-006 wmax = 1.685e-6
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5.pm3.spice	2021-02-13 16:16:43.220544820 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5.pm3.spice	2021-02-13 15:52:56.529871436 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 4.95e-07 lmax = 5.05e-07 wmin = 9.995e-06 wmax = 1.0005e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ff.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ff.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ff.pm3.spice	2021-02-13 16:16:42.171539471 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ff.pm3.spice	2021-02-13 15:52:55.536865894 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__fs.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__fs.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__fs.pm3.spice	2021-02-13 16:16:41.784537498 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__fs.pm3.spice	2021-02-13 15:52:55.094863426 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__leak.pm3.spice	2021-02-13 16:16:42.519541246 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__leak.pm3.spice	2021-02-13 15:52:55.841867596 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__sf.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__sf.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__sf.pm3.spice	2021-02-13 16:16:43.581546661 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__sf.pm3.spice	2021-02-13 15:52:56.899873501 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ss.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ss.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ss.pm3.spice	2021-02-13 16:16:43.046543933 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__ss.pm3.spice	2021-02-13 15:52:56.350870437 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt.pm3.spice	2021-02-13 16:16:42.685542092 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt.pm3.spice	2021-02-13 15:52:56.010868539 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt_leak.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt_leak.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt_leak.pm3.spice	2021-02-13 16:16:41.929538237 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d10v5__tt_leak.pm3.spice	2021-02-13 15:52:55.235864213 +0000
+@@ -29,8 +29,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d10v5 d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 
+-msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1.0
++msky130_fd_pr__pfet_g5v0d10v5 d g s b sky130_fd_pr__pfet_g5v0d10v5__model l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d10v5__model.0 pmos
+ * DC IV MOS Parameters
+ + lmin = 2.0e-05 lmax = 1.0e-04 wmin = 2.0e-05 wmax = 1.0e-4
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0.pm3.spice	2021-02-13 16:16:28.870471642 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0.pm3.spice	2021-02-13 15:52:42.219791566 +0000
+@@ -35,8 +35,8 @@
+ * }
+ .subckt  sky130_fd_pr__pfet_g5v0d16v0__base d g s b
+ + 
+-.param  l = 1 w = 1 nf = 1.0 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 delvto = 0.0
+-msky130_fd_pr__pfet_g5v0d16v0__base d g s b sky130_fd_pr__pfet_g5v0d16v0__model_base l = {l} w = {w} nf = {nf} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} 
++.param  l = 1 w = 1 ad = 0 as = 0 pd = 0 ps = 0 nrd = 0 nrs = 0 sa = 0 sb = 0 sd = 0 mult = 1 nf = 1 delvto = 0.0
++msky130_fd_pr__pfet_g5v0d16v0__base d g s b sky130_fd_pr__pfet_g5v0d16v0__model_base l = {l} w = {w} ad = {ad} as = {as} pd = {pd} ps = {ps} nrd = {nrd} nrs = {nrs} sa = {sa} sb = {sb} sd = {sd} nf = {nf}
+ .model sky130_fd_pr__pfet_g5v0d16v0__model_base.0 pmos
+ * Model Flag Parameters
+ + lmin = 0.655e-06 lmax = 0.665e-06 wmin = 4.990000e-006 wmax = 5.010000e-5
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0__subcircuit.pm3.spice sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0__subcircuit.pm3.spice
+--- sky130A/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0__subcircuit.pm3.spice	2021-02-13 16:16:29.150473070 +0000
++++ sky130A_patched/libs.ref/sky130_fd_pr/spice/sky130_fd_pr__pfet_g5v0d16v0__subcircuit.pm3.spice	2021-02-13 15:52:42.512793201 +0000
+@@ -13,13 +13,13 @@
+ * limitations under the License.
+ 
+ * SKY130 Spice File.
+-.subckt  sky130_fd_pr__pfet_g5v0d16v0 d g s b  w=5.0 l=0.66 nf=1 ad=0 as=0 pd=0 ps=0.0 m=1 nrd=0 nrs=0 sa=0.28 sb=1.19 sd=0 mult=1
++.subckt  sky130_fd_pr__pfet_g5v0d16v0 d g s b  w=5.0 l=0.66 ad=0 as=0 pd=0 ps=0.0 m=1 mf=1 nrd=0 nrs=0 sa=0.28 sb=1.19 sd=0 mult=1
+ .param rdiff='8.900000e+003*sky130_fd_pr__pfet_g5v0d16v0__rdiff_mult'
+ .param rdiff_tc1=2.500000e-003
+ .param rdiff_tc2=2.200000e-006
+ .param sb_cadfixedvalue_pvhv=1.19
+ * sd intentionally left out for sky130_fd_pr__pfet_g5v0d16v0 devices because poly-poly spacing not uniform in DE FET
+-xmain1 d1 g s b sky130_fd_pr__pfet_g5v0d16v0__base  w=w l=l nf=nf ad=0 as=as pd=0 ps=ps nrd=nrd nrs=nrs m=m mult=mult sa=sa sb=sb_cadfixedvalue_pvhv
++xmain1 d1 g s b sky130_fd_pr__pfet_g5v0d16v0__base  w=w l=l ad=0 as=as pd=0 ps=ps nrd=nrd nrs=nrs m=m mult=mult sa=sa sb=sb_cadfixedvalue_pvhv
+ rldd d d1 '(1/w)*rdiff' tc1 = 'rdiff_tc1' tc2 = 'rdiff_tc2'
+ dnw1 d b sky130_fd_pr__pfet_g5v0d16v0__parasitic__diode_pw2dn area='ad/2' pj='pd/2'
+ dnw2 d1 b sky130_fd_pr__pfet_g5v0d16v0__parasitic__diode_pw2dn area='ad/2' pj='pd/2'
+diff -Naur '--exclude=*.gds' '--exclude=*.mag' '--exclude=*.ext' sky130A/libs.tech/ngspice/r+c.mrp1monte.spice sky130A_patched/libs.tech/ngspice/r+c.mrp1monte.spice
+--- sky130A/libs.tech/ngspice/r+c.mrp1monte.spice	2021-02-13 16:16:04.480347264 +0000
++++ sky130A_patched/libs.tech/ngspice/r+c.mrp1monte.spice	2021-02-13 15:52:18.387658549 +0000
+@@ -30,6 +30,6 @@
+ .param  w = 1 l = 0 mult = 1 r = 0 tc1 = {tc1rsgpu*sky130_fd_pr__res_generic_po__tc1_slope} tc2 = {tc2rsgpu*sky130_fd_pr__res_generic_po__tc2_slope}
+ + rp1_mm = {rp1*sky130_fd_pr__res_generic_po__slope/sqrt(2.0*l*w*mult+rp1/100000.0)}
+ + r_tot = {(rp1+rp1_mm)*l/(w-1e6*(-tol_poly-poly_dw))+r}
+-rsky130_fd_pr__res_generic_po r0 r1 sky130_fd_pr__res_generic_po__monte r = {r_tot} tc1 = {tc1} tc2 = {tc2}
++sky130_fd_pr__res_generic_po r0 r1 sky130_fd_pr__res_generic_po__monte r = {r_tot} tc1r = {tc1} tc2r = {tc2}
+ .model sky130_fd_pr__res_generic_po__monte r tref = 30.0
+ .ends sky130_fd_pr__res_generic_po
diff --git a/sky130/xcircuit/sky130_fd_pr.lps b/sky130/xcircuit/sky130_fd_pr.lps
index 7881478..501168b 100644
--- a/sky130/xcircuit/sky130_fd_pr.lps
+++ b/sky130/xcircuit/sky130_fd_pr.lps
@@ -1,21 +1,17 @@
 %! PostScript set of library objects for XCircuit
-%  Version: 3.9
+%  Version: 3.10
 %  Library name is: sky130_fd_pr
 %  Author:  <tim@stravinsky>
 %
 
 % Depend sky130_fd_pr::NPNModel generic::arrowhead
-% Depend ngspice::Vsource analog::source
-% Depend ngspice::ACsource analog::source generic::sinusoid
-% Depend ngspice::Vpwl analog::source
-% Depend ngspice::Switch generic::circle generic::arrowhead
-% Depend ngspice::Vpulse analog::source
 
 % XCircuitLib library objects
-/sky130_fd_pr::pMOS {
-<</@subs (avdd) /p_yps2 48 /p_xps2 16 /p_yps1 -8 /p_xps1 16 /p_yps 16 /p_xps 16 /p_rot 
-0 /@fingers (1) /@class (M) /@width (1u) /@length (0.18u) /@model (pfet) /@index 
-(?) /p_jst 28 >> begingate
+/sky130_fd_pr::pMOS3term {
+<</@mult 1 /@model (pfet_01v8) 
+(lindex {pfet_01v8 pfet_01v8_lvt pfet_01v8_hvt pfet_g5v0d10v5} 0) pop /@subs 
+(avdd) /p_yps2 48 /p_xps2 16 /p_yps1 0 /p_xps1 16 /p_yps 16 /p_xps 16 /p_rot 0 /@fingers 
+(1) /@class (X) /@width (1) /@length (0.18) /@index (?) /p_jst 28 >> begingate
 1 1.000 -44 -28 -44 28 2 polygon
 1 1.000 -60 0 -64 0 2 polygon
 1 1.000 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
@@ -25,13 +21,15 @@
 (D) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
 (G) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
 0.180 0.545 0.341 scb
-mark @fingers ( M=) @length ( L=) @width ( W=) @model ( ) @subs ( %pD %pG %pS ) 
-@index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 -196 -139 infolabel
+mark @fingers ( NF=) @mult ( M=) @length ( L=) @width ( W=) @model 
+( sky130_fd_pr__) @subs ( %pD %pG %pS ) @index @class (spice:) 
+{/Times-Roman cf} ctmk 4 360.000 1.000 -196 -139 infolabel
 mark ( %x %y) @width ( ) @length (sim:p %pG %pD %pS ) {/Times-Roman cf} ctmk 4 
 0.000 1.000 -196 -187 infolabel
 0.647 0.165 0.165 scb
-mark @fingers {hS} (=) {hS} (M) {CR} @length (=) {Tf} (L) {hS} {CR} @width (=) 
-{Ts} (W) {/Times-Roman cf} ctmk p_jst p_rot 0.700 p_xps1 p_yps1 label
+mark @fingers (NF=) {CR} @mult {hS} (=) {hS} (X) {CR} @length (=) {Tf} (L) {hS} 
+{CR} @width (=) {Ts} (W) {/Times-Roman cf} ctmk p_jst p_rot 0.700 p_xps1 p_yps1 
+label
 0.000 0.000 1.000 scb
 mark @index @class {/Times-Roman cf} ctmk 16 p_rot 0.700 p_xps2 p_yps2 label
 sce
@@ -39,46 +37,17 @@
 endgate
 } def
 
-1.000 90.000 <</p_yps -32 /p_xps1 32 /p_yps1 -40 /p_rot 270 /p_xps2 -32 >> /sky130_fd_pr::pMOS libinst
-<</@model (hvpfet) /@length (0.36u) /@subs (dvdd3) >> /sky130_fd_pr::pMOS libinst
-1.000 90.000 <</p_yps -32 /p_xps1 32 /p_yps1 -40 /p_rot 270 /p_xps2 -32 /@model (hvpfet) 
-/@length (0.36u) /@subs (dvdd3) >> /sky130_fd_pr::pMOS libinst
+1.000 90.000 <</@model (pfet_01v8) /p_xps 32 /p_yps -32 /p_xps1 48 /p_yps1 -40 /p_rot 270 
+/p_xps2 -32 >> /sky130_fd_pr::pMOS3term libinst
+<</@model (pfet_01v8) /@length (0.50) /@subs (dvdd3) >> /sky130_fd_pr::pMOS3term libinst
+1.000 90.000 <</@model (pfet_01v8) /p_xps 32 /p_yps -32 /p_xps1 48 /p_yps1 -40 /p_rot 270 
+/p_xps2 -32 /@length (0.50) /@subs (dvdd3) >> /sky130_fd_pr::pMOS3term libinst
 
-/sky130_fd_pr::pMOS1finger {
-<</p_yps2 -16 /p_xps2 16 /p_yps1 8 /p_xps1 16 /p_yps 40 /p_xps 16 /p_rot 0 /@subs 
-(avdd) /@class (M) /@width (1u) /@length (0.18u) /@model (pfet) /@index 
-(?) /p_jst 28 >> begingate
-1 1.000 -44 -28 -44 28 2 polygon
-1 1.000 -60 0 -64 0 2 polygon
-1 1.000 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
-1 1.000 -52 0 8 0.000 360.000 xcarc
-1.000 0.000 0.000 scb
-(S) {/Times-Roman cf} 2 9 0.000 1.000 0 64 pinlabel
-(D) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
-(G) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
-0.180 0.545 0.341 scb
-mark @length ( L=) @width ( W=) @model ( ) @subs ( %pD %pG %pS ) @index @class 
-(spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 -196 -139 infolabel
-mark ( %x %y) @width ( ) @length (sim:p %pG %pD %pS ) {/Times-Roman cf} ctmk 4 
-0.000 1.000 -196 -187 infolabel
-0.647 0.165 0.165 scb
-mark @length (=) {Tf} (L) {hS} {CR} @width (=) {Ts} (W) {/Times-Roman cf} ctmk 
-p_jst p_rot 0.700 p_xps2 p_yps2 label
-0.000 0.000 1.000 scb
-mark @index @class {/Times-Roman cf} ctmk 16 p_rot 0.700 p_xps p_yps label
-sce
-mark @model {/Times-RomanISO cf} ctmk 16 p_rot 0.700 p_xps1 p_yps1 label
-endgate
-} def
-
-1.000 90.000 <</p_yps2 -32 /p_yps1 -24 /p_xps2 32 /p_rot 270 /p_xps -16 >> /sky130_fd_pr::pMOS1finger libinst
-<</@model (hvpfet) /@length (0.36u) /@subs (dvdd3) >> /sky130_fd_pr::pMOS1finger libinst
-1.000 90.000 <</p_yps2 -32 /p_yps1 -24 /p_xps2 32 /p_rot 270 /p_xps -16 /@model (hvpfet) 
-/@length (0.36u) /@subs (dvdd3) >> /sky130_fd_pr::pMOS1finger libinst
-
-/sky130_fd_pr::nMOS {
+/sky130_fd_pr::nMOS3term {
 <</@subs (agnd) /p_yps2 -16 /p_xps2 16 /p_yps1 8 /p_xps1 16 /p_yps 40 /p_xps 16 /p_rot 
-0 /@fingers (1) /@class (M) /@width (1u) /@length (0.18u) /@model (nfet) /@index 
+0 /@fingers (1) /@class (X) /@width (1) /@length (0.18) /@mult 1 /@model 
+(nfet_01v8) 
+(lindex {nfet_01v8 nfet_01v8_lvt nfet_01v8_hvt nfet_g5v0d10v5} 0) pop /@index 
 (?) /p_jst 28 >> begingate
 1 1.000 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
 1 1.000 -44 -28 -44 28 2 polygon
@@ -88,12 +57,13 @@
 (S) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
 (D) {/Times-Roman cf} 2 9 0.000 1.000 0 64 pinlabel
 0.180 0.545 0.341 scb
-mark @fingers ( m=) @length ( l=) @width ( w=) @model ( ) @subs ( %pD %pG %pS ) 
-@index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 -244 -139 infolabel
+mark @fingers ( m=) @length ( l=) @width ( w=) @model ( sky130_fd_pr__) @subs 
+( %pD %pG %pS ) @index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 
+-244 -139 infolabel
 mark ( %x %y) @width ( ) @length (sim:n %pG %pD %pS ) {/Times-Roman cf} ctmk 4 
 0.000 1.000 -244 -187 infolabel
 0.647 0.165 0.165 scb
-mark @fingers (=) {Tf} {Tf} (M) {CR} @length (=) {Tf} (L) {hS} {CR} @width (=) 
+mark @fingers (=) {Tf} {Tf} (X) {CR} @length (=) {Tf} (L) {hS} {CR} @width (=) 
 {Ts} (W) {/Times-Roman cf} ctmk p_jst p_rot 0.700 p_xps2 p_yps2 label
 0.000 0.000 1.000 scb
 mark @index @class {/Times-Roman cf} ctmk 20 p_rot 0.700 p_xps p_yps label
@@ -102,43 +72,6 @@
 endgate
 } def
 
-1.000 90.000 <</p_yps1 -24 /p_xps2 32 /p_yps2 -32 /p_rot 270 /p_xps -32 >> /sky130_fd_pr::nMOS libinst
-<</p_jst 28 /p_xps2 16 /p_yps2 -16 /@model (hvnfet) /@length (0.36u) /@subs 
-(dgnd) >> /sky130_fd_pr::nMOS libinst
-1.000 90.000 <</p_yps2 -32 /p_yps1 -24 /p_xps2 32 /p_rot 270 /p_xps -32 /@model (hvnfet) 
-/@length (0.36u) /@subs (dgnd) >> /sky130_fd_pr::nMOS libinst
-
-/sky130_fd_pr::nMOS1finger {
-<</@subs (agnd) /p_yps2 -16 /p_xps2 16 /p_yps1 8 /p_xps1 16 /p_yps 40 /p_xps 16 /p_rot 
-0 /@class (M) /@width (1u) /@length (0.18u) /@model (nfet) /@index (?) /p_jst 
-28 >> begingate
-1 1.000 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
-1 1.000 -44 -28 -44 28 2 polygon
-1 1.000 -44 0 -64 0 2 polygon
-1.000 0.000 0.000 scb
-(G) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
-(S) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
-(D) {/Times-Roman cf} 2 9 0.000 1.000 0 64 pinlabel
-0.180 0.545 0.341 scb
-mark @length ( l=) @width ( w=) @model ( ) @subs ( %pD %pG %pS ) @index @class 
-(spice:) {/Times-Roman cf} ctmk 4 360.000 1.000 -244 -139 infolabel
-mark ( %x %y) @width ( ) @length (sim:n %pG %pD %pS ) {/Times-Roman cf} ctmk 4 
-0.000 1.000 -244 -187 infolabel
-0.647 0.165 0.165 scb
-mark @length (=) {Tf} (L) {hS} {CR} @width (=) {Ts} (W) {/Times-Roman cf} ctmk 
-p_jst p_rot 0.700 p_xps2 p_yps2 label
-0.000 0.000 1.000 scb
-mark @index @class {/Times-Roman cf} ctmk 20 p_rot 0.700 p_xps p_yps label
-sce
-mark @model {/Times-RomanISO cf} ctmk 20 p_rot 0.700 p_xps1 p_yps1 label
-endgate
-} def
-
-1.000 90.000 <</p_yps2 -32 /p_yps1 -24 /p_xps2 32 /p_rot 270 /p_xps -32 >> /sky130_fd_pr::nMOS1finger libinst
-<</@model (hvnfet) /@length (0.36u) /@subs (dgnd) >> /sky130_fd_pr::nMOS1finger libinst
-1.000 90.000 <</p_yps2 -32 /p_yps1 -24 /p_xps2 32 /p_rot 270 /p_xps -32 /@model (hvnfet) 
-/@length (0.36u) /@subs (dgnd) >> /sky130_fd_pr::nMOS1finger libinst
-
 /generic::arrowhead {
 % nonetwork
 begingate
@@ -153,8 +86,10 @@
 
 /sky130_fd_pr::NPNModel {
 <</@subs (agnd) /p_yps2 56 /p_xps2 16 /p_yps1 0 /p_xps1 16 /p_yps 24 /p_xps 16 /p_rot 
-0 /@length (10.16u) /@width (0.2u) /@m (1) /@model (bipolar) /@index (?) /@class 
-(Q) >> begingate
+0 /@length (10.16) /@width (0.2) /@m (1) /@model 
+(rf_npn_05v5_W1p00L1p00) 
+(lindex {rf_npn_05v5_W1p00L1p00 rf_npn_05v5_W1p00L2p00} 0) pop /@index (?) /@class 
+(X) >> begingate
 1 1.000 -48 0 -64 0 2 polygon
 1 1.000 -48 48 -48 -48 2 polygon
 1 1.000 0 48 -48 22 2 polygon
@@ -167,26 +102,29 @@
 (B) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
 (E) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
 0.180 0.545 0.341 scb
-mark @m ( M=) @length ( L=) @width ( W=) @model ( ) @subs ( %pC %pB %pE ) 
-@index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 -244 -139 infolabel
+mark @m ( M=) @length ( L=) @width ( W=) @model ( sky130_fd_pr__) @subs 
+( %pC %pB %pE ) @index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 
+-244 -139 infolabel
 (sim:b %pB %pE %pC) {/Times-Roman cf} 2 4 0.000 1.000 -244 -187 infolabel
 0.000 0.000 1.000 scb
 mark @index @class {/Times-Roman cf} ctmk 16 p_rot 0.700 p_xps2 p_yps2 label
 sce
 mark @model {/Times-RomanISO cf} ctmk 16 p_rot 0.700 p_xps p_yps label
 0.647 0.165 0.165 scb
-mark @m {Tf} (=) {Tf} (M) {CR} @length {Tf} (=) {Tf} (L) {CR} @width {Ts} {hS} 
+mark @m {Tf} (=) {Tf} (X) {CR} @length {Tf} (=) {Tf} (L) {CR} @width {Ts} {hS} 
 (=) {Ts} {hS} (W) {/Times-Roman cf} ctmk 28 p_rot 0.700 p_xps1 p_yps1 label
 endgate
 } def
 
-1.000 90.000 <</p_yps -40 /p_xps2 -32 /p_xps 32 /p_xps1 48 /p_yps1 -32 /p_rot 270 >> /sky130_fd_pr::NPNModel libinst
+1.000 90.000 <</@model (rf_npn_05v5_W1p00L1p00) /p_yps -40 /p_xps2 -32 /p_xps 32 /p_xps1 48 
+/p_yps1 -32 /p_rot 270 >> /sky130_fd_pr::NPNModel libinst
 
-/sky130_fd_pr::ResModel {
-<</@substype (sub) (lindex {sub well} 0) pop /@subs (avdd) /@width (1u) /@length 
-(1u) /p_yps2 -48 /p_xps2 32 /@model (resistor) /p_yps1 0 /p_xps1 32 /p_yps 
-32 /p_xps 32 /p_rot 0 /@class (R) /@value (1.0) /@units (k) /@index (?) /p_jst 
-20 >> begingate
+/sky130_fd_pr::HighResModel {
+<</@substype (sub) (lindex {sub well} 0) pop /@subs (avdd) /@width (1) /@length 
+(1) /p_yps2 -48 /p_xps2 32 /@model (res_high_po_0p35) 
+(lindex {res_high_po_0p35 res_high_po_0p69 res_high_po_1p41 res_high_po_2p85 res_high_po_5p73} 0) pop /p_yps1 
+0 /p_xps1 32 /p_yps 32 /p_xps 32 /p_rot 0 /@class (X) /@value (1.0) /@units 
+(k) /@index (?) /p_jst 20 >> begingate
 1 1.000 0 64 0 36 2 polygon
 1 1.000 0 -64 0 -36 2 polygon
 1 1.000 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
@@ -195,30 +133,24 @@
 (2) {/Times-Roman cf} 2 13 0.000 1.000 0 -64 pinlabel
 0.180 0.545 0.341 scb
 mark @subs (=) @substype ( ) @width ( W=) @length ( L=) @units @value ( R=) 
-@model ( %p1 %p2 ) @index @class (spice:) {/Times-Roman cf} ctmk 4 0.000 1.000 
--208 -160 infolabel
+@model ( %p1 %p2 sky130_fd_pr__) @index @class (spice:) {/Times-Roman cf} ctmk 
+4 0.000 1.000 -208 -160 infolabel
 (sim:r %p1 %p2) {/Times-Roman cf} 2 4 0.000 1.000 -208 -208 infolabel
 0.647 0.165 0.165 scb
 mark (W) {/Symbol cf} @units {hS} @value {/Times-Roman cf} ctmk p_jst p_rot 
 0.700 p_xps1 p_yps1 label
-0.180 0.545 0.341 scb
-mark @index @class (pcb:) {/Times-Roman cf} ctmk 20 0.000 1.000 -208 -256 
-infolabel
 0.000 0.000 1.000 scb
 mark @index @class {/Times-Roman cf} ctmk 20 p_rot 0.700 p_xps p_yps label
-0.647 0.165 0.165 scb
+sce
 mark @model {/Times-RomanISO cf} ctmk 16 p_rot 0.700 p_xps2 p_yps2 label
 endgate
 } def
 
-1.000 90.000 <</@substype (sub) /p_xps -32 /p_yps1 -32 /p_yps -16 /p_xps2 80 /p_yps2 -32 
-/p_rot 270 >> /sky130_fd_pr::ResModel libinst
-
 /sky130_fd_pr::MiMCap {
 <</@substype (sub) (lindex {sub well} 0) pop /@subs (agnd) /@fingers (1) /@length 
-(1u) /@width (1u) /p_yps2 -8 /p_xps2 48 /p_yps1 24 /p_xps1 48 /p_yps 
-56 /p_xps 48 /p_rot 0 /@class (C) /@value (1.0) /@units (p) /@index (?) /p_jst 
-20 >> begingate
+(1) /@width (1) /p_yps2 -8 /p_xps2 48 /p_yps1 24 /p_xps1 48 /p_yps 56 /p_xps 
+48 /p_rot 0 /@class (X) /@value (1.0) /@units (p) /@index (?) /p_jst 20 >> 
+begingate
 1 1.000 0 -64 0 -6 2 polygon
 1 1.000 0 64 0 6 2 polygon
 1 1.000 -32 6 32 6 2 polygon
@@ -233,12 +165,10 @@
 0.647 0.165 0.165 scb
 mark (F) @units {hS} @value {/Times-Roman cf} ctmk p_jst p_rot 0.700 p_xps1 
 p_yps1 label
-0.180 0.545 0.341 scb
-mark @index (pcb:C) {/Times-Roman cf} ctmk 20 0.000 1.000 -208 -256 infolabel
 0.000 0.000 1.000 scb
 mark @index @class {/Times-Roman cf} ctmk 20 p_rot 0.700 p_xps p_yps label
 0.647 0.165 0.165 scb
-mark @fingers {Tf} (=) {Tf} (M) {CR} @length {Tf} (=) {Tf} (L) {CR} @width {Ts} 
+mark @fingers {Tf} (=) {Tf} (X) {CR} @length {Tf} (=) {Tf} (L) {CR} @width {Ts} 
 {hS} (=) {Ts} {hS} (W) {/Times-RomanISO cf} ctmk 28 p_rot 0.700 p_xps2 p_yps2 
 label
 sce
@@ -250,7 +180,7 @@
 /p_rot 270 >> /sky130_fd_pr::MiMCap libinst
 
 /sky130_fd_pr::IndModel {
-<</@size (175u) /@width (2.5u) /@sep (2.5u) /@turns (6.5) /@substype (sub) 
+<</@size (175) /@width (2.5) /@sep (2.5) /@turns (6.5) /@substype (sub) 
 (lindex {sub well} 0) pop /@subs (agnd) /p_yps2 -48 /p_xps2 32 /@model 
 (inductor) /p_yps1 -16 /p_xps1 32 /p_yps 16 /p_xps 32 /@value (10) /@units (n) /@index 
 (?) /p_jst 20 /p_rot 0 >> begingate
@@ -274,8 +204,6 @@
 0.647 0.165 0.165 scb
 mark (H) @units {hS} @value {/Times-Roman cf} ctmk p_jst p_rot 0.700 p_xps1 
 p_yps1 label
-0.180 0.545 0.341 scb
-mark @index (pcb:L) {/Times-Roman cf} ctmk 20 0.000 1.000 -208 -256 infolabel
 0.000 0.000 1.000 scb
 mark @index (L) {/Times-Roman cf} ctmk 20 p_rot 0.700 p_xps p_yps label
 0.647 0.165 0.165 scb
diff --git a/sky130/xcircuit/sky130_fd_sc_hd.lps b/sky130/xcircuit/sky130_fd_sc_hd.lps
index 939039f..d6909e8 100644
--- a/sky130/xcircuit/sky130_fd_sc_hd.lps
+++ b/sky130/xcircuit/sky130_fd_sc_hd.lps
@@ -1,352 +1,331 @@
 %! PostScript set of library objects for XCircuit
-%  Version: 3.6
-%  Library name is: sky130_fd_sc_hd.lps
-%  Author: R. Timothy Edwards <tim.edwards@multigig.com>
+%  Version: 3.10
+%  Library name is: sky130_fd_sc_hd
+%  Author:  <tim@stravinsky>
 %
 
+
 % XCircuitLib library objects
 /sky130_fd_sc_hd::inv {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () /strength (1) >> begingate
-0 1.00 -32 -40 -32 40 40 0 3 polygon
-1 1.00 48 0 8 0.00 360.00 xcarc
-1 1.00 -32 0 -48 0 2 polygon
-1 1.00 56 0 64 0 2 polygon
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) /@strength (1) >> begingate
+0 1.000 -32 -40 -32 40 40 0 3 polygon
+1 1.000 48 0 8 0.000 360.000 xcarc
+1 1.000 -32 0 -48 0 2 polygon
+1 1.000 56 0 64 0 2 polygon
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -48 0 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -48 0 pinlabel
 0.180 0.545 0.341 scb
-mark voltage strength ( %pA %pY invX) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -32 -136 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -32 -96 infolabel
+mark @strength ( %pA %pY invX) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -32 -136 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -32 -96 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.60 -8 0 label
-mark strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0 0.60 0 24 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.600 -8 0 label
+mark @strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0.000 0.600 0 24 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 8 -24 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 8 -24 label
 endgate
 } def
 
-<</strength (2) >> /sky130_fd_sc_hd::inv libinst
-<</strength (4) >> /sky130_fd_sc_hd::inv libinst
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::inv libinst
-<</voltage (_3V) /strength (2) /vdd (dvdd3) >> /sky130_fd_sc_hd::inv libinst
-<</voltage (_3V) /strength (4) /vdd (dvdd3) >> /sky130_fd_sc_hd::inv libinst
+<</@strength (2) >> /sky130_fd_sc_hd::inv libinst
+<</@strength (4) >> /sky130_fd_sc_hd::inv libinst
 
 /sky130_fd_sc_hd::buf {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () /strength (2) >> begingate
-0 1.00 -32 -40 -32 40 40 0 3 polygon
-1 1.00 -32 0 -48 0 2 polygon
-1 1.00 40 0 64 0 2 polygon
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) /@strength (2) >> begingate
+0 1.000 -32 -40 -32 40 40 0 3 polygon
+1 1.000 -32 0 -48 0 2 polygon
+1 1.000 40 0 64 0 2 polygon
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -48 0 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -48 0 pinlabel
 0.180 0.545 0.341 scb
-mark voltage strength ( %pA %pY bufX) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -32 -112 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -32 -80 infolabel
+mark @strength ( %pA %pY bufX) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -32 -112 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -32 -80 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-RomanISO cf} ctmk 21 0 0.50 -8 0 label
-mark strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0 0.50 8 24 label
+mark {/Times-RomanISO cf} ctmk 21 0.000 0.500 -8 0 label
+mark @strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0.000 0.500 8 24 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 16 0 0.60 24 -32 label
+mark @index (U) {/Times-RomanISO cf} ctmk 16 0.000 0.600 24 -32 label
 endgate
 } def
 
-<</strength (4) >> /sky130_fd_sc_hd::buf libinst
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::buf libinst
-<</voltage (_3V) /strength (4) /vdd (dvdd3) >> /sky130_fd_sc_hd::buf libinst
+<</@strength (4) >> /sky130_fd_sc_hd::buf libinst
 
 /sky130_fd_sc_hd::nand2 {
-<</gnd (dgnd) /vdd (dvdd) /voltage () /@index (?) >> begingate
-1 1.00 0 -48 -64 -48 -64 48 0 48 4 polygon
-1 1.00 56 0 8 0.00 360.00 xcarc
-1 1.00 0 0 48 -90.00 90.00 xcarc
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 0 -48 -64 -48 -64 48 0 48 4 polygon
+1 1.000 56 0 8 0.000 360.000 xcarc
+1 1.000 0 0 48 -90.000 90.000 xcarc
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 -32 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 -32 pinlabel
 sce
-1 1.00 -64 -48 -64 48 2 polygon
+1 1.000 -64 -48 -64 48 2 polygon
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pY nand2X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
+mark ( %pA %pB %pY nand2X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 0.180 0.545 0.341 scb
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nand2 libinst
-
 /sky130_fd_sc_hd::nand3 {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () >> begingate
-1 1.00 0 -48 -64 -48 -64 48 0 48 4 polygon
-1 1.00 56 0 8 0.00 360.00 xcarc
-1 1.00 0 0 48 -90.00 90.00 xcarc
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 0 -48 -64 -48 -64 48 0 48 4 polygon
+1 1.000 56 0 8 0.000 360.000 xcarc
+1 1.000 0 0 48 -90.000 90.000 xcarc
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 0 pinlabel
-(C) {/Times-Roman cf} 2 7 0 1.00 -64 -32 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
+(C) {/Times-Roman cf} 2 7 0.000 1.000 -64 -32 pinlabel
 sce
-1 1.00 -64 -64 -64 64 2 polygon
+1 1.000 -64 -64 -64 64 2 polygon
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pC %pY nand3X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark ( %pA %pB %pC %pY nand3X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nand3 libinst
-
 /sky130_fd_sc_hd::nand4 {
-<</gnd (dgnd) /vdd (dvdd) /voltage () /@index (?) >> begingate
-1 1.00 0 -64 -64 -64 -64 64 0 64 4 polygon
-1 1.00 56 0 8 0.00 360.00 xcarc
-1 1.00 0 0 48 64 -90.00 90.00 ellipse
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 0 -64 -64 -64 -64 64 0 64 4 polygon
+1 1.000 56 0 8 0.000 360.000 xcarc
+1 1.000 0 0 48 64 -90.000 90.000 ellipse
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 48 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 16 pinlabel
-(C) {/Times-Roman cf} 2 7 0 1.00 -64 -16 pinlabel
-(D) {/Times-Roman cf} 2 7 0 1.00 -64 -48 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 48 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 16 pinlabel
+(C) {/Times-Roman cf} 2 7 0.000 1.000 -64 -16 pinlabel
+(D) {/Times-Roman cf} 2 7 0.000 1.000 -64 -48 pinlabel
 sce
-1 1.00 -64 -80 -64 80 2 polygon
+1 1.000 -64 -80 -64 80 2 polygon
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pC %pD %pY nand4X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -144 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -112 infolabel
+mark ( %pA %pB %pC %pD %pY nand4X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -144 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -112 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nand4 libinst
-
 /sky130_fd_sc_hd::nor2 {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () >> begingate
-1 1.00 56 0 8 0.00 360.00 xcarc
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 56 0 8 0.000 360.000 xcarc
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 -32 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 -32 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pY nor2X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
+mark ( %pA %pB %pY nor2X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 sce
-1 1.00 -35 48 96 270.00 330.00 xcarc
-1 1.00 -64 -48 -35 -48 2 polygon
-1 1.00 -128 0 80 -37.00 37.00 xcarc
-1 1.00 -35 -48 96 30.00 90.00 xcarc
-1 1.00 -64 48 -35 48 2 polygon
-1 1.00 -64 32 -56 32 2 polygon
-1 1.00 -64 -32 -56 -32 2 polygon
+1 1.000 -35 48 96 270.000 330.000 xcarc
+1 1.000 -64 -48 -35 -48 2 polygon
+1 1.000 -128 0 80 -37.000 37.000 xcarc
+1 1.000 -35 -48 96 30.000 90.000 xcarc
+1 1.000 -64 48 -35 48 2 polygon
+1 1.000 -64 32 -56 32 2 polygon
+1 1.000 -64 -32 -56 -32 2 polygon
 0.180 0.545 0.341 scb
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nor2 libinst
-
 /sky130_fd_sc_hd::nor3 {
-<</voltage () /@index (?) /vdd (dvdd) /gnd (dgnd) >> begingate
-1 1.00 56 0 8 0.00 360.00 xcarc
+<</@index (?) /@vdd (dvdd) /@gnd (dgnd) >> begingate
+1 1.000 56 0 8 0.000 360.000 xcarc
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 0 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 0 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pC %pY nor3X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark ( %pA %pB %pC %pY nor3X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 sce
-1 1.00 -35 48 96 270.00 330.00 xcarc
-1 1.00 -64 -48 -35 -48 2 polygon
-1 1.00 -128 0 80 -36.87 36.87 xcarc
-1 1.00 -35 -48 96 30.00 90.00 xcarc
-1 1.00 -64 48 -35 48 2 polygon
-1 1.00 -64 32 -56 32 2 polygon
-1 1.00 -64 -32 -56 -32 2 polygon
-1 1.00 -48 0 -64 0 2 polygon
+1 1.000 -35 48 96 270.000 330.000 xcarc
+1 1.000 -64 -48 -35 -48 2 polygon
+1 1.000 -128 0 80 -36.870 36.870 xcarc
+1 1.000 -35 -48 96 30.000 90.000 xcarc
+1 1.000 -64 48 -35 48 2 polygon
+1 1.000 -64 32 -56 32 2 polygon
+1 1.000 -64 -32 -56 -32 2 polygon
+1 1.000 -48 0 -64 0 2 polygon
 1.000 0.000 0.000 scb
-(C) {/Times-Roman cf} 2 7 0 1.00 -64 -32 pinlabel
+(C) {/Times-Roman cf} 2 7 0.000 1.000 -64 -32 pinlabel
 sce
-1 1.00 -64 48 -64 64 2 polygon
-1 1.00 -64 -48 -64 -64 2 polygon
+1 1.000 -64 48 -64 64 2 polygon
+1 1.000 -64 -48 -64 -64 2 polygon
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nor3 libinst
-
 /sky130_fd_sc_hd::nor4 {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () >> begingate
-1 1.00 56 0 8 0.00 360.00 xcarc
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 56 0 8 0.000 360.000 xcarc
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 48 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 16 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 48 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 16 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pC %pD %pY nor4X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark ( %pA %pB %pC %pD %pY nor4X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 21 0 0.70 -8 -16 label
+mark @index (U) {/Times-RomanISO cf} ctmk 21 0.000 0.700 -8 -16 label
 sce
-1 1.00 -64 48 -58 48 2 polygon
-1 1.00 -64 -16 -48 -16 2 polygon
-1 1.00 -48 16 -64 16 2 polygon
+1 1.000 -64 48 -58 48 2 polygon
+1 1.000 -64 -16 -48 -16 2 polygon
+1 1.000 -48 16 -64 16 2 polygon
 1.000 0.000 0.000 scb
-(C) {/Times-Roman cf} 2 7 0 1.00 -64 -16 pinlabel
+(C) {/Times-Roman cf} 2 7 0.000 1.000 -64 -16 pinlabel
 sce
-1 1.00 32 32 0 56 -40 56 48 0 spline
-1 1.00 32 -32 0 -56 -40 -56 48 0 spline
-1 1.00 -40 32 -40 -24 -64 -56 -64 56 spline
-1 1.00 -64 56 -40 56 2 polygon
-1 1.00 -64 -56 -40 -56 2 polygon
+1 1.000 32 32 0 56 -40 56 48 0 spline
+1 1.000 32 -32 0 -56 -40 -56 48 0 spline
+1 1.000 -40 32 -40 -24 -64 -56 -64 56 spline
+1 1.000 -64 56 -40 56 2 polygon
+1 1.000 -64 -56 -40 -56 2 polygon
 1.000 0.000 0.000 scb
-(D) {/Times-Roman cf} 2 7 0 1.00 -64 -48 pinlabel
+(D) {/Times-Roman cf} 2 7 0.000 1.000 -64 -48 pinlabel
 sce
-1 1.00 -64 -48 -60 -48 2 polygon
+1 1.000 -64 -48 -60 -48 2 polygon
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::nor4 libinst
-
 /sky130_fd_sc_hd::or2 {
-<</voltage () /@index (?) /vdd (dvdd) /gnd (dgnd) >> begingate
+<</@index (?) /@vdd (dvdd) /@gnd (dgnd) >> begingate
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -64 -32 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -64 -32 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pY or2X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -64 -128 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -64 -96 infolabel
+mark ( %pA %pB %pY or2X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -64 -128 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -64 -96 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 16 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.70 -40 -8 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.700 -40 -8 label
 sce
-1 1.00 -35 48 96 270.00 330.00 xcarc
-1 1.00 -64 -48 -35 -48 2 polygon
-1 1.00 -128 0 80 -37.00 37.00 xcarc
-1 1.00 -35 -48 96 30.00 90.00 xcarc
-1 1.00 -64 48 -35 48 2 polygon
-1 1.00 -64 32 -56 32 2 polygon
-1 1.00 -64 -32 -56 -32 2 polygon
-1 1.00 48 0 64 0 2 polygon
+1 1.000 -35 48 96 270.000 330.000 xcarc
+1 1.000 -64 -48 -35 -48 2 polygon
+1 1.000 -128 0 80 -37.000 37.000 xcarc
+1 1.000 -35 -48 96 30.000 90.000 xcarc
+1 1.000 -64 48 -35 48 2 polygon
+1 1.000 -64 32 -56 32 2 polygon
+1 1.000 -64 -32 -56 -32 2 polygon
+1 1.000 48 0 64 0 2 polygon
 endgate
 } def
 
 /sky130_fd_sc_hd::ebufn {
-<</strength (2) /voltage () /@index (?) /vdd (dvdd) /gnd (dgnd) >> begingate
-0 1.00 -32 -40 -32 40 40 0 3 polygon
-1 1.00 -32 0 -48 0 2 polygon
-1 1.00 40 0 64 0 2 polygon
+<</@strength (2) /@index (?) /@vdd (dvdd) /@gnd (dgnd) >> begingate
+0 1.000 -32 -40 -32 40 40 0 3 polygon
+1 1.000 -32 0 -48 0 2 polygon
+1 1.000 40 0 64 0 2 polygon
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 0 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -48 0 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 0 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -48 0 pinlabel
 0.180 0.545 0.341 scb
-mark voltage strength ( %pA %pY %pEn ebufnX) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -176 -112 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -176 -80 infolabel
+mark @strength ( %pA %pY %pEn ebufnX) @gnd ( ) @vdd ( ) @index 
+(spice:X) {/Times-Roman cf} ctmk 16 360.000 0.700 -176 -112 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -176 -80 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-RomanISO cf} ctmk 21 0 0.50 -8 0 label
-mark strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0 0.50 8 24 label
+mark {/Times-RomanISO cf} ctmk 21 0.000 0.500 -8 0 label
+mark @strength {qS} (\327) {/Times-RomanISO cf} ctmk 16 0.000 0.500 8 24 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 16 0 0.60 24 -32 label
+mark @index (U) {/Times-RomanISO cf} ctmk 16 0.000 0.600 24 -32 label
 sce
-1 1.00 0 24 0 48 2 polygon
+1 1.000 0 24 0 48 2 polygon
 1.000 0.000 0.000 scb
-(En) {/Times-Roman cf} 2 17 0 1.00 0 48 pinlabel
+(En) {/Times-Roman cf} 2 17 0.000 1.000 0 48 pinlabel
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::ebufn libinst
-
 /sky130_fd_sc_hd::mux2 {
-<</gnd (dgnd) /vdd (dvdd) /@index (?) /voltage () >> begingate
-1 1.00 -16 16 -32 16 2 polygon
-1 1.00 48 -16 64 -16 2 polygon
+<</@gnd (dgnd) /@vdd (dvdd) /@index (?) >> begingate
+1 1.000 -16 16 -32 16 2 polygon
+1 1.000 48 -16 64 -16 2 polygon
 1.000 0.000 0.000 scb
-(Y) {/Times-Roman cf} 2 4 0 1.00 64 -16 pinlabel
-(A) {/Times-Roman cf} 2 7 0 1.00 -32 16 pinlabel
+(Y) {/Times-Roman cf} 2 4 0.000 1.000 64 -16 pinlabel
+(A) {/Times-Roman cf} 2 7 0.000 1.000 -32 16 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pA %pB %pY %pS mux2X1) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -128 -176 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -128 -144 infolabel
+mark ( %pA %pB %pY %pS mux2X1) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -128 -176 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -128 -144 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-RomanISO cf} ctmk 21 0 0.50 16 -16 label
+mark {/Times-RomanISO cf} ctmk 21 0.000 0.500 16 -16 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 28 0 0.60 24 -80 label
+mark @index (U) {/Times-RomanISO cf} ctmk 28 0.000 0.600 24 -80 label
 sce
-1 1.00 16 32 16 64 2 polygon
+1 1.000 16 32 16 64 2 polygon
 1.000 0.000 0.000 scb
-(S) {/Times-Roman cf} 2 17 0 1.00 16 64 pinlabel
-(B) {/Times-Roman cf} 2 7 0 1.00 -32 -48 pinlabel
+(S) {/Times-Roman cf} 2 17 0.000 1.000 16 64 pinlabel
+(B) {/Times-Roman cf} 2 7 0.000 1.000 -32 -48 pinlabel
 sce
-1 1.00 -32 -48 -16 -48 2 polygon
-1 1.00 -16 48 48 16 48 -48 -16 -80 -16 48 5 polygon
+1 1.000 -32 -48 -16 -48 2 polygon
+1 1.000 -16 48 48 16 48 -48 -16 -80 -16 48 5 polygon
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::mux2 libinst
-
 /sky130_fd_sc_hd::dlrbn {
-<</@index (?) /voltage () /vdd (dvdd) /gnd (dgnd) >> begingate
+<</@index (?) /@vdd (dvdd) /@gnd (dgnd) >> begingate
 1.000 0.000 0.000 scb
-(Q) {/Times-Roman cf} 2 4 0 1.00 32 32 pinlabel
-(D) {/Times-Roman cf} 2 7 0 1.00 -64 32 pinlabel
-(CLK) {/Times-Roman cf} 2 13 0 1.00 -16 -48 pinlabel
+(Q) {/Times-Roman cf} 2 4 0.000 1.000 32 32 pinlabel
+(D) {/Times-Roman cf} 2 7 0.000 1.000 -64 32 pinlabel
+(CLK) {/Times-Roman cf} 2 13 0.000 1.000 -16 -48 pinlabel
 0.180 0.545 0.341 scb
-mark voltage ( %pCLK %pD %pQ dlrbn) gnd ( ) vdd ( ) @index (spice:X) 
-{/Times-Roman cf} ctmk 16 360 0.70 -192 -160 infolabel
-mark (.cir) voltage (spice@1:%F$XCIRCUIT_LIB_DIR/standard_cells) {/Times-Roman cf} 
-ctmk 16 0 0.70 -192 -128 infolabel
+mark ( %pCLK %pD %pQ dlrbn) @gnd ( ) @vdd ( ) @index (spice:X) 
+{/Times-Roman cf} ctmk 16 360.000 0.700 -192 -160 infolabel
+mark (.cir) (spice@1:%FSTAGING_PATH/TECHNAME/libs.ref/sky130_fd_sc_hd/spice/sky130_fd_sc_hd.spice) 
+{/Times-Roman cf} ctmk 16 0.000 0.700 -192 -128 infolabel
 0.647 0.165 0.165 scb
-mark voltage {/Times-Roman cf} ctmk 21 0 0.70 -16 64 label
+mark {/Times-Roman cf} ctmk 21 0.000 0.700 -16 64 label
 0.000 0.000 1.000 scb
-mark @index (U) {/Times-RomanISO cf} ctmk 17 0 0.70 -16 128 label
+mark @index (U) {/Times-RomanISO cf} ctmk 17 0.000 0.700 -16 128 label
 sce
-0 1.00 -64 -48 -64 112 32 112 32 -48 4 polygon
-1 1.00 -32 -48 -16 -32 0 -48 3 polygon
-(D) {/Times-Roman cf} 2 21 0 0.70 -48 32 label
-(Q) {/Times-Roman cf} 2 21 0 0.70 16 32 label
+0 1.000 -64 -48 -64 112 32 112 32 -48 4 polygon
+1 1.000 -32 -48 -16 -32 0 -48 3 polygon
+(D) {/Times-Roman cf} 2 21 0.000 0.700 -48 32 label
+(Q) {/Times-Roman cf} 2 21 0.000 0.700 16 32 label
 0.000 0.000 1.000 scb
-(dlrbn) {/Times-Roman cf} 2 29 0 0.70 -16 96 label
+(dlrbn) {/Times-Roman cf} 2 29 0.000 0.700 -16 96 label
 endgate
 } def
 
-<</voltage (_3V) /vdd (dvdd3) >> /sky130_fd_sc_hd::dlrbn libinst
 
 % EndLib