Convert to using comma seperator in .lib.json files.

Updating sky130_fd_sc_hvl 0.0.2.

Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_085C_5v50.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_085C_5v50.lib.json
index f070ee4..4d4043b 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_085C_5v50.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_085C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 1.934745,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.004233,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.004186,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0789267
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004281
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.004098,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003992,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0728456
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004205
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.004282,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.004053,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0460275
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004512
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -617,7 +617,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -972,7 +972,7 @@
         }
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1326,7 +1326,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1681,7 +1681,7 @@
         }
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2035,7 +2035,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2391,7 +2391,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2745,7 +2745,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3101,7 +3101,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3455,7 +3455,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3818,7 +3818,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4171,7 +4171,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4524,7 +4524,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4878,7 +4878,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5234,7 +5234,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5587,7 +5587,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5940,7 +5940,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6294,7 +6294,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6650,7 +6650,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7003,7 +7003,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7356,7 +7356,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7710,7 +7710,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8068,7 +8068,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8421,7 +8421,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8774,7 +8774,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9128,7 +9128,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9486,7 +9486,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9839,7 +9839,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10192,7 +10192,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10546,7 +10546,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_100C_5v50.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_100C_5v50.lib.json
index 4fc08f1..77f5337 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_100C_5v50.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_100C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 4.15865,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,28 +38,28 @@
       "when": "A1&A2&B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.0047,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -87,7 +87,7 @@
           0.0791972
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -120,12 +120,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00449,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -153,7 +153,7 @@
           0.0732205
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,12 +186,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00484,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,7 +219,7 @@
           0.045912
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -252,12 +252,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -395,7 +395,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -534,7 +534,7 @@
         }
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -672,7 +672,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -811,7 +811,7 @@
         }
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -949,7 +949,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1089,7 +1089,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1227,7 +1227,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1367,7 +1367,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1505,7 +1505,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1651,7 +1651,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1788,7 +1788,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1925,7 +1925,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2063,7 +2063,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2203,7 +2203,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2340,7 +2340,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2477,7 +2477,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2615,7 +2615,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2755,7 +2755,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2892,7 +2892,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3029,7 +3029,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3167,7 +3167,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3309,7 +3309,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3446,7 +3446,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3583,7 +3583,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3721,7 +3721,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3863,7 +3863,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4000,7 +4000,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4137,7 +4137,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4275,7 +4275,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_150C_5v50.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_150C_5v50.lib.json
index 92c2404..6130f54 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_150C_5v50.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_150C_5v50.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00478,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.96008
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00461,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.97027
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00483,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.6145
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -359,7 +359,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -499,7 +499,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -637,7 +637,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -777,7 +777,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -915,7 +915,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1061,7 +1061,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1198,7 +1198,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1335,7 +1335,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1473,7 +1473,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1613,7 +1613,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1750,7 +1750,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1887,7 +1887,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2025,7 +2025,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2165,7 +2165,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2302,7 +2302,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2439,7 +2439,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2577,7 +2577,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2719,7 +2719,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2856,7 +2856,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2993,7 +2993,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3131,7 +3131,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3273,7 +3273,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3410,7 +3410,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3547,7 +3547,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3685,7 +3685,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v40.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v40.lib.json
index e029613..46c6c00 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v40.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v40.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00465,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.44727
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00433,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.45195
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00474,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.65055
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -575,7 +575,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -931,7 +931,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1285,7 +1285,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1641,7 +1641,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1995,7 +1995,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2357,7 +2357,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2710,7 +2710,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3063,7 +3063,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3417,7 +3417,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3773,7 +3773,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4126,7 +4126,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4479,7 +4479,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4833,7 +4833,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5189,7 +5189,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5542,7 +5542,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5895,7 +5895,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6249,7 +6249,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6607,7 +6607,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6960,7 +6960,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7313,7 +7313,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7667,7 +7667,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8025,7 +8025,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8378,7 +8378,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8731,7 +8731,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9085,7 +9085,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v95.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v95.lib.json
index 075d450..fd75efe 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v95.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_4v95.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00464,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.7112
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00437,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.71751
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00478,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.09354
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -575,7 +575,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -931,7 +931,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1285,7 +1285,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1641,7 +1641,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1995,7 +1995,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2357,7 +2357,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2710,7 +2710,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3063,7 +3063,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3417,7 +3417,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3773,7 +3773,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4126,7 +4126,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4479,7 +4479,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4833,7 +4833,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5189,7 +5189,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5542,7 +5542,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5895,7 +5895,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6249,7 +6249,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6607,7 +6607,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6960,7 +6960,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7313,7 +7313,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7667,7 +7667,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8025,7 +8025,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8378,7 +8378,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8731,7 +8731,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9085,7 +9085,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_5v50_ccsnoise.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_5v50_ccsnoise.lib.json
index 86226c5..09fd392 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_5v50_ccsnoise.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ff_n40C_5v50_ccsnoise.lib.json
@@ -1,30 +1,30 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00444,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -52,7 +52,7 @@
           1.05221
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -85,13 +85,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00441,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           1.06053
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,13 +152,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00504,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,7 +186,7 @@
           1.68274
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,12 +219,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -578,7 +578,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -934,7 +934,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1288,7 +1288,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1644,7 +1644,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1998,7 +1998,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2362,7 +2362,7 @@
     "timing": [
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -3332,7 +3332,7 @@
           "miller_cap_fall": 0.00105,
           "miller_cap_rise": 0.001013,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -3380,7 +3380,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -3428,7 +3428,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.29376438793018
@@ -3607,7 +3607,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.6437980419675
@@ -3788,7 +3788,7 @@
           "stage_type": "both"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -4758,7 +4758,7 @@
           "miller_cap_fall": 0.00155,
           "miller_cap_rise": 0.000938,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4850,7 +4850,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4942,7 +4942,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.49629493569456
@@ -5121,7 +5121,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64442152654362
@@ -5301,7 +5301,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5654,7 +5654,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6007,7 +6007,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6361,7 +6361,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6718,7 +6718,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -7688,7 +7688,7 @@
           "miller_cap_fall": 0.000485,
           "miller_cap_rise": 0.000446,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -7736,7 +7736,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -7784,7 +7784,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.11126391347829
@@ -7963,7 +7963,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.71976394396171
@@ -8144,7 +8144,7 @@
           "stage_type": "both"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -9114,7 +9114,7 @@
           "miller_cap_fall": 0.00155,
           "miller_cap_rise": 0.000938,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -9206,7 +9206,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -9298,7 +9298,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.49629493569456
@@ -9477,7 +9477,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64442152654362
@@ -9657,7 +9657,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10010,7 +10010,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10363,7 +10363,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10717,7 +10717,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11074,7 +11074,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -12044,7 +12044,7 @@
           "miller_cap_fall": 0.002006,
           "miller_cap_rise": 0.001059,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -12092,7 +12092,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -12140,7 +12140,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.19176911674142
@@ -12319,7 +12319,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.90464451191904
@@ -12501,7 +12501,7 @@
           "when": "!A1 !A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -13471,7 +13471,7 @@
           "miller_cap_fall": 0.00155,
           "miller_cap_rise": 0.000938,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -13563,7 +13563,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -13655,7 +13655,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.49629493569456
@@ -13834,7 +13834,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64442152654362
@@ -14015,7 +14015,7 @@
           "stage_type": "both",
           "when": "!A1 !A2"
         },
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14368,7 +14368,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14721,7 +14721,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15075,7 +15075,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15434,7 +15434,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -16404,7 +16404,7 @@
           "miller_cap_fall": 0.002154,
           "miller_cap_rise": 0.000999,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -16452,7 +16452,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -16500,7 +16500,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.02571517498088
