  cell(gf180mcu_fd_sc_mcu9t5v0__hold) {
    area : 25.401600 ;

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "!Z" ;
      value : "4.39659e-05" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "Z" ;
      value : "4.39659e-05" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      value : "4.39659e-05" ;
    }

    pg_pin(VDD) {
      voltage_name : VDD ;
      pg_type : primary_power ;
    }

    pg_pin(VSS) {
      voltage_name : VSS ;
      pg_type : primary_ground ;
    }

    pin(Z) {
      capacitance : 0.02222 ;
      direction : inout ;
      driver_type : bus_gf180mcu_fd_sc_mcu9t5v0__hold ;
      function : "Z" ;
      input_voltage : default ;
      max_transition : 6 ;
      output_voltage : default ;
      related_ground_pin : VSS ;
      related_power_pin : VDD ;
      three_state : "1" ;

      internal_power() {

        fall_power(pwr_tin_10) {
          index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
          values("0.1062, 0.1038, 0.1072, 0.1209, 0.1452, 0.1815, 0.2307, 0.2938, \
                 0.3715, 0.4646");
        }

        rise_power(pwr_tin_10) {
          index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
          values("0.002216, 0.000684, 0.0009197, 0.01005, 0.03064, 0.06342, 0.1093, \
                 0.1685, 0.2423, 0.331");
        }
      }
    }
  }
