library (ls05_stdcells) {
  delay_model: table_lookup;
  in_place_swap_mode: match_footprint;
  time_unit: "1ns";
  voltage_unit: "1V";
  current_unit: "1uA";
  pulling_resistance_unit: "1kohm";
  leakage_power_unit: "1nW";
  capacitive_load_unit (1.0, pf);
  slew_upper_threshold_pct_rise: 80.0;
  slew_lower_threshold_pct_rise: 20.0;
  slew_upper_threshold_pct_fall: 80.0;
  slew_lower_threshold_pct_fall: 20.0;
  input_threshold_pct_rise: 50.0;
  input_threshold_pct_fall: 50.0;
  output_threshold_pct_rise: 50.0;
  output_threshold_pct_fall: 50.0;
  nom_process: 1.0;
  nom_voltage: 5.0;
  nom_temperature: 25.0;
  default_operating_conditions: typical;
  operating_conditions (typical) {
    process: 1.0;
    voltage: 5.0;
    temperature: 25.0;
  }
  lu_table_template (delay_template_5x5) {
    variable_1: total_output_net_capacitance;
    variable_2: input_net_transition;
    index_1 (
      "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
    );
    index_2 (
      "1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
    );
  }
  cell (AOI22X1) {
    area: 1097280.0;
    cell_leakage_power: 0.1173;
    pin (D) {
      direction: input;
      rise_capacitance: 0.004150836637055694;
      fall_capacitance: 4.293461827055451e-05;
      capacitance: 0.0020968856276631243;
    }
    pin (C) {
      direction: input;
      rise_capacitance: 0.004935392181405116;
      fall_capacitance: 0.004717183954380674;
      capacitance: 0.004826288067892895;
    }
    pin (B) {
      direction: input;
      rise_capacitance: 0.004150898468773608;
      fall_capacitance: 0.005752203124409789;
      capacitance: 0.004951550796591699;
    }
    pin (A) {
      direction: input;
      rise_capacitance: 0.00493547941452175;
      fall_capacitance: 0.007832228421315403;
      capacitance: 0.006383853917918576;
    }
    pin (Y) {
      direction: output;
      function: "!(D&C&!B&!A|D&C&B&!A|!D&!C&B&A|D&!C&B&A|D&C&B&A|!D&C&B&A|D&C&!B&A)";
      function: "(!(A & B & C & D + A & B & C & !D + A & B & D & !C + A & C & D & !B + B & C & D & !A + A & B & !C & !D + C & D & !A & !B))";
      timing () {
        related_pin: "A";
        timing_sense: negative_unate;
        cell_rise (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.022453, 0.024534, 0.027322, 0.029301, -0.013605", \
            "0.094099, 0.094146, 0.096422, 0.104923, 0.133468", \
            "0.165999, 0.165576, 0.166553, 0.171933, 0.239819", \
            "0.309709, 0.308987, 0.308926, 0.311303, 0.412228", \
            "1.459135, 1.458114, 1.456788, 1.454769, 1.495149"
          );
        }
        cell_fall (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.010762, 0.031215, 0.042613, 0.056720, 0.163173", \
            "0.106795, 0.114659, 0.123175, 0.139761, 0.315494", \
            "0.201577, 0.206563, 0.212378, 0.225460, 0.423829", \
            "0.390704, 0.393586, 0.396927, 0.405778, 0.599884", \
            "1.902537, 1.903178, 1.903203, 1.904622, 1.991405"
          );
        }
        rise_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.023524, 0.029914, 0.043867, 0.071865, 0.348115", \
            "0.124790, 0.124832, 0.126119, 0.138292, 0.474155", \
            "0.228743, 0.228744, 0.228751, 0.231812, 0.561135", \
            "0.436738, 0.436734, 0.436738, 0.436740, 0.675654", \
            "2.100895, 2.100896, 2.100897, 2.100896, 2.108562"
          );
        }
        fall_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.034663, 0.063510, 0.047967, 0.068994, 0.335936", \
            "0.166389, 0.166412, 0.166844, 0.173304, 0.460327", \
            "0.297251, 0.297251, 0.297255, 0.297868, 0.539773", \
            "0.558920, 0.558909, 0.558922, 0.558921, 0.702122", \
            "2.651676, 2.651678, 2.651676, 2.651675, 2.651676"
          );
        }
      }
      timing () {
        related_pin: "B";
        timing_sense: negative_unate;
        cell_rise (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.019651, 0.021446, 0.022931, 0.021898, -0.058654", \
            "0.091977, 0.091918, 0.093938, 0.101438, 0.098787", \
            "0.163917, 0.163487, 0.164267, 0.169031, 0.210590", \
            "0.307654, 0.306986, 0.306812, 0.308826, 0.390145", \
            "1.457089, 1.456195, 1.454848, 1.452765, 1.487992"
          );
        }
        cell_fall (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.013313, 0.029492, 0.038920, 0.053701, 0.189828", \
            "0.107559, 0.109470, 0.112797, 0.125324, 0.314605", \
            "0.202143, 0.200386, 0.199276, 0.203456, 0.404946", \
            "0.391163, 0.386838, 0.381869, 0.377141, 0.555274", \
            "1.902923, 1.895945, 1.886158, 1.868337, 1.797664"
          );
        }
        rise_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.019077, 0.026325, 0.041095, 0.072960, 0.515154", \
            "0.120223, 0.120250, 0.121709, 0.133832, 0.515903", \
            "0.224169, 0.224172, 0.224205, 0.227354, 0.569826", \
            "0.432139, 0.432141, 0.432149, 0.432153, 0.667848", \
            "2.096306, 2.096306, 2.096306, 2.096307, 2.104382"
          );
        }
        fall_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.036269, 0.063193, 0.062392, 0.098967, 0.551553", \
            "0.166373, 0.166389, 0.169112, 0.187994, 0.688610", \
            "0.297276, 0.297267, 0.297275, 0.302013, 0.760566", \
            "0.558916, 0.558919, 0.558917, 0.558918, 0.890221", \
            "2.651678, 2.651678, 2.651674, 2.651677, 2.657773"
          );
        }
      }
      timing () {
        related_pin: "C";
        timing_sense: negative_unate;
        cell_rise (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.020200, 0.018794, 0.020910, 0.023798, 0.017569", \
            "0.092119, 0.084321, 0.084972, 0.095024, 0.157181", \
            "0.163930, 0.154431, 0.151294, 0.155481, 0.252498", \
            "0.307422, 0.296784, 0.290296, 0.286804, 0.407284", \
            "1.454937, 1.443187, 1.432682, 1.416494, 1.394586"
          );
        }
        cell_fall (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.010498, 0.021541, 0.028604, 0.036531, 0.082739", \
            "0.101264, 0.104773, 0.111902, 0.126711, 0.261658", \
            "0.195526, 0.196677, 0.201528, 0.213170, 0.380207", \
            "0.384366, 0.383767, 0.386473, 0.394329, 0.568488", \
            "1.895957, 1.893533, 1.893309, 1.894383, 1.975065"
          );
        }
        rise_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.020633, 0.030682, 0.050793, 0.085135, 0.465687", \
            "0.123409, 0.123499, 0.127912, 0.152623, 0.625796", \
            "0.228067, 0.228069, 0.228437, 0.238660, 0.715340", \
            "0.437443, 0.437449, 0.437446, 0.438286, 0.825117", \
            "2.112769, 2.112769, 2.112771, 2.112769, 2.154781"
          );
        }
        fall_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.021627, 0.033850, 0.033202, 0.057903, 0.432542", \
            "0.146054, 0.146118, 0.146677, 0.153711, 0.456404", \
            "0.276800, 0.276784, 0.276786, 0.277558, 0.525056", \
            "0.538347, 0.538333, 0.538346, 0.538344, 0.682865", \
            "2.630986, 2.630987, 2.630989, 2.630987, 2.630987"
          );
        }
      }
      timing () {
        related_pin: "D";
        timing_sense: negative_unate;
        cell_rise (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.016935, 0.015243, 0.015695, 0.014740, -0.033455", \
            "0.089882, 0.081949, 0.082234, 0.090924, 0.115190", \
            "0.161756, 0.152189, 0.148795, 0.152107, 0.216277", \
            "0.305276, 0.294641, 0.288008, 0.283956, 0.379732", \
            "1.452819, 1.441160, 1.430652, 1.414354, 1.384946"
          );
        }
        cell_fall (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.011131, 0.019163, 0.024855, 0.033370, 0.110590", \
            "0.101703, 0.099111, 0.101250, 0.112517, 0.253820", \
            "0.195929, 0.190278, 0.188100, 0.190853, 0.353274", \
            "0.384754, 0.376936, 0.371227, 0.365324, 0.516649", \
            "1.896340, 1.886290, 1.876220, 1.858031, 1.777651"
          );
        }
        rise_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.016198, 0.026696, 0.047157, 0.087412, 0.629442", \
            "0.118843, 0.118871, 0.123371, 0.147773, 0.655892", \
            "0.223461, 0.223424, 0.223842, 0.234191, 0.716081", \
            "0.432839, 0.432831, 0.432841, 0.433715, 0.813736", \
            "2.108153, 2.108150, 2.108150, 2.108152, 2.151140"
          );
        }
        fall_transition (delay_template_5x5) {
          index_1 (
            "0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
          );
          index_2 (
            "0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
          );
          values (
            "0.019318, 0.037477, 0.046391, 0.085342, 0.625357", \
            "0.146062, 0.146061, 0.148782, 0.168097, 0.675212", \
            "0.276795, 0.276788, 0.276812, 0.281783, 0.738328", \
            "0.538338, 0.538332, 0.538332, 0.538345, 0.865002", \
            "2.630987, 2.630990, 2.630986, 2.630986, 2.638001"
          );
        }
      }
    }
  }
}