@@ -16679,7 +16679,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   3.0456550776665
@@ -16861,7 +16861,7 @@
           "when": "!A1 A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -17831,7 +17831,7 @@
           "miller_cap_fall": 0.00155,
           "miller_cap_rise": 0.000938,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -17923,7 +17923,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -18015,7 +18015,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.49629493569456
@@ -18194,7 +18194,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64442152654362
@@ -18375,7 +18375,7 @@
           "stage_type": "both",
           "when": "!A1 A2"
         },
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18728,7 +18728,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19081,7 +19081,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19435,7 +19435,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19794,7 +19794,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -20764,7 +20764,7 @@
           "miller_cap_fall": 0.002068,
           "miller_cap_rise": 0.000999,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -20812,7 +20812,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -20860,7 +20860,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.98971813822261
@@ -21039,7 +21039,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   3.07555278685461
@@ -21221,7 +21221,7 @@
           "when": "A1 !A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -22191,7 +22191,7 @@
           "miller_cap_fall": 0.00155,
           "miller_cap_rise": 0.000938,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -22283,7 +22283,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -22375,7 +22375,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.49629493569456
@@ -22554,7 +22554,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64442152654362
@@ -22735,7 +22735,7 @@
           "stage_type": "both",
           "when": "A1 !A2"
         },
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23088,7 +23088,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23441,7 +23441,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23795,7 +23795,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v65.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v65.lib.json
index 8e48e68..850b017 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v65.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v65.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00356,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.00694
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00383,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.00683
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00424,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.00606
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v95.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v95.lib.json
index 8947c27..3dd4225 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v95.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_1v95.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.4494323,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.003708,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003663,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0093818
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003752
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.003635,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.00354,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0083282
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.00373
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003805,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003604,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0059919
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004005
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -581,7 +581,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -900,7 +900,7 @@
         }
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1218,7 +1218,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1538,7 +1538,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1856,7 +1856,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2176,7 +2176,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2494,7 +2494,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2814,7 +2814,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3132,7 +3132,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3458,7 +3458,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3775,7 +3775,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4092,7 +4092,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4410,7 +4410,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4730,7 +4730,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5047,7 +5047,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5364,7 +5364,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5682,7 +5682,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6002,7 +6002,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6319,7 +6319,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6636,7 +6636,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6954,7 +6954,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7276,7 +7276,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7593,7 +7593,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7910,7 +7910,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8228,7 +8228,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8550,7 +8550,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8867,7 +8867,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9184,7 +9184,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9502,7 +9502,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_3v00.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_3v00.lib.json
index 737a588..4b3d52a 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_3v00.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_100C_3v00.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.0042,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.05132
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00436,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.05251
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.0053,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.05582
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_150C_1v65.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_150C_1v65.lib.json
index 350dfc8..fa921df 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_150C_1v65.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_150C_1v65.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.0039,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.00731
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00389,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.00728
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00447,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.00591
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v32.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v32.lib.json
index 7f62ae5..43cb180 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v32.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v32.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.006519753,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.003074,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003081,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -88,7 +88,7 @@
           0.0036052
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003068
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.002987,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002991,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -156,7 +156,7 @@
           0.0031113
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002983
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003012,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003008,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -224,7 +224,7 @@
           0.0015541
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003016
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -497,7 +497,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -732,7 +732,7 @@
         }
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -966,7 +966,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1201,7 +1201,7 @@
         }
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1435,7 +1435,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1671,7 +1671,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1905,7 +1905,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2141,7 +2141,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2375,7 +2375,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2618,7 +2618,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2851,7 +2851,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3084,7 +3084,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3318,7 +3318,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3554,7 +3554,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3787,7 +3787,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4020,7 +4020,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4254,7 +4254,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4490,7 +4490,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4723,7 +4723,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4956,7 +4956,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5190,7 +5190,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5428,7 +5428,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5661,7 +5661,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5894,7 +5894,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6128,7 +6128,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6366,7 +6366,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6599,7 +6599,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6832,7 +6832,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -7066,7 +7066,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v49.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v49.lib.json
index 9ebd43d..6888ada 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v49.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v49.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.008342178,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00292,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.00288,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -88,7 +88,7 @@
           0.0047424
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002961
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.002873,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002809,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -156,7 +156,7 @@
           0.0041063
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002937
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00292,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002814,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -224,7 +224,7 @@
           0.0026437
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003027
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -497,7 +497,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -732,7 +732,7 @@
         }
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -966,7 +966,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1202,7 +1202,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1436,7 +1436,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1672,7 +1672,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1906,7 +1906,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2142,7 +2142,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2376,7 +2376,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2618,7 +2618,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2851,7 +2851,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3084,7 +3084,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3318,7 +3318,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3554,7 +3554,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3787,7 +3787,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4020,7 +4020,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4254,7 +4254,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4490,7 +4490,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4723,7 +4723,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4956,7 +4956,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5190,7 +5190,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5428,7 +5428,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5661,7 +5661,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -5894,7 +5894,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6128,7 +6128,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6366,7 +6366,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6599,7 +6599,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -6832,7 +6832,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -7066,7 +7066,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.0013333,
             0.0173333,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v65_ccsnoise.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v65_ccsnoise.lib.json
