function percentile(d, r, start_charge) {
if(year == "grid_CO2e_2030") {
d.sort((a, b) => b.grid_CO2e_2030 - a.grid_CO2e_2030);
}
else {
d.sort((a, b) => b.grid_CO2e_2020 - a.grid_CO2e_2020);
}
let charge = start_charge;
let i = 0;
while ((i<=23) && (charge <= r*(22-i))) {
let demand = d[i].project_demand <= d[i].pv_generation ? 0 : d[i].project_demand - d[i].pv_generation;
charge += Math.min(demand, r);
i++;
}
return (1-i/24);
}