def METHOD_NAME(json_tot, json_ren):
    """
    Extracts generation data and timestamp into dictionary.
    Returns a list of dictionaries for all of the available "live" data, usually that day.
    """
    gen_total = json_tot["data"][0]["values"]
    if json_ren["data"][1]["key"] == "ENERGÍA SOLAR":
        rawgen_sol = json_ren["data"][1]["values"]
    else:
        raise ParserException(
            "CL.py",
            f"Unexpected data label. Expected 'ENERGÍA SOLAR' and got {json_ren['data'][1]['key']}",
            "CL",
        )
    if json_ren["data"][0]["key"] == "ENERGÍA EÓLICA":
        rawgen_wind = json_ren["data"][0]["values"]
    else:
        raise ParserException(
            "CL.py",
            f"Unexpected data label. Expected 'ENERGÍA EÓLICA' and got {json_ren['data'][0]['key']}",
            "CL",
        )
    mapped_totals = []
    for total in gen_total:
        datapoint = {}
        dt = total[0]
        for pair in rawgen_sol:
            if pair[0] == dt:
                solar = pair[1]
                break
        for pair in rawgen_wind:
            if pair[0] == dt:
                wind = pair[1]
                break
        datapoint["datetime"] = arrow.get(
            dt / 1000, tzinfo="Chile/Continental"
        ).datetime
        datapoint["unknown"] = total[1] - wind - solar
        datapoint["wind"] = wind
        datapoint["solar"] = solar
        mapped_totals.append(datapoint)
    return mapped_totals