index b5b3105..2b07d2c 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v65_ccsnoise.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v65_ccsnoise.lib.json
@@ -1,30 +1,30 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00375,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -52,7 +52,7 @@
           0.00546
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -85,13 +85,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00365,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           0.00523
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,13 +152,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.0041,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,7 +186,7 @@
           0.00476
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,12 +219,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -458,7 +458,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -694,7 +694,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -928,7 +928,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -1164,7 +1164,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x16": {
+        "fall_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -1398,7 +1398,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x16": {
+        "rise_power,pwr_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -1642,7 +1642,7 @@
     "timing": [
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -2612,7 +2612,7 @@
           "miller_cap_fall": 0.000587,
           "miller_cap_rise": 0.000603,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -2660,7 +2660,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -2708,7 +2708,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.1593505859375
@@ -2887,7 +2887,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2399169921875
@@ -3068,7 +3068,7 @@
           "stage_type": "both"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -4038,7 +4038,7 @@
           "miller_cap_fall": 0.001234,
           "miller_cap_rise": 0.000827,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4130,7 +4130,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4222,7 +4222,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -4401,7 +4401,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2528076171875
@@ -4581,7 +4581,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -4814,7 +4814,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -5047,7 +5047,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -5281,7 +5281,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -5518,7 +5518,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -6488,7 +6488,7 @@
           "miller_cap_fall": 0.000406,
           "miller_cap_rise": 0.000188,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -6536,7 +6536,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -6584,7 +6584,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.1690185546875
@@ -6763,7 +6763,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2141357421875
@@ -6944,7 +6944,7 @@
           "stage_type": "both"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -7914,7 +7914,7 @@
           "miller_cap_fall": 0.001234,
           "miller_cap_rise": 0.000827,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8006,7 +8006,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8098,7 +8098,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -8277,7 +8277,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2528076171875
@@ -8457,7 +8457,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -8690,7 +8690,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -8923,7 +8923,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -9157,7 +9157,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -9394,7 +9394,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -10364,7 +10364,7 @@
           "miller_cap_fall": 0.001579,
           "miller_cap_rise": 0.001034,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -10412,7 +10412,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -10460,7 +10460,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2028564453125
@@ -10639,7 +10639,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2447509765625
@@ -10821,7 +10821,7 @@
           "when": "!A1 !A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -11791,7 +11791,7 @@
           "miller_cap_fall": 0.001234,
           "miller_cap_rise": 0.000827,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -11883,7 +11883,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -11975,7 +11975,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -12154,7 +12154,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2528076171875
@@ -12335,7 +12335,7 @@
           "stage_type": "both",
           "when": "!A1 !A2"
         },
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -12568,7 +12568,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -12801,7 +12801,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -13035,7 +13035,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -13274,7 +13274,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -14244,7 +14244,7 @@
           "miller_cap_fall": 0.001785,
           "miller_cap_rise": 0.000965,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -14292,7 +14292,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -14340,7 +14340,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2028564453125
@@ -14519,7 +14519,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2205810546875
@@ -14701,7 +14701,7 @@
           "when": "!A1 A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -15671,7 +15671,7 @@
           "miller_cap_fall": 0.001234,
           "miller_cap_rise": 0.000827,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -15763,7 +15763,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -15855,7 +15855,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -16034,7 +16034,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2528076171875
@@ -16215,7 +16215,7 @@
           "stage_type": "both",
           "when": "!A1 A2"
         },
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -16448,7 +16448,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -16681,7 +16681,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -16915,7 +16915,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -17154,7 +17154,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -18124,7 +18124,7 @@
           "miller_cap_fall": 0.001764,
           "miller_cap_rise": 0.000965,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -18172,7 +18172,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -18220,7 +18220,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2028564453125
@@ -18399,7 +18399,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2238037109375
@@ -18581,7 +18581,7 @@
           "when": "A1 !A2"
         },
         "ccsn_last_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -19551,7 +19551,7 @@
           "miller_cap_fall": 0.001234,
           "miller_cap_rise": 0.000827,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -19643,7 +19643,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -19735,7 +19735,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -19914,7 +19914,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2528076171875
@@ -20095,7 +20095,7 @@
           "stage_type": "both",
           "when": "A1 !A2"
         },
