diff --git a/common/foundry_install.py b/common/foundry_install.py
index 80e5c64..457483c 100755
--- a/common/foundry_install.py
+++ b/common/foundry_install.py
@@ -658,7 +658,8 @@
 
     for option in optionlist[:]:
         if option[0] == 'lef':
-            have_lef = True
+            have_lefanno = True if 'annotate' in option or 'anno' in option else False
+            have_lef = True if not have_lefanno else False
         if option[0] == 'techlef' or option[0] == 'techLEF':
             have_techlef = True
         elif option[0] == 'gds':
@@ -684,6 +685,9 @@
         # Diagnostic
         print("Install option: " + str(option[0]))
 
+        if option[0] == 'lef' and have_lefanno:
+            print("LEF files used for annotation only.  Temporary install.")
+
         # For ef_format:  always make techlef -> techLEF and spice -> spi
 
         if ef_format:
@@ -747,17 +751,6 @@
         else:
             print('Sorting files with script ' + sortscript)
 
-        # 'anno' may be specified for LEF, in which case the LEF is used only
-        # to annotate GDS and is not itself installed;  this allows LEF to
-        # be generated from Magic and avoids quirky use of obstruction layers.
-        have_lefanno = True if 'annotate' in option or 'anno' in option else False
-        if have_lefanno: 
-            if option[0] != 'lef':
-                print("Warning: 'annotate' option specified outside of -lef.  Ignoring.")
-            else:
-                # Mark as NOT having LEF since we want to use it only for annotation.
-                have_lef = False
-
         # For each library, create the library subdirectory
         for library in libraries:
             if len(library) == 3:
@@ -1058,6 +1051,8 @@
     no_gds_convert = False
     no_lef_convert = False
     cdl_compile_only = False
+    lef_compile = False
+    lef_compile_only = False
 
     cdl_exclude = []
     lef_exclude = []
@@ -1105,10 +1100,18 @@
                 lef_reflib = '/libs.priv/'
 
         # If CDL is marked 'compile-only' then CDL should only convert the
-        # compiled file to SPICE if conversion is needed.
+        # compiled file to SPICE if conversion is needed.  If LEF is marked
+        # 'compile' or 'compile-only' in annotate mode, then create a LEF
+        # library from magic LEF output.
+
         if 'compile-only' in option:
             if option[0] == 'cdl':
                 cdl_compile_only = True
+            elif option[0] == 'lef':
+                lef_compile_only = True
+        elif 'compile' in option:
+            if option[0] == 'lef':
+                lef_compile = True
 
         # Find exclude list for any option
         for item in option:
@@ -1137,7 +1140,6 @@
         else:
             tcllines = list(tclscript)
 
-
     if have_gds and not no_gds_convert:
         print("Migrating GDS files to layout.")
 
@@ -1288,10 +1290,7 @@
                     else:
                         # Use LEF files to set the port properties
                         if have_lefanno or have_lef:
-                            if have_lefanno:
-                                lefdirname = 'lefanno'
-                            else:
-                                lefdirname = 'lef'
+                            lefdirname = 'lef'
 
                             # Find LEF file names in the source
                             if ef_format:
@@ -1303,7 +1302,20 @@
 
                             leffiles = os.listdir(lefsrclibdir)
                             leffiles = list(item for item in leffiles if os.path.splitext(item)[1] == '.lef')
-                            print('puts stdout "Annotating cells from LEF"', file=ofile)
+                            if len(leffiles) > 0:
+                                lefnames = list(os.path.split(item)[1] for item in leffiles)
+                                notlefnames = []
+                                for exclude in lef_exclude:
+                                    notlefnames.extend(fnmatch.filter(lefnames, exclude))
+
+                                # Apply exclude list
+                                if len(notlefnames) > 0:
+                                    for file in leffiles[:]:
+                                        if os.path.split(file)[1] in notlefnames:
+                                            leffiles.remove(file)
+
+                            if len(leffiles) > 0:
+                                print('puts stdout "Annotating cells from LEF"', file=ofile)
                             for leffile in leffiles:
                                 print('lef read ' + lefsrclibdir + '/' + leffile, file=ofile)
                      
@@ -1333,17 +1345,17 @@
                     if have_lefanno:
                         # Find LEF file names in the source
                         if ef_format:
-                            lefsrcdir = targetdir + lef_reflib + 'lefanno'
+                            lefsrcdir = targetdir + lef_reflib + 'lef'
                             lefsrclibdir = lefsrcdir + '/' + destlib
                         else:
-                            lefsrcdir = targetdir + lef_reflib + destlib + '/lefanno'
+                            lefsrcdir = targetdir + lef_reflib + destlib + '/lef'
                             lefsrclibdir = lefsrcdir
 
                         leffiles = os.listdir(lefsrclibdir)
                         leffiles = list(item for item in leffiles if os.path.splitext(item)[1] == '.lef')
                         # Get list of abstract views to make from LEF macros
                         for leffile in leffiles:
-                            with open(leffile, 'r') as ifile:
+                            with open(lefsrclibdir + '/' + leffile, 'r') as ifile:
                                 ltext = ifile.read()
                                 llines = ltext.splitlines()
                                 for lline in llines:
@@ -1467,13 +1479,18 @@
                         # write procedure, but we still need the pin use and class
                         # information from the LEF file, and maybe the bounding box.
 
+                        
+                        # For annotation, the LEF file output will overwrite the
+                        # original source LEF file.
+                        lefdest = lefsrclibdir + '/' if have_lefanno else ''
+
                         for leffile in leffiles:
                             if have_lefanno:
                                 print('lef read ' + lefsrclibdir + '/' + leffile, file=ofile)
                         for lefmacro in lefmacros:
                             print('if {[cellname list exists ' + lefmacro + '] != 0} {', file=ofile)
                             print('   load ' + lefmacro, file=ofile)
-                            print('   lef write ' + lefmacro + ' -hide', file=ofile)
+                            print('   lef write ' + lefdest + lefmacro + ' -hide', file=ofile)
                             print('}', file=ofile)
 
                     print('puts stdout "Done."', file=ofile)
@@ -1498,63 +1515,9 @@
                     if mproc.returncode != 0:
                         print('ERROR:  Magic exited with status ' + str(mproc.returncode))
 
-                if not have_lef:
-                    print('No LEF file install;  need to generate LEF.')
-                    # Remove the lefanno/ target and its contents.
-                    if have_lefanno:
-                        if ef_format:
-                            lefannosrcdir = targetdir + lef_reflib + 'lefanno'
-                        else:
-                            lefannosrcdir = targetdir + lef_reflib + destlib + '/lefanno'
-                        if os.path.isdir(lefannosrcdir):
-                            shutil.rmtree(lefannosrcdir)
-
-                    if ef_format:
-                        destlefdir = targetdir + lef_reflib + 'lef'
-                        destleflibdir = destlefdir + '/' + destlib
-                    else:
-                        destlefdir = targetdir + lef_reflib + destlib + '/lef'
-                        destleflibdir = destlefdir
-
-                    os.makedirs(destleflibdir, exist_ok=True)
-                    leflist = os.listdir(destlibdir)
-                    leflist = list(item for item in leflist if os.path.splitext(item)[1] == '.lef')
-
-                    # All macros will go into one file
-                    destleflib = destleflibdir + '/' + destlib + '.lef'
-                    # Remove any existing library file from the target directory
-                    if os.path.isfile(destleflib):
-                        print('Removing existing library ' + destleflib)
-                        os.remove(destleflib)
-
-                    first = True
-                    with open(destleflib, 'w') as ofile:
-                        for leffile in leflist:
-                            # Remove any existing single file from the target directory
-                            if os.path.isfile(destleflibdir + '/' + leffile):
-                                print('Removing ' + destleflibdir + '/' + leffile)
-                                os.remove(destleflibdir + '/' + leffile)
-
-                            # Append contents
-                            sourcelef =  destlibdir + '/' + leffile
-                            with open(sourcelef, 'r') as ifile:
-                                leflines = ifile.read().splitlines()
-                                if not first:
-                                    # Remove header from all but the first file
-                                    leflines = leflines[8:]
-                                else:
-                                    first = False
-
-                            for line in leflines:
-                                print(line, file=ofile)
-
-                            # Remove file from the source directory
-                            print('Removing source file ' + sourcelef)
-                            os.remove(sourcelef)
-
-                    # Set have_lef now that LEF files were made, so they
-                    # can be used to generate the maglef/ databases.
-                    have_lef = True
+                # Set have_lef now that LEF files were made, so they
+                # can be used to generate the maglef/ databases.
+                have_lef = True
 
             elif not have_mag_8_2:
                 print('The installer is not able to run magic.')
@@ -1562,6 +1525,14 @@
                 print("Master PDK magic startup file not found.  Did you install")
                 print("PDK tech files before PDK vendor files?")
 
+    if have_lefanno:
+        # LEF files were used for annotation.  If "compile" or "compile-only"
+        # was also passed as an option, then build the LEF library now from
+        # the LEF output from magic.
+        print("Compiling LEF library from magic output.")
+        if lef_compile or lef_compile_only:
+            create_lef_library(lefsrclibdir, destlib, lef_compile_only, lef_exclude)
+
     if have_lef and not no_lef_convert:
         print("Migrating LEF files to layout.")
         if ef_format:
diff --git a/sky130/Makefile.in b/sky130/Makefile.in
index 5a00f22..b7b19f9 100644
--- a/sky130/Makefile.in
+++ b/sky130/Makefile.in
@@ -909,7 +909,8 @@
 	${STAGE} -source ${SKYWATER_LIBS_PATH} -target ${STAGING_PATH}/${SKY130A} \
 		-cdl %l/latest/cells/*/*.cdl ignore=topography compile-only \
 			sort=custom/scripts/sort_pdkfiles.py \
-		-lef %l/latest/cells/*/*.lef anno compile-only \
+		-lef %l/latest/cells/*/*.lef annotate compile-only \
+			exclude=*.magic.lef,sky130_ef_io.lef \
 			sort=custom/scripts/sort_pdkfiles.py \
 		-doc %l/latest/cells/*/*.pdf \
 		-lib %l/latest/timing/*.lib \
diff --git a/sky130/custom/scripts/inc_verilog.py b/sky130/custom/scripts/inc_verilog.py
index aebce3e..e607193 100755
--- a/sky130/custom/scripts/inc_verilog.py
+++ b/sky130/custom/scripts/inc_verilog.py
@@ -47,18 +47,6 @@
                 # NOTE:  These files are assumed not to need in-line
                 # includes, but includes of primitives need to be ignored.
 
-                # Quick hack:  Remove this when the filenames are corrected
-                if not os.path.exists(inpath + '/' + incfilename):
-                    print('Detected incorrect filename')
-                    print('   Old filename was: ' + incfilename)
-                    dlist = incfilename.split('.')
-                    ilist = dlist[0:-3]
-                    ilist.append(dlist[-2])
-                    ilist.append(dlist[-3])
-                    ilist.append(dlist[-1])
-                    print('   New filename is: ' + incfilename)
-                    incfilename = '.'.join(ilist)
-
                 with open(inpath + '/' + incfilename, 'r') as incfile:
                     v2text = incfile.read()
                     v2lines = v2text.splitlines()
diff --git a/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_gpio_ovtv2.lef b/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_gpio_ovtv2.lef
deleted file mode 100644
index 579dc09..0000000
--- a/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_gpio_ovtv2.lef
+++ /dev/null
@@ -1,561 +0,0 @@
-MACRO sky130_fd_io__top_gpio_ovtv2
-  CLASS PAD ;
-  FOREIGN sky130_fd_io__top_gpio_ovtv2 ;
-  ORIGIN 0.400 0.735 ;
-  SIZE 141.455 BY 201.490 ;
-  PIN VSSIO_Q
-    PORT
-      LAYER met5 ;
-        RECT 138.730 58.335 140.000 62.585 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 58.335 1.270 62.585 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 58.235 140.000 62.685 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 58.235 1.270 62.685 ;
-    END
-  END VSSIO_Q
-  PIN VSWITCH
-    PORT
-      LAYER met5 ;
-        RECT 138.730 31.985 140.000 35.235 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 31.985 1.270 35.235 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 31.885 140.000 35.335 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 31.885 1.270 35.335 ;
-    END
-  END VSWITCH
-  PIN VSSIO
-    PORT
-      LAYER met5 ;
-        RECT 138.730 25.935 140.000 30.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 138.730 175.785 140.000 200.000 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 25.935 1.270 30.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 175.785 1.365 200.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 175.785 140.000 200.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 25.835 140.000 30.485 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 175.785 1.365 200.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 25.835 1.270 30.485 ;
-    END
-  END VSSIO
-  PIN VSSD
-    PORT
-      LAYER met5 ;
-        RECT 138.730 41.685 140.000 46.135 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 41.685 1.270 46.135 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 41.585 140.000 46.235 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 41.585 1.270 46.235 ;
-    END
-  END VSSD
-  PIN VSSA
-    PORT
-      LAYER met5 ;
-        RECT 138.730 36.840 140.000 40.085 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 138.730 47.735 140.000 56.735 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 36.840 1.270 40.085 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 47.735 2.040 56.735 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 51.645 140.000 52.825 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 47.735 140.000 48.065 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 56.405 140.000 56.735 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 36.735 140.000 40.185 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 51.645 2.040 52.825 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 47.735 1.270 48.065 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 56.405 1.270 56.735 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 36.735 1.270 40.185 ;
-    END
-  END VSSA
-  PIN VDDIO_Q
-    PORT
-      LAYER met5 ;
-        RECT 138.730 64.185 140.000 68.435 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 64.185 1.270 68.435 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 64.085 140.000 68.535 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 64.085 1.270 68.535 ;
-    END
-  END VDDIO_Q
-  PIN VDDIO
-    PORT
-      LAYER met5 ;
-        RECT 138.730 70.035 140.000 94.985 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 138.730 19.885 140.000 24.335 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 70.035 1.270 94.985 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 19.885 1.270 24.335 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 19.785 140.000 24.435 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 70.035 140.000 95.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 19.785 1.270 24.435 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 70.035 1.270 95.000 ;
-    END
-  END VDDIO
-  PIN VDDA
-    PORT
-      LAYER met5 ;
-        RECT 139.035 15.035 140.000 18.285 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 15.035 0.965 18.285 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 139.035 14.935 140.000 18.385 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 14.935 0.965 18.385 ;
-    END
-  END VDDA
-  PIN VCCHIB
-    PORT
-      LAYER met5 ;
-        RECT 138.730 2.135 140.000 7.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 2.135 1.270 7.385 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 2.035 140.000 7.485 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 2.035 1.270 7.485 ;
-    END
-  END VCCHIB
-  PIN VCCD
-    PORT
-      LAYER met5 ;
-        RECT 138.730 8.985 140.000 13.435 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 8.985 1.270 13.435 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 138.730 8.885 140.000 13.535 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 8.885 1.270 13.535 ;
-    END
-  END VCCD
-  PIN PAD
-    PORT
-      LAYER met5 ;
-        RECT 17.930 117.530 86.325 162.905 ;
-    END
-  END PAD
-  PIN AMUXBUS_A
-    PORT
-      LAYER met4 ;
-        RECT 48.930 53.125 140.000 56.105 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 53.125 38.675 56.105 ;
-    END
-  END AMUXBUS_A
-  PIN AMUXBUS_B
-    PORT
-      LAYER met4 ;
-        RECT 99.710 48.365 140.000 51.345 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 48.365 85.865 51.345 ;
-    END
-  END AMUXBUS_B
-  PIN DM[0]
-    PORT
-      LAYER met3 ;
-        RECT 129.125 0.000 129.455 20.955 ;
-    END
-  END DM[0]
-  PIN DM[1]
-    PORT
-      LAYER met3 ;
-        RECT 128.275 0.000 128.605 20.180 ;
-    END
-  END DM[1]
-  PIN DM[2]
-    PORT
-      LAYER met3 ;
-        RECT 108.395 0.000 108.725 20.640 ;
-    END
-  END DM[2]
-  PIN INP_DIS
-    PORT
-      LAYER met3 ;
-        RECT 107.545 0.000 107.875 8.060 ;
-    END
-  END INP_DIS
-  PIN VTRIP_SEL
-    PORT
-      LAYER met3 ;
-        RECT 87.665 0.000 87.995 20.980 ;
-    END
-  END VTRIP_SEL
-  PIN IB_MODE_SEL[0]
-    PORT
-      LAYER met3 ;
-        RECT 86.815 0.000 87.145 20.980 ;
-    END
-  END IB_MODE_SEL[0]
-  PIN IB_MODE_SEL[1]
-    PORT
-      LAYER met3 ;
-        RECT 66.935 0.000 67.265 20.980 ;
-    END
-  END IB_MODE_SEL[1]
-  PIN SLEW_CTL[0]
-    PORT
-      LAYER met3 ;
-        RECT 66.085 0.000 66.415 20.980 ;
-    END
-  END SLEW_CTL[0]
-  PIN SLEW_CTL[1]
-    PORT
-      LAYER met3 ;
-        RECT 46.205 0.000 46.535 20.980 ;
-    END
-  END SLEW_CTL[1]
-  PIN HYS_TRIM
-    PORT
-      LAYER met3 ;
-        RECT 45.355 0.000 45.685 8.060 ;
-    END
-  END HYS_TRIM
-  PIN HLD_OVR
-    PORT
-      LAYER met3 ;
-        RECT 27.355 0.000 27.685 14.055 ;
-    END
-  END HLD_OVR
-  PIN ENABLE_H
-    PORT
-      LAYER met3 ;
-        RECT 22.135 0.000 22.465 30.150 ;
-    END
-  END ENABLE_H
-  PIN HLD_H_N
-    PORT
-      LAYER met3 ;
-        RECT 19.635 0.000 19.965 17.985 ;
-    END
-  END HLD_H_N
-  PIN ENABLE_VDDA_H
-    PORT
-      LAYER met3 ;
-        RECT 8.770 0.000 9.100 7.915 ;
-    END
-  END ENABLE_VDDA_H
-  PIN ANALOG_EN
-    PORT
-      LAYER met3 ;
-        RECT 8.115 0.000 8.445 14.070 ;
-    END
-  END ANALOG_EN
-  PIN ENABLE_INP_H
-    PORT
-      LAYER met3 ;
-        RECT 7.110 0.000 7.440 0.670 ;
-    END
-  END ENABLE_INP_H
-  PIN IN
-    PORT
-      LAYER met3 ;
-        RECT 20.380 0.000 20.710 11.310 ;
-    END
-  END IN
-  PIN IN_H
-    PORT
-      LAYER met3 ;
-        RECT 24.380 0.000 24.710 0.940 ;
-    END
-  END IN_H
-  PIN VINREF
-    PORT
-      LAYER met3 ;
-        RECT 44.035 0.000 44.365 4.885 ;
-    END
-  END VINREF
-  PIN OUT
-    PORT
-      LAYER met3 ;
-        RECT 74.125 0.000 74.455 14.865 ;
-    END
-  END OUT
-  PIN ANALOG_POL
-    PORT
-      LAYER met3 ;
-        RECT 65.235 0.000 65.565 1.165 ;
-    END
-  END ANALOG_POL
-  PIN ANALOG_SEL
-    PORT
-      LAYER met3 ;
-        RECT 51.655 0.000 51.985 8.060 ;
-    END
-  END ANALOG_SEL
-  PIN SLOW
-    PORT
-      LAYER met3 ;
-        RECT 125.140 0.000 125.470 11.965 ;
-    END
-  END SLOW
-  PIN OE_N
-    PORT
-      LAYER met3 ;
-        RECT 124.445 0.000 124.775 8.060 ;
-    END
-  END OE_N
-  PIN TIE_HI_ESD
-    PORT
-      LAYER met3 ;
-        RECT 129.975 0.000 130.305 61.655 ;
-    END
-  END TIE_HI_ESD
-  PIN TIE_LO_ESD
-    PORT
-      LAYER met3 ;
-        RECT 115.290 0.000 115.890 39.035 ;
-    END
-  END TIE_LO_ESD
-  PIN PAD_A_ESD_0_H
-    PORT
-      LAYER met3 ;
-        RECT 1.600 0.000 2.200 5.470 ;
-    END
-  END PAD_A_ESD_0_H
-  PIN PAD_A_ESD_1_H
-    PORT
-      LAYER met3 ;
-        RECT 0.330 0.000 0.930 71.380 ;
-    END
-  END PAD_A_ESD_1_H
-  PIN PAD_A_NOESD_H
-    PORT
-      LAYER met3 ;
-        RECT 2.885 0.000 3.485 5.900 ;
-    END
-  END PAD_A_NOESD_H
-  PIN ENABLE_VSWITCH_H
-    PORT
-      LAYER met3 ;
-        RECT 5.765 0.000 6.365 12.470 ;
-    END
-  END ENABLE_VSWITCH_H
-  PIN ENABLE_VDDIO
-    PORT
-      LAYER met3 ;
-        RECT 95.845 0.000 96.215 20.755 ;
-    END
-  END ENABLE_VDDIO
-  OBS
-      LAYER nwell ;
-        RECT -0.400 10.495 11.880 11.925 ;
-        RECT -0.400 1.430 1.030 10.495 ;
-        RECT -0.400 0.000 11.880 1.430 ;
-      LAYER li1 ;
-        RECT 0.230 0.200 140.475 199.780 ;
-      LAYER met1 ;
-        RECT 0.080 0.000 140.475 199.810 ;
-      LAYER met2 ;
-        RECT 0.080 0.000 140.325 199.955 ;
-      LAYER met3 ;
-        RECT 0.330 71.780 140.000 199.715 ;
-        RECT 1.330 62.055 140.000 71.780 ;
-        RECT 1.330 39.435 129.575 62.055 ;
-        RECT 1.330 30.550 114.890 39.435 ;
-        RECT 1.330 18.385 21.735 30.550 ;
-        RECT 1.330 14.470 19.235 18.385 ;
-        RECT 1.330 12.870 7.715 14.470 ;
-        RECT 1.330 6.300 5.365 12.870 ;
-        RECT 1.330 5.870 2.485 6.300 ;
-        RECT 3.885 0.000 5.365 6.300 ;
-        RECT 6.765 1.070 7.715 12.870 ;
-        RECT 8.845 8.315 19.235 14.470 ;
-        RECT 20.365 11.710 21.735 18.385 ;
-        RECT 9.500 0.000 19.235 8.315 ;
-        RECT 21.110 0.000 21.735 11.710 ;
-        RECT 22.865 21.380 114.890 30.550 ;
-        RECT 22.865 14.455 45.805 21.380 ;
-        RECT 22.865 1.340 26.955 14.455 ;
-        RECT 22.865 0.000 23.980 1.340 ;
-        RECT 25.110 0.000 26.955 1.340 ;
-        RECT 28.085 8.460 45.805 14.455 ;
-        RECT 46.935 8.460 65.685 21.380 ;
-        RECT 28.085 5.285 44.955 8.460 ;
-        RECT 28.085 0.000 43.635 5.285 ;
-        RECT 44.765 0.000 44.955 5.285 ;
-        RECT 46.935 0.000 51.255 8.460 ;
-        RECT 52.385 1.565 65.685 8.460 ;
-        RECT 67.665 15.265 86.415 21.380 ;
-        RECT 52.385 0.000 64.835 1.565 ;
-        RECT 67.665 0.000 73.725 15.265 ;
-        RECT 74.855 0.000 86.415 15.265 ;
-        RECT 88.395 21.155 114.890 21.380 ;
-        RECT 88.395 0.000 95.445 21.155 ;
-        RECT 96.615 21.040 114.890 21.155 ;
-        RECT 96.615 8.460 107.995 21.040 ;
-        RECT 96.615 0.000 107.145 8.460 ;
-        RECT 109.125 0.000 114.890 21.040 ;
-        RECT 116.290 21.355 129.575 39.435 ;
-        RECT 116.290 20.580 128.725 21.355 ;
-        RECT 116.290 12.365 127.875 20.580 ;
-        RECT 116.290 8.460 124.740 12.365 ;
-        RECT 116.290 0.000 124.045 8.460 ;
-        RECT 125.870 0.000 127.875 12.365 ;
-        RECT 130.705 0.000 140.000 62.055 ;
-      LAYER met4 ;
-        RECT 1.765 175.385 138.330 200.000 ;
-        RECT 0.965 95.400 139.035 175.385 ;
-        RECT 1.670 69.635 138.330 95.400 ;
-        RECT 0.965 68.935 139.035 69.635 ;
-        RECT 1.670 63.685 138.330 68.935 ;
-        RECT 0.965 63.085 139.035 63.685 ;
-        RECT 1.670 57.835 138.330 63.085 ;
-        RECT 0.965 57.135 139.035 57.835 ;
-        RECT 39.075 52.725 48.530 56.005 ;
-        RECT 2.440 51.745 138.330 52.725 ;
-        RECT 86.265 48.465 99.310 51.745 ;
-        RECT 0.965 46.635 139.035 47.335 ;
-        RECT 1.670 41.185 138.330 46.635 ;
-        RECT 0.965 40.585 139.035 41.185 ;
-        RECT 1.670 36.335 138.330 40.585 ;
-        RECT 0.965 35.735 139.035 36.335 ;
-        RECT 1.670 31.485 138.330 35.735 ;
-        RECT 0.965 30.885 139.035 31.485 ;
-        RECT 1.670 25.435 138.330 30.885 ;
-        RECT 0.965 24.835 139.035 25.435 ;
-        RECT 1.670 19.385 138.330 24.835 ;
-        RECT 0.965 18.785 139.035 19.385 ;
-        RECT 1.365 14.535 138.635 18.785 ;
-        RECT 0.965 13.935 139.035 14.535 ;
-        RECT 1.670 8.485 138.330 13.935 ;
-        RECT 0.965 7.885 139.035 8.485 ;
-        RECT 1.670 1.635 138.330 7.885 ;
-        RECT 0.965 1.160 139.035 1.635 ;
-      LAYER met5 ;
-        RECT 2.965 174.185 137.130 200.000 ;
-        RECT 0.000 164.505 140.000 174.185 ;
-        RECT 0.000 115.930 16.330 164.505 ;
-        RECT 87.925 115.930 140.000 164.505 ;
-        RECT 0.000 96.585 140.000 115.930 ;
-        RECT 2.870 58.335 137.130 96.585 ;
-        RECT 3.640 46.135 137.130 58.335 ;
-        RECT 2.870 18.285 137.130 46.135 ;
-        RECT 2.565 15.035 137.435 18.285 ;
-        RECT 2.870 2.135 137.130 15.035 ;
-  END
-END sky130_fd_io__top_gpio_ovtv2
-END LIBRARY
-
diff --git a/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_xres4v2.lef b/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_xres4v2.lef
deleted file mode 100644
index 03fcde4..0000000
--- a/sky130/custom/sky130_fd_io/lef/sky130_fd_io__top_xres4v2.lef
+++ /dev/null
@@ -1,477 +0,0 @@
-MACRO sky130_fd_io__top_xres4v2
-  CLASS PAD ;
-  FOREIGN sky130_fd_io__top_xres4v2 ;
-  ORIGIN 0.515 0.000 ;
-  SIZE 76.135 BY 200.000 ;
-  PIN PAD_A_ESD_H
-    PORT
-      LAYER met3 ;
-        RECT 17.245 0.000 18.910 0.565 ;
-    END
-    PORT
-      LAYER met2 ;
-        RECT 17.245 0.000 18.910 0.565 ;
-    END
-  END PAD_A_ESD_H
-  PIN XRES_H_N
-    PORT
-      LAYER met3 ;
-        RECT 28.935 0.000 29.665 0.330 ;
-    END
-    PORT
-      LAYER met2 ;
-        RECT 28.935 0.000 29.665 0.330 ;
-    END
-  END XRES_H_N
-  PIN FILT_IN_H
-    PORT
-      LAYER met3 ;
-        RECT 20.075 0.000 21.225 1.410 ;
-    END
-    PORT
-      LAYER met2 ;
-        RECT 20.075 0.000 21.225 1.410 ;
-    END
-  END FILT_IN_H
-  PIN ENABLE_VDDIO
-    PORT
-      LAYER met3 ;
-        RECT 8.400 0.000 8.920 0.330 ;
-    END
-    PORT
-      LAYER met2 ;
-        RECT 8.425 0.000 8.895 0.330 ;
-    END
-  END ENABLE_VDDIO
-  PIN TIE_WEAK_HI_H
-    PORT
-      LAYER met3 ;
-        RECT 72.190 0.000 73.260 0.330 ;
-    END
-    PORT
-      LAYER met2 ;
-        RECT 72.215 0.000 73.235 0.330 ;
-    END
-  END TIE_WEAK_HI_H
-  PIN ENABLE_H
-    PORT
-      LAYER met2 ;
-        RECT 12.285 0.000 12.545 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 12.285 0.000 12.545 0.330 ;
-    END
-  END ENABLE_H
-  PIN PULLUP_H
-    PORT
-      LAYER met2 ;
-        RECT 14.555 0.000 15.135 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 14.555 0.000 15.135 0.330 ;
-    END
-  END PULLUP_H
-  PIN EN_VDDIO_SIG_H
-    PORT
-      LAYER met2 ;
-        RECT 22.360 0.000 22.660 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 22.360 0.000 22.660 0.330 ;
-    END
-  END EN_VDDIO_SIG_H
-  PIN TIE_LO_ESD
-    PORT
-      LAYER met2 ;
-        RECT 27.580 0.000 28.230 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 27.580 0.000 28.230 0.330 ;
-    END
-  END TIE_LO_ESD
-  PIN TIE_HI_ESD
-    PORT
-      LAYER met2 ;
-        RECT 30.505 0.000 31.155 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 30.505 0.000 31.155 0.330 ;
-    END
-  END TIE_HI_ESD
-  PIN DISABLE_PULLUP_H
-    PORT
-      LAYER met2 ;
-        RECT 32.760 0.000 33.020 0.330 ;
-    END
-    PORT
-      LAYER met1 ;
-        RECT 32.760 0.000 33.020 0.330 ;
-    END
-  END DISABLE_PULLUP_H
-  PIN INP_SEL_H
-    PORT
-      LAYER met1 ;
-        RECT 24.905 0.000 25.135 9.975 ;
-    END
-  END INP_SEL_H
-  PIN VSSIO
-    PORT
-      LAYER met4 ;
-        RECT 0.000 175.785 1.270 200.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 73.730 25.835 75.000 30.485 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 73.730 175.785 75.000 200.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 25.835 1.270 30.485 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 175.785 1.270 200.000 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 25.935 75.000 30.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 175.785 75.000 200.000 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 25.935 1.270 30.385 ;
-    END
-  END VSSIO
-  PIN VSSA
-    PORT
-      LAYER met4 ;
-        RECT 73.730 36.735 75.000 40.185 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 56.405 75.000 56.735 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 47.735 75.000 48.065 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 73.730 51.645 75.000 52.825 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 36.735 1.270 40.185 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 56.405 1.270 56.735 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 47.735 1.270 48.065 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 51.645 1.270 52.825 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 47.735 75.000 56.735 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 36.840 75.000 40.085 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 36.840 1.270 40.085 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 47.735 1.270 56.735 ;
-    END
-  END VSSA
-  PIN VSSD
-    PORT
-      LAYER met4 ;
-        RECT 73.730 41.585 75.000 46.235 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 41.585 1.270 46.235 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 41.685 75.000 46.135 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 41.685 1.270 46.135 ;
-    END
-  END VSSD
-  PIN AMUXBUS_B
-    PORT
-      LAYER met4 ;
-        RECT 0.000 48.365 75.000 51.345 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 48.365 1.270 51.345 ;
-    END
-  END AMUXBUS_B
-  PIN AMUXBUS_A
-    PORT
-      LAYER met4 ;
-        RECT 0.000 53.125 75.000 56.105 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 53.125 1.270 56.105 ;
-    END
-  END AMUXBUS_A
-  PIN VDDIO_Q
-    PORT
-      LAYER met4 ;
-        RECT 73.730 64.085 75.000 68.535 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 64.085 1.270 68.535 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 64.185 75.000 68.435 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 64.185 1.270 68.435 ;
-    END
-  END VDDIO_Q
-  PIN VDDIO
-    PORT
-      LAYER met4 ;
-        RECT 73.730 70.035 75.000 95.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 73.730 19.785 75.000 24.435 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 70.035 1.270 95.000 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 19.785 1.270 24.435 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 19.885 75.000 24.335 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 70.035 75.000 94.985 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 70.035 1.270 94.985 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 19.885 1.270 24.335 ;
-    END
-  END VDDIO
-  PIN VSWITCH
-    PORT
-      LAYER met4 ;
-        RECT 73.730 31.885 75.000 35.335 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 31.885 1.270 35.335 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 31.985 75.000 35.235 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 31.985 1.270 35.235 ;
-    END
-  END VSWITCH
-  PIN VDDA
-    PORT
-      LAYER met4 ;
-        RECT 74.035 14.935 75.000 18.385 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 14.935 0.965 18.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 74.035 15.035 75.000 18.285 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 15.035 0.965 18.285 ;
-    END
-  END VDDA
-  PIN VCCD
-    PORT
-      LAYER met4 ;
-        RECT 73.730 8.885 75.000 13.535 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 8.885 1.270 13.535 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 8.985 75.000 13.435 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 8.985 1.270 13.435 ;
-    END
-  END VCCD
-  PIN VCCHIB
-    PORT
-      LAYER met4 ;
-        RECT 73.730 2.035 75.000 7.485 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 2.035 1.270 7.485 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 2.135 75.000 7.385 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 2.135 1.270 7.385 ;
-    END
-  END VCCHIB
-  PIN VSSIO_Q
-    PORT
-      LAYER met4 ;
-        RECT 73.730 58.235 75.000 62.685 ;
-    END
-    PORT
-      LAYER met4 ;
-        RECT 0.000 58.235 1.270 62.685 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 73.730 58.335 75.000 62.585 ;
-    END
-    PORT
-      LAYER met5 ;
-        RECT 0.000 58.335 1.270 62.585 ;
-    END
-  END VSSIO_Q
-  PIN PAD
-    PORT
-      LAYER met5 ;
-        RECT 17.250 108.455 54.435 164.285 ;
-    END
-  END PAD
-  OBS
-      LAYER nwell ;
-        RECT -0.515 168.515 75.620 170.210 ;
-        RECT -0.515 146.690 1.675 168.515 ;
-        RECT -0.515 144.880 75.620 146.690 ;
-      LAYER li1 ;
-        RECT -0.265 0.185 75.160 199.220 ;
-      LAYER met1 ;
-        RECT -0.145 10.255 75.145 199.210 ;
-        RECT -0.145 0.610 24.625 10.255 ;
-        RECT -0.145 0.185 12.005 0.610 ;
-        RECT 12.825 0.185 14.275 0.610 ;
-        RECT 15.415 0.185 22.080 0.610 ;
-        RECT 22.940 0.185 24.625 0.610 ;
-        RECT 25.415 0.610 75.145 10.255 ;
-        RECT 25.415 0.185 27.300 0.610 ;
-        RECT 28.510 0.185 30.225 0.610 ;
-        RECT 31.435 0.185 32.480 0.610 ;
-        RECT 33.300 0.185 75.145 0.610 ;
-      LAYER met2 ;
-        RECT 0.340 1.690 74.915 199.210 ;
-        RECT 0.340 0.845 19.795 1.690 ;
-        RECT 0.340 0.610 16.965 0.845 ;
-        RECT 0.340 0.000 8.145 0.610 ;
-        RECT 9.175 0.000 12.005 0.610 ;
-        RECT 12.825 0.000 14.275 0.610 ;
-        RECT 15.415 0.000 16.965 0.610 ;
-        RECT 19.190 0.000 19.795 0.845 ;
-        RECT 21.505 0.610 74.915 1.690 ;
-        RECT 21.505 0.000 22.080 0.610 ;
-        RECT 22.940 0.000 27.300 0.610 ;
-        RECT 28.510 0.000 28.655 0.610 ;
-        RECT 29.945 0.000 30.225 0.610 ;
-        RECT 31.435 0.000 32.480 0.610 ;
-        RECT 33.300 0.000 71.935 0.610 ;
-        RECT 73.515 0.000 74.915 0.610 ;
-      LAYER met3 ;
-        RECT 0.965 1.810 74.700 200.000 ;
-        RECT 0.965 0.965 19.675 1.810 ;
-        RECT 0.965 0.730 16.845 0.965 ;
-        RECT 0.965 0.330 8.000 0.730 ;
-        RECT 9.320 0.330 16.845 0.730 ;
-        RECT 19.310 0.330 19.675 0.965 ;
-        RECT 21.625 0.730 74.700 1.810 ;
-        RECT 21.625 0.330 28.535 0.730 ;
-        RECT 30.065 0.330 71.790 0.730 ;
-        RECT 73.660 0.330 74.700 0.730 ;
-      LAYER met4 ;
-        RECT 1.670 175.385 73.330 200.000 ;
-        RECT 0.965 95.400 74.035 175.385 ;
-        RECT 1.670 69.635 73.330 95.400 ;
-        RECT 0.965 68.935 74.035 69.635 ;
-        RECT 1.670 63.685 73.330 68.935 ;
-        RECT 0.965 63.085 74.035 63.685 ;
-        RECT 1.670 57.835 73.330 63.085 ;
-        RECT 0.965 57.135 74.035 57.835 ;
-        RECT 1.670 51.745 73.330 52.725 ;
-        RECT 0.965 46.635 74.035 47.335 ;
-        RECT 1.670 41.185 73.330 46.635 ;
-        RECT 0.965 40.585 74.035 41.185 ;
-        RECT 1.670 36.335 73.330 40.585 ;
-        RECT 0.965 35.735 74.035 36.335 ;
-        RECT 1.670 31.485 73.330 35.735 ;
-        RECT 0.965 30.885 74.035 31.485 ;
-        RECT 1.670 25.435 73.330 30.885 ;
-        RECT 0.965 24.835 74.035 25.435 ;
-        RECT 1.670 19.385 73.330 24.835 ;
-        RECT 0.965 18.785 74.035 19.385 ;
-        RECT 1.365 14.535 73.635 18.785 ;
-        RECT 0.965 13.935 74.035 14.535 ;
-        RECT 1.670 8.485 73.330 13.935 ;
-        RECT 0.965 7.885 74.035 8.485 ;
-        RECT 1.670 2.035 73.330 7.885 ;
-      LAYER met5 ;
-        RECT 2.870 174.185 72.130 200.000 ;
-        RECT 0.000 165.885 75.000 174.185 ;
-        RECT 0.000 106.855 15.650 165.885 ;
-        RECT 56.035 106.855 75.000 165.885 ;
-        RECT 0.000 96.585 75.000 106.855 ;
-        RECT 2.870 18.285 72.130 96.585 ;
-        RECT 2.565 15.035 72.435 18.285 ;
-        RECT 2.870 2.135 72.130 15.035 ;
-  END
-END sky130_fd_io__top_xres4v2
-END LIBRARY
-