-        "cell_fall delay_template11x16": {
+        "cell_fall,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -20328,7 +20328,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x16": {
+        "cell_rise,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -20561,7 +20561,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x16": {
+        "fall_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
@@ -20795,7 +20795,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x16": {
+        "rise_transition,delay_template11x16": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v95.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v95.lib.json
index 34be1ac..73cd45f 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v95.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__ss_n40C_1v95.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.01440941,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.003527,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003439,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0088901
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003616
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.003445,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003343,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0078693
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003547
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003627,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003384,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0031621
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003869
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -581,7 +581,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -900,7 +900,7 @@
         }
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1218,7 +1218,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1538,7 +1538,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1856,7 +1856,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2176,7 +2176,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2494,7 +2494,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2814,7 +2814,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3132,7 +3132,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3458,7 +3458,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3775,7 +3775,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4092,7 +4092,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4410,7 +4410,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4730,7 +4730,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5047,7 +5047,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5364,7 +5364,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5682,7 +5682,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6002,7 +6002,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6319,7 +6319,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6636,7 +6636,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6954,7 +6954,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7276,7 +7276,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7593,7 +7593,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7910,7 +7910,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8228,7 +8228,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8550,7 +8550,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8867,7 +8867,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9184,7 +9184,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9502,7 +9502,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_025C_3v30.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_025C_3v30.lib.json
index 3c214cb..d22dab8 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_025C_3v30.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_025C_3v30.lib.json
@@ -1,31 +1,31 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.000447,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00457,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -53,7 +53,7 @@
           0.0276634
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -86,12 +86,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00433,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           0.024848
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,12 +152,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00506,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -185,7 +185,7 @@
           0.0158539
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -218,12 +218,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -541,7 +541,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -860,7 +860,7 @@
         }
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1178,7 +1178,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1497,7 +1497,7 @@
         }
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -1815,7 +1815,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2135,7 +2135,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2453,7 +2453,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -2773,7 +2773,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x23": {
+        "fall_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3091,7 +3091,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x23": {
+        "rise_power,pwr_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3417,7 +3417,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -3734,7 +3734,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4051,7 +4051,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4369,7 +4369,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -4689,7 +4689,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5006,7 +5006,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5323,7 +5323,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5641,7 +5641,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -5961,7 +5961,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6278,7 +6278,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6595,7 +6595,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -6913,7 +6913,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7235,7 +7235,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7552,7 +7552,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -7869,7 +7869,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8187,7 +8187,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8509,7 +8509,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x23": {
+        "cell_fall,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -8826,7 +8826,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x23": {
+        "cell_rise,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9143,7 +9143,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x23": {
+        "fall_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
@@ -9461,7 +9461,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x23": {
+        "rise_transition,delay_template11x23": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_100C_3v30.lib.json b/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_100C_3v30.lib.json
index 74011aa..0498a91 100644
--- a/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_100C_3v30.lib.json
+++ b/cells/a21o/sky130_fd_sc_hvl__a21o_1__tt_100C_3v30.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 17.5824,
-  "cell_footprint": "a21o",
+  "cell_footprint": "sky130_fd_sc_hvl__a21o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00462,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.10722
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00435,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.10927
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00494,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.14742
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(A1&A2) | (B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -359,7 +359,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -499,7 +499,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -637,7 +637,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -777,7 +777,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -915,7 +915,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1061,7 +1061,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1198,7 +1198,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1335,7 +1335,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1473,7 +1473,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1613,7 +1613,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1750,7 +1750,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1887,7 +1887,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2025,7 +2025,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2165,7 +2165,7 @@
         "timing_sense": "positive_unate"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2302,7 +2302,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2439,7 +2439,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2577,7 +2577,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2719,7 +2719,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2856,7 +2856,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2993,7 +2993,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3131,7 +3131,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3273,7 +3273,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3410,7 +3410,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3547,7 +3547,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3685,7 +3685,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_085C_5v50.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_085C_5v50.lib.json
index 8f5a907..4438125 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_085C_5v50.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_085C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.8559407,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.003891,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003867,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0794656
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003915
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.004117,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.004007,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0750962
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004227
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003929,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003619,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0478726
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.00424
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -569,7 +569,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -877,7 +877,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1183,7 +1183,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1491,7 +1491,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1797,7 +1797,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2105,7 +2105,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2411,7 +2411,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2718,7 +2718,7 @@
         }
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3024,7 +3024,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3338,7 +3338,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3643,7 +3643,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3948,7 +3948,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4254,7 +4254,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4562,7 +4562,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4867,7 +4867,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5172,7 +5172,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5478,7 +5478,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5786,7 +5786,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6091,7 +6091,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6396,7 +6396,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6702,7 +6702,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7012,7 +7012,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7317,7 +7317,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7622,7 +7622,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7928,7 +7928,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -8238,7 +8238,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -8543,7 +8543,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -8848,7 +8848,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -9154,7 +9154,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_100C_5v50.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_100C_5v50.lib.json
index 7690d07..ba5009b 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_100C_5v50.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_100C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 1.836237,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,28 +38,28 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00461,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -87,7 +87,7 @@
           0.0795762
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -120,12 +120,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00461,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -153,7 +153,7 @@
           0.0754727
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,12 +186,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00507,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,7 +219,7 @@
           0.0477902
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -252,12 +252,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -383,7 +383,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -511,7 +511,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -637,7 +637,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -765,7 +765,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -891,7 +891,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1019,7 +1019,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1145,7 +1145,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1272,7 +1272,7 @@
         }
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1398,7 +1398,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1531,7 +1531,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1656,7 +1656,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1781,7 +1781,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1907,7 +1907,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2035,7 +2035,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2160,7 +2160,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2285,7 +2285,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2411,7 +2411,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2539,7 +2539,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2664,7 +2664,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2789,7 +2789,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2915,7 +2915,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3045,7 +3045,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3170,7 +3170,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3295,7 +3295,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3421,7 +3421,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3551,7 +3551,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3676,7 +3676,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3801,7 +3801,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3927,7 +3927,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_150C_5v50.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_150C_5v50.lib.json
index 82f28b4..bbaaf54 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_150C_5v50.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_150C_5v50.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00468,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.92248
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00466,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.93393
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00483,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.5821
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v40.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v40.lib.json
index 64270d1..848d375 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v40.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v40.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00438,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.44186
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00448,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.44795
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00505,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.63847
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -527,7 +527,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -835,7 +835,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1141,7 +1141,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1449,7 +1449,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1755,7 +1755,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2069,7 +2069,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2374,7 +2374,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2679,7 +2679,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2985,7 +2985,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3293,7 +3293,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3598,7 +3598,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3903,7 +3903,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4209,7 +4209,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4517,7 +4517,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4822,7 +4822,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5127,7 +5127,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5433,7 +5433,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5743,7 +5743,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6048,7 +6048,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6353,7 +6353,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6659,7 +6659,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6969,7 +6969,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7274,7 +7274,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7579,7 +7579,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7885,7 +7885,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v95.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v95.lib.json
index f787d91..21660ff 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v95.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_4v95.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00443,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.70338
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00429,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.71148
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00498,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.07599
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -527,7 +527,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -835,7 +835,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1141,7 +1141,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1449,7 +1449,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1755,7 +1755,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2069,7 +2069,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2374,7 +2374,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2679,7 +2679,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2985,7 +2985,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3293,7 +3293,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3598,7 +3598,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3903,7 +3903,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4209,7 +4209,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4517,7 +4517,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4822,7 +4822,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5127,7 +5127,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5433,7 +5433,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -5743,7 +5743,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6048,7 +6048,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6353,7 +6353,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6659,7 +6659,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6969,7 +6969,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7274,7 +7274,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7579,7 +7579,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7885,7 +7885,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_5v50_ccsnoise.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_5v50_ccsnoise.lib.json
index 9993dc2..f74bc12 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_5v50_ccsnoise.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ff_n40C_5v50_ccsnoise.lib.json
@@ -1,30 +1,30 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00447,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -52,7 +52,7 @@
           1.04022
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -85,13 +85,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00456,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           1.05052
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,13 +152,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00487,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,7 +186,7 @@
           1.65918
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,12 +219,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -530,7 +530,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -838,7 +838,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1144,7 +1144,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1452,7 +1452,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x22": {
+        "fall_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -1758,7 +1758,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x22": {
+        "rise_power,pwr_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -2074,7 +2074,7 @@
     "timing": [
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -3044,7 +3044,7 @@
           "miller_cap_fall": 0.001019,
           "miller_cap_rise": 0.001024,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -3136,7 +3136,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -3228,7 +3228,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.29325400556758
@@ -3407,7 +3407,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.64659049306664
@@ -3587,7 +3587,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -3892,7 +3892,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4197,7 +4197,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4503,7 +4503,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -4812,7 +4812,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -5782,7 +5782,7 @@
           "miller_cap_fall": 0.000729,
           "miller_cap_rise": 0.000439,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -5874,7 +5874,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -5966,7 +5966,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.1074420642958
@@ -6145,7 +6145,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.71910954447515
@@ -6325,7 +6325,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6630,7 +6630,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -6935,7 +6935,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7241,7 +7241,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -7550,7 +7550,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -8520,7 +8520,7 @@
           "miller_cap_fall": 0.002146,
           "miller_cap_rise": 0.001137,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8612,7 +8612,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8704,7 +8704,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.19371301791934
@@ -8883,7 +8883,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.90689695993939
@@ -9064,7 +9064,7 @@
           "stage_type": "both",
           "when": "!A1 !A2"
         },
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -9369,7 +9369,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -9674,7 +9674,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -9980,7 +9980,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -10291,7 +10291,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -11261,7 +11261,7 @@
           "miller_cap_fall": 0.002328,
           "miller_cap_rise": 0.001026,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -11353,7 +11353,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -11445,7 +11445,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   2.02839216816026
@@ -11624,7 +11624,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   3.04772076128432
@@ -11805,7 +11805,7 @@
           "stage_type": "both",
           "when": "!A1 A2"
         },
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -12110,7 +12110,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -12415,7 +12415,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -12721,7 +12721,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -13032,7 +13032,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -5.5,
               -2.75,
@@ -14002,7 +14002,7 @@
           "miller_cap_fall": 0.002366,
           "miller_cap_rise": 0.001092,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -14094,7 +14094,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -14186,7 +14186,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.9899926365374
@@ -14365,7 +14365,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   3.07970741296538
@@ -14546,7 +14546,7 @@
           "stage_type": "both",
           "when": "A1 !A2"
         },
-        "cell_fall delay_template11x22": {
+        "cell_fall,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -14851,7 +14851,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x22": {
+        "cell_rise,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -15156,7 +15156,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x22": {
+        "fall_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
@@ -15462,7 +15462,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x22": {
+        "rise_transition,delay_template11x22": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v65.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v65.lib.json
index 30e4826..742610b 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v65.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v65.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00381,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.007
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00392,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.00711
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00451,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.00626
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v95.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v95.lib.json
index e17e6e1..dabbcba 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v95.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_1v95.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.206487,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00349,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003473,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0092834
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003507
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.003695,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003616,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0086876
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003775
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003526,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.00334,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0061707
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003713
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -521,7 +521,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -781,7 +781,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1039,7 +1039,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1298,7 +1298,7 @@
         }
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1556,7 +1556,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1815,7 +1815,7 @@
         }
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2073,7 +2073,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2333,7 +2333,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2591,7 +2591,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2858,7 +2858,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3115,7 +3115,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3372,7 +3372,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3630,7 +3630,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3890,7 +3890,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4147,7 +4147,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4404,7 +4404,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4662,7 +4662,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4922,7 +4922,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5179,7 +5179,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5436,7 +5436,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5694,7 +5694,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5956,7 +5956,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6213,7 +6213,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6470,7 +6470,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6728,7 +6728,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6990,7 +6990,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7247,7 +7247,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7504,7 +7504,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7762,7 +7762,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_3v00.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_3v00.lib.json
index f3aca42..3ee8b65 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_3v00.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_100C_3v00.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00448,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.05059
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00452,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.05242
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00508,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.05397
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_150C_1v65.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_150C_1v65.lib.json
index 2e5d575..135d724 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_150C_1v65.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_150C_1v65.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00387,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.00738
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00413,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.00756
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00452,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.00616
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v32.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v32.lib.json
index 9d3ec50..a008457 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v32.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v32.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.00477237,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.002985,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002993,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -88,7 +88,7 @@
           0.0035645
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002977
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.003087,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003087,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -156,7 +156,7 @@
           0.003225
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003087
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003021,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003023,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -224,7 +224,7 @@
           0.0016652
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003018
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -425,7 +425,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -588,7 +588,7 @@
         }
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -750,7 +750,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -913,7 +913,7 @@
         }
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1075,7 +1075,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1239,7 +1239,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1401,7 +1401,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1565,7 +1565,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1727,7 +1727,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1898,7 +1898,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2059,7 +2059,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2220,7 +2220,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2382,7 +2382,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2546,7 +2546,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2707,7 +2707,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2868,7 +2868,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3030,7 +3030,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3194,7 +3194,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3355,7 +3355,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3516,7 +3516,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3678,7 +3678,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3844,7 +3844,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4005,7 +4005,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4166,7 +4166,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4328,7 +4328,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4494,7 +4494,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4655,7 +4655,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4816,7 +4816,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4978,7 +4978,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v49.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v49.lib.json
index 94f0efd..5c94d2f 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v49.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v49.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.006116497,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.002823,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002792,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -88,7 +88,7 @@
           0.0046865
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002854
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.002988,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.0029,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -156,7 +156,7 @@
           0.004265
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003077
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.002881,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.002807,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -224,7 +224,7 @@
           0.0027229
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.0013333,
           0.0173333,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.002954
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -425,7 +425,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -588,7 +588,7 @@
         }
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -750,7 +750,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -913,7 +913,7 @@
         }
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1075,7 +1075,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1239,7 +1239,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1401,7 +1401,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1565,7 +1565,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1727,7 +1727,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -1898,7 +1898,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2059,7 +2059,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2220,7 +2220,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2382,7 +2382,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2546,7 +2546,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2707,7 +2707,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -2868,7 +2868,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3030,7 +3030,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3194,7 +3194,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3355,7 +3355,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3516,7 +3516,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3678,7 +3678,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -3844,7 +3844,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4005,7 +4005,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4166,7 +4166,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4328,7 +4328,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4494,7 +4494,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4655,7 +4655,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4816,7 +4816,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
@@ -4978,7 +4978,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.0013333,
             0.0173333,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v65_ccsnoise.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v65_ccsnoise.lib.json
index 804a339..dfe5608 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v65_ccsnoise.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v65_ccsnoise.lib.json
@@ -1,30 +1,30 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00371,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -52,7 +52,7 @@
           0.0055
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -85,13 +85,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00347,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           0.00549
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,13 +152,13 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.0043,
     "clock": "false",
     "direction": "input",
     "input_voltage": "GENERAL",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -186,7 +186,7 @@
           0.00491
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -219,12 +219,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -386,7 +386,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -550,7 +550,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -712,7 +712,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -876,7 +876,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x10": {
+        "fall_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -1038,7 +1038,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x10": {
+        "rise_power,pwr_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -1210,7 +1210,7 @@
     "timing": [
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -2180,7 +2180,7 @@
           "miller_cap_fall": 0.000534,
           "miller_cap_rise": 0.000556,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -2272,7 +2272,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -2364,7 +2364,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.1609619140625
@@ -2543,7 +2543,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2415283203125
@@ -2723,7 +2723,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -2884,7 +2884,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -3045,7 +3045,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -3207,7 +3207,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -3372,7 +3372,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -4342,7 +4342,7 @@
           "miller_cap_fall": 0.000365,
           "miller_cap_rise": 0.000161,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4434,7 +4434,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -4526,7 +4526,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.1690185546875
@@ -4705,7 +4705,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2157470703125
@@ -4885,7 +4885,7 @@
           },
           "stage_type": "both"
         },
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -5046,7 +5046,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -5207,7 +5207,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -5369,7 +5369,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -5534,7 +5534,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -6504,7 +6504,7 @@
           "miller_cap_fall": 0.001611,
           "miller_cap_rise": 0.001006,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -6596,7 +6596,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -6688,7 +6688,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -6867,7 +6867,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2495849609375
@@ -7048,7 +7048,7 @@
           "stage_type": "both",
           "when": "!A1 !A2"
         },
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -7209,7 +7209,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -7370,7 +7370,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -7532,7 +7532,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -7699,7 +7699,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -8669,7 +8669,7 @@
           "miller_cap_fall": 0.001859,
           "miller_cap_rise": 0.001174,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8761,7 +8761,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -8853,7 +8853,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -9032,7 +9032,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2270263671875
@@ -9213,7 +9213,7 @@
           "stage_type": "both",
           "when": "!A1 A2"
         },
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -9374,7 +9374,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -9535,7 +9535,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -9697,7 +9697,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -9864,7 +9864,7 @@
       },
       {
         "ccsn_first_stage": {
-          "dc_current ccsn_dc": {
+          "dc_current,ccsn_dc": {
             "index_1": [
               -1.65,
               -0.825,
@@ -10834,7 +10834,7 @@
           "miller_cap_fall": 0.001797,
           "miller_cap_rise": 0.001006,
           "output_voltage_fall": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -10926,7 +10926,7 @@
             ]
           },
           "output_voltage_rise": {
-            "vector ccsn_ovrf": [
+            "vector,ccsn_ovrf": [
               {
                 "index_1": [
                   0.01
@@ -11018,7 +11018,7 @@
             ]
           },
           "propagated_noise_high": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2109130859375
@@ -11197,7 +11197,7 @@
             ]
           },
           "propagated_noise_low": {
-            "vector ccsn_pnlh": [
+            "vector,ccsn_pnlh": [
               {
                 "index_1": [
                   1.2302490234375
@@ -11378,7 +11378,7 @@
           "stage_type": "both",
           "when": "A1 !A2"
         },
-        "cell_fall delay_template11x10": {
+        "cell_fall,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -11539,7 +11539,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x10": {
+        "cell_rise,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -11700,7 +11700,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x10": {
+        "fall_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
@@ -11862,7 +11862,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x10": {
+        "rise_transition,delay_template11x10": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v95.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v95.lib.json
index 45f417d..946aafe 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v95.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__ss_n40C_1v95.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.01059894,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -38,29 +38,29 @@
       "when": "A1&A2&!B1"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.003341,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003308,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -88,7 +88,7 @@
           0.0087738
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -122,13 +122,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003375
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00352,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003438,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -156,7 +156,7 @@
           0.0080936
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -190,13 +190,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003602
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.003404,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003248,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -224,7 +224,7 @@
           0.0044408
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -258,12 +258,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.003559
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -521,7 +521,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -781,7 +781,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1039,7 +1039,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1298,7 +1298,7 @@
         }
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1556,7 +1556,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1815,7 +1815,7 @@
         }
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2073,7 +2073,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2333,7 +2333,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2591,7 +2591,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2858,7 +2858,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3115,7 +3115,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3372,7 +3372,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3630,7 +3630,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3890,7 +3890,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4147,7 +4147,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4404,7 +4404,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4662,7 +4662,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4922,7 +4922,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5179,7 +5179,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5436,7 +5436,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5694,7 +5694,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5956,7 +5956,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6213,7 +6213,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6470,7 +6470,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6728,7 +6728,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6990,7 +6990,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7247,7 +7247,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7504,7 +7504,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7762,7 +7762,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_025C_3v30.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_025C_3v30.lib.json
index f6faf7f..c7187d9 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_025C_3v30.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_025C_3v30.lib.json
@@ -1,31 +1,31 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.000686,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00431,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -53,7 +53,7 @@
           0.0277231
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -86,12 +86,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00413,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           0.0257277
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,12 +152,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00481,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -185,7 +185,7 @@
           0.0108067
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -218,12 +218,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -481,7 +481,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -741,7 +741,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -999,7 +999,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1259,7 +1259,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1517,7 +1517,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -1777,7 +1777,7 @@
         "when": "(A1&!A2)"
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2035,7 +2035,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2294,7 +2294,7 @@
         }
       },
       {
-        "fall_power pwr_template11x18": {
+        "fall_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2552,7 +2552,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x18": {
+        "rise_power,pwr_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -2817,7 +2817,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3074,7 +3074,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3331,7 +3331,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3589,7 +3589,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -3849,7 +3849,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4106,7 +4106,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4363,7 +4363,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4621,7 +4621,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -4881,7 +4881,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5138,7 +5138,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5395,7 +5395,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5653,7 +5653,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -5915,7 +5915,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6172,7 +6172,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6429,7 +6429,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6687,7 +6687,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -6949,7 +6949,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x18": {
+        "cell_fall,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7206,7 +7206,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x18": {
+        "cell_rise,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7463,7 +7463,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x18": {
+        "fall_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
@@ -7721,7 +7721,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x18": {
+        "rise_transition,delay_template11x18": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_100C_3v30.lib.json b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_100C_3v30.lib.json
index 01f7785..adb259b 100644
--- a/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_100C_3v30.lib.json
+++ b/cells/a21oi/sky130_fd_sc_hvl__a21oi_1__tt_100C_3v30.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 13.6752,
-  "cell_footprint": "a21oi",
+  "cell_footprint": "sky130_fd_sc_hvl__a21oi",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00447,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.10553
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00455,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.10836
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00481,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.14348
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin Y": {
+  "pin,Y": {
     "direction": "output",
     "function": "(!A1&!B1) | (!A2&!B1)",
     "internal_power": [
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -347,7 +347,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -475,7 +475,7 @@
         "when": "(A2&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -601,7 +601,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -729,7 +729,7 @@
         "when": "(A1&!B1)"
       },
       {
-        "fall_power pwr_template11x7": {
+        "fall_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -855,7 +855,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x7": {
+        "rise_power,pwr_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -989,7 +989,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1114,7 +1114,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1239,7 +1239,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1365,7 +1365,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1493,7 +1493,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1618,7 +1618,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1743,7 +1743,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1869,7 +1869,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -1997,7 +1997,7 @@
         "timing_sense": "negative_unate"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2122,7 +2122,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2247,7 +2247,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2373,7 +2373,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2503,7 +2503,7 @@
         "when": "(!A1&!A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2628,7 +2628,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2753,7 +2753,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -2879,7 +2879,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3009,7 +3009,7 @@
         "when": "(!A1&A2)"
       },
       {
-        "cell_fall delay_template11x7": {
+        "cell_fall,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3134,7 +3134,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x7": {
+        "cell_rise,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3259,7 +3259,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x7": {
+        "fall_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
@@ -3385,7 +3385,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x7": {
+        "rise_transition,delay_template11x7": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_085C_5v50.lib.json b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_085C_5v50.lib.json
index 212275c..3f15bdb 100644
--- a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_085C_5v50.lib.json
+++ b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_085C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 21.4896,
-  "cell_footprint": "a22o",
+  "cell_footprint": "sky130_fd_sc_hvl__a22o",
   "cell_leakage_power": 2.009549,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -70,29 +70,29 @@
       "when": "A1&A2&B1&!B2"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.004211,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.004164,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -120,7 +120,7 @@
           0.0798433
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -154,13 +154,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004258
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.004149,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.004042,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -188,7 +188,7 @@
           0.0752133
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -222,13 +222,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004255
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.004157,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003981,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -256,7 +256,7 @@
           0.0827587
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -290,13 +290,13 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004333
   },
-  "pin B2": {
+  "pin,B2": {
     "capacitance": 0.004244,
     "clock": "false",
     "direction": "input",
     "fall_capacitance": 0.003985,
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -324,7 +324,7 @@
           0.079605
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -358,12 +358,12 @@
     "related_power_pin": "VPWR",
     "rise_capacitance": 0.004503
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(B1&B2) | (A1&A2)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -717,7 +717,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1073,7 +1073,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1427,7 +1427,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1783,7 +1783,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2137,7 +2137,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2493,7 +2493,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2847,7 +2847,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3203,7 +3203,7 @@
         "when": "(A1&!A2&B1)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3557,7 +3557,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3913,7 +3913,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4267,7 +4267,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4623,7 +4623,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4977,7 +4977,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5333,7 +5333,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5687,7 +5687,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6043,7 +6043,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6397,7 +6397,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6753,7 +6753,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7107,7 +7107,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7463,7 +7463,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7817,7 +7817,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8173,7 +8173,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8527,7 +8527,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8890,7 +8890,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9243,7 +9243,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9596,7 +9596,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9950,7 +9950,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10308,7 +10308,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10661,7 +10661,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11014,7 +11014,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11368,7 +11368,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11726,7 +11726,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12079,7 +12079,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12432,7 +12432,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12786,7 +12786,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13144,7 +13144,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13497,7 +13497,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13850,7 +13850,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14204,7 +14204,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14562,7 +14562,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14915,7 +14915,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15268,7 +15268,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15622,7 +15622,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15980,7 +15980,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -16333,7 +16333,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -16686,7 +16686,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -17040,7 +17040,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -17398,7 +17398,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -17751,7 +17751,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18104,7 +18104,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18458,7 +18458,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18816,7 +18816,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19169,7 +19169,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19522,7 +19522,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19876,7 +19876,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -20234,7 +20234,7 @@
         "when": "(!A1&A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -20587,7 +20587,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -20940,7 +20940,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -21294,7 +21294,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -21652,7 +21652,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -22005,7 +22005,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -22358,7 +22358,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -22712,7 +22712,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23070,7 +23070,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23423,7 +23423,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -23776,7 +23776,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -24130,7 +24130,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -24488,7 +24488,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -24841,7 +24841,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -25194,7 +25194,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -25548,7 +25548,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_100C_5v50.lib.json b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_100C_5v50.lib.json
index 735d5f8..7ff031b 100644
--- a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_100C_5v50.lib.json
+++ b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_100C_5v50.lib.json
@@ -1,6 +1,6 @@
 {
   "area": 21.4896,
-  "cell_footprint": "a22o",
+  "cell_footprint": "sky130_fd_sc_hvl__a22o",
   "cell_leakage_power": 4.249375,
   "driver_waveform_fall": "ramp",
   "driver_waveform_rise": "ramp",
@@ -70,28 +70,28 @@
       "when": "A1&A2&B1&!B2"
     }
   ],
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00471,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -119,7 +119,7 @@
           0.0793069
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -152,12 +152,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00462,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -185,7 +185,7 @@
           0.0753434
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -218,12 +218,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00476,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -251,7 +251,7 @@
           0.0828841
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -284,12 +284,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B2": {
+  "pin,B2": {
     "capacitance": 0.00483,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -317,7 +317,7 @@
           0.0799897
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -350,12 +350,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(B1&B2) | (A1&A2)",
     "internal_power": [
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -493,7 +493,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -633,7 +633,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -771,7 +771,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -911,7 +911,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1049,7 +1049,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1189,7 +1189,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1327,7 +1327,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1467,7 +1467,7 @@
         "when": "(A1&!A2&B1)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1605,7 +1605,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1745,7 +1745,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1883,7 +1883,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2023,7 +2023,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2161,7 +2161,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2301,7 +2301,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2439,7 +2439,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2579,7 +2579,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2717,7 +2717,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2857,7 +2857,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2995,7 +2995,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3135,7 +3135,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3273,7 +3273,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3413,7 +3413,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3551,7 +3551,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3697,7 +3697,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3834,7 +3834,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3971,7 +3971,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4109,7 +4109,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4251,7 +4251,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4388,7 +4388,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4525,7 +4525,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4663,7 +4663,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4805,7 +4805,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4942,7 +4942,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5079,7 +5079,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5217,7 +5217,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5359,7 +5359,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5496,7 +5496,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5633,7 +5633,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5771,7 +5771,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5913,7 +5913,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6050,7 +6050,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6187,7 +6187,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6325,7 +6325,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6467,7 +6467,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6604,7 +6604,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6741,7 +6741,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6879,7 +6879,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7021,7 +7021,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7158,7 +7158,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7295,7 +7295,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7433,7 +7433,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7575,7 +7575,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7712,7 +7712,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7849,7 +7849,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7987,7 +7987,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8129,7 +8129,7 @@
         "when": "(!A1&A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8266,7 +8266,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8403,7 +8403,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8541,7 +8541,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8683,7 +8683,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8820,7 +8820,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -8957,7 +8957,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9095,7 +9095,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9237,7 +9237,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9374,7 +9374,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9511,7 +9511,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9649,7 +9649,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9791,7 +9791,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -9928,7 +9928,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -10065,7 +10065,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -10203,7 +10203,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_150C_5v50.lib.json b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_150C_5v50.lib.json
index 34150bc..939ede6 100644
--- a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_150C_5v50.lib.json
+++ b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_150C_5v50.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 21.4896,
-  "cell_footprint": "a22o",
+  "cell_footprint": "sky130_fd_sc_hvl__a22o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00497,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           1.67689
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00468,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           1.69958
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00478,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.6626
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B2": {
+  "pin,B2": {
     "capacitance": 0.00485,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -249,7 +249,7 @@
           1.68228
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -282,12 +282,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(B1&B2) | (A1&A2)",
     "internal_power": [
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -425,7 +425,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -565,7 +565,7 @@
         "when": "(A2&!B1) | (A2&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -703,7 +703,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -843,7 +843,7 @@
         "when": "(A1&!B1) | (A1&!B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -981,7 +981,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1121,7 +1121,7 @@
         "when": "(!A1&B2) | (!A2&B2)"
       },
       {
-        "fall_power pwr_template11x8": {
+        "fall_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1259,7 +1259,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x8": {
+        "rise_power,pwr_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1405,7 +1405,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1542,7 +1542,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1679,7 +1679,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1817,7 +1817,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -1959,7 +1959,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2096,7 +2096,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2233,7 +2233,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2371,7 +2371,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2513,7 +2513,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2650,7 +2650,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2787,7 +2787,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -2925,7 +2925,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3067,7 +3067,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3204,7 +3204,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3341,7 +3341,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3479,7 +3479,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3621,7 +3621,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3758,7 +3758,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -3895,7 +3895,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4033,7 +4033,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4175,7 +4175,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4312,7 +4312,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4449,7 +4449,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4587,7 +4587,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4729,7 +4729,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -4866,7 +4866,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5003,7 +5003,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5141,7 +5141,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5283,7 +5283,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5420,7 +5420,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5557,7 +5557,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5695,7 +5695,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5837,7 +5837,7 @@
         "when": "(!A1&A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -5974,7 +5974,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6111,7 +6111,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6249,7 +6249,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6391,7 +6391,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6528,7 +6528,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6665,7 +6665,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6803,7 +6803,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -6945,7 +6945,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7082,7 +7082,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7219,7 +7219,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7357,7 +7357,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7499,7 +7499,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "cell_fall delay_template11x8": {
+        "cell_fall,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7636,7 +7636,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x8": {
+        "cell_rise,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7773,7 +7773,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x8": {
+        "fall_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
@@ -7911,7 +7911,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x8": {
+        "rise_transition,delay_template11x8": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v40.lib.json b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v40.lib.json
index 0d8194d..dce29b8 100644
--- a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v40.lib.json
+++ b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v40.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 21.4896,
-  "cell_footprint": "a22o",
+  "cell_footprint": "sky130_fd_sc_hvl__a22o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00454,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           0.80812
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00439,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           0.8192
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00464,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           0.82841
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B2": {
+  "pin,B2": {
     "capacitance": 0.00478,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -249,7 +249,7 @@
           0.80457
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -282,12 +282,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(B1&B2) | (A1&A2)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -641,7 +641,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -997,7 +997,7 @@
         "when": "(A2&!B1) | (A2&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1351,7 +1351,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1707,7 +1707,7 @@
         "when": "(A1&!B1) | (A1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2061,7 +2061,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2417,7 +2417,7 @@
         "when": "(!A1&B2) | (!A2&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2771,7 +2771,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3133,7 +3133,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3486,7 +3486,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3839,7 +3839,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4193,7 +4193,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4551,7 +4551,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4904,7 +4904,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5257,7 +5257,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5611,7 +5611,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5969,7 +5969,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6322,7 +6322,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6675,7 +6675,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7029,7 +7029,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7387,7 +7387,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7740,7 +7740,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8093,7 +8093,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8447,7 +8447,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8805,7 +8805,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9158,7 +9158,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9511,7 +9511,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9865,7 +9865,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10223,7 +10223,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10576,7 +10576,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10929,7 +10929,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11283,7 +11283,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11641,7 +11641,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11994,7 +11994,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12347,7 +12347,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12701,7 +12701,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13059,7 +13059,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13412,7 +13412,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13765,7 +13765,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14119,7 +14119,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14477,7 +14477,7 @@
         "when": "(!A1&A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14830,7 +14830,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15183,7 +15183,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15537,7 +15537,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15895,7 +15895,7 @@
         "when": "(A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -16248,7 +16248,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -16601,7 +16601,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -16955,7 +16955,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -17313,7 +17313,7 @@
         "when": "(!A1&!A2&B1)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -17666,7 +17666,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18019,7 +18019,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18373,7 +18373,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -18731,7 +18731,7 @@
         "when": "(!A1&A2&B1)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19084,7 +19084,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19437,7 +19437,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -19791,7 +19791,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
diff --git a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v95.lib.json b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v95.lib.json
index 13e11a6..bc8d057 100644
--- a/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v95.lib.json
+++ b/cells/a22o/sky130_fd_sc_hvl__a22o_1__ff_n40C_4v95.lib.json
@@ -1,29 +1,29 @@
 {
   "area": 21.4896,
-  "cell_footprint": "a22o",
+  "cell_footprint": "sky130_fd_sc_hvl__a22o",
   "cell_leakage_power": 0.0,
-  "pg_pin VGND": {
+  "pg_pin,VGND": {
     "pg_type": "primary_ground",
     "voltage_name": "VGND"
   },
-  "pg_pin VNB": {
+  "pg_pin,VNB": {
     "pg_type": "pwell",
     "voltage_name": "VNB"
   },
-  "pg_pin VPB": {
+  "pg_pin,VPB": {
     "pg_type": "nwell",
     "voltage_name": "VPB"
   },
-  "pg_pin VPWR": {
+  "pg_pin,VPWR": {
     "pg_type": "primary_power",
     "voltage_name": "VPWR"
   },
-  "pin A1": {
+  "pin,A1": {
     "capacitance": 0.00459,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -51,7 +51,7 @@
           1.27743
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -84,12 +84,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin A2": {
+  "pin,A2": {
     "capacitance": 0.00448,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -117,7 +117,7 @@
           1.29274
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -150,12 +150,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B1": {
+  "pin,B1": {
     "capacitance": 0.00468,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -183,7 +183,7 @@
           1.31686
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -216,12 +216,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin B2": {
+  "pin,B2": {
     "capacitance": 0.00473,
     "clock": "false",
     "direction": "input",
     "internal_power": {
-      "fall_power hidden_pwr_template11": {
+      "fall_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -249,7 +249,7 @@
           1.27562
         ]
       },
-      "rise_power hidden_pwr_template11": {
+      "rise_power,hidden_pwr_template11": {
         "index_1": [
           0.001,
           0.013,
@@ -282,12 +282,12 @@
     "related_ground_pin": "VGND",
     "related_power_pin": "VPWR"
   },
-  "pin X": {
+  "pin,X": {
     "direction": "output",
     "function": "(B1&B2) | (A1&A2)",
     "internal_power": [
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -641,7 +641,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -997,7 +997,7 @@
         "when": "(A2&!B1) | (A2&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1351,7 +1351,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -1707,7 +1707,7 @@
         "when": "(A1&!B1) | (A1&!B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2061,7 +2061,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2417,7 +2417,7 @@
         "when": "(!A1&B2) | (!A2&B2)"
       },
       {
-        "fall_power pwr_template11x26": {
+        "fall_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -2771,7 +2771,7 @@
           ]
         },
         "related_pin": "B2",
-        "rise_power pwr_template11x26": {
+        "rise_power,pwr_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3133,7 +3133,7 @@
     "related_power_pin": "VPWR",
     "timing": [
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3486,7 +3486,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -3839,7 +3839,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4193,7 +4193,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4551,7 +4551,7 @@
         "when": "(A2&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -4904,7 +4904,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5257,7 +5257,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5611,7 +5611,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -5969,7 +5969,7 @@
         "when": "(A2&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6322,7 +6322,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -6675,7 +6675,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7029,7 +7029,7 @@
           ]
         },
         "related_pin": "A1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7387,7 +7387,7 @@
         "when": "(A2&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -7740,7 +7740,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8093,7 +8093,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8447,7 +8447,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -8805,7 +8805,7 @@
         "when": "(A1&!B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9158,7 +9158,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9511,7 +9511,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -9865,7 +9865,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10223,7 +10223,7 @@
         "when": "(A1&!B1&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10576,7 +10576,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -10929,7 +10929,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11283,7 +11283,7 @@
           ]
         },
         "related_pin": "A2",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11641,7 +11641,7 @@
         "when": "(A1&B1&!B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -11994,7 +11994,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12347,7 +12347,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -12701,7 +12701,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13059,7 +13059,7 @@
         "when": "(!A1&!A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13412,7 +13412,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -13765,7 +13765,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26": {
+        "fall_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14119,7 +14119,7 @@
           ]
         },
         "related_pin": "B1",
-        "rise_transition delay_template11x26": {
+        "rise_transition,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14477,7 +14477,7 @@
         "when": "(!A1&A2&B2)"
       },
       {
-        "cell_fall delay_template11x26": {
+        "cell_fall,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -14830,7 +14830,7 @@
             ]
           ]
         },
-        "cell_rise delay_template11x26": {
+        "cell_rise,delay_template11x26": {
           "index_1": [
             0.001,
             0.013,
@@ -15183,7 +15183,7 @@
             ]
           ]
         },
-        "fall_transition delay_template11x26":