{
    "generated_at": "2026-05-19T13:15:28+02:00",
    "days": 14,
    "locations": [
        {
            "id": 1,
            "name": "Hannover",
            "lat": 52.3759,
            "lon": 9.732,
            "consensus": {
                "2026-05-19": {
                    "tmax": 17.4,
                    "tmax_count": 8,
                    "tmax_spread": 3.2,
                    "tmin": 7.4,
                    "tmin_count": 8,
                    "tmin_spread": 8.5,
                    "precip": 1.3,
                    "precip_count": 8,
                    "precip_spread": 2.9,
                    "wind": 10.3,
                    "wind_count": 8,
                    "wind_spread": 17
                },
                "2026-05-20": {
                    "tmax": 18.2,
                    "tmax_count": 8,
                    "tmax_spread": 2.9,
                    "tmin": 11.9,
                    "tmin_count": 8,
                    "tmin_spread": 2.6,
                    "precip": 4.5,
                    "precip_count": 8,
                    "precip_spread": 6.5,
                    "wind": 17.6,
                    "wind_count": 8,
                    "wind_spread": 7.4
                },
                "2026-05-21": {
                    "tmax": 19.1,
                    "tmax_count": 7,
                    "tmax_spread": 2.8,
                    "tmin": 10.5,
                    "tmin_count": 7,
                    "tmin_spread": 3.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 2,
                    "wind": 17.7,
                    "wind_count": 7,
                    "wind_spread": 7.9
                },
                "2026-05-22": {
                    "tmax": 22,
                    "tmax_count": 7,
                    "tmax_spread": 5.4,
                    "tmin": 11.9,
                    "tmin_count": 7,
                    "tmin_spread": 2.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.4,
                    "wind": 8.6,
                    "wind_count": 7,
                    "wind_spread": 5.8
                },
                "2026-05-23": {
                    "tmax": 26,
                    "tmax_count": 7,
                    "tmax_spread": 4.7,
                    "tmin": 14.1,
                    "tmin_count": 7,
                    "tmin_spread": 3,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.6,
                    "wind": 8.9,
                    "wind_count": 7,
                    "wind_spread": 9.8
                },
                "2026-05-24": {
                    "tmax": 21.2,
                    "tmax_count": 7,
                    "tmax_spread": 10.5,
                    "tmin": 15.9,
                    "tmin_count": 7,
                    "tmin_spread": 3.1,
                    "precip": 0.1,
                    "precip_count": 7,
                    "precip_spread": 7.1,
                    "wind": 12,
                    "wind_count": 7,
                    "wind_spread": 10.3
                },
                "2026-05-25": {
                    "tmax": 22.6,
                    "tmax_count": 7,
                    "tmax_spread": 7.7,
                    "tmin": 11.4,
                    "tmin_count": 7,
                    "tmin_spread": 5.5,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 12.8,
                    "wind_count": 7,
                    "wind_spread": 9.8
                },
                "2026-05-26": {
                    "tmax": 23.7,
                    "tmax_count": 6,
                    "tmax_spread": 4.3,
                    "tmin": 12.1,
                    "tmin_count": 6,
                    "tmin_spread": 4.6,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 12.6,
                    "wind_count": 6,
                    "wind_spread": 9
                },
                "2026-05-27": {
                    "tmax": 20.4,
                    "tmax_count": 6,
                    "tmax_spread": 12.4,
                    "tmin": 12.4,
                    "tmin_count": 6,
                    "tmin_spread": 2.6,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 12.3,
                    "wind_count": 6,
                    "wind_spread": 10
                },
                "2026-05-28": {
                    "tmax": 22.5,
                    "tmax_count": 5,
                    "tmax_spread": 7.4,
                    "tmin": 9.4,
                    "tmin_count": 5,
                    "tmin_spread": 5.6,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 0,
                    "wind": 7.7,
                    "wind_count": 5,
                    "wind_spread": 17.7
                },
                "2026-05-29": {
                    "tmax": 16.6,
                    "tmax_count": 4,
                    "tmax_spread": 14,
                    "tmin": 14.1,
                    "tmin_count": 4,
                    "tmin_spread": 9.6,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 0,
                    "wind": 10.2,
                    "wind_count": 4,
                    "wind_spread": 11
                },
                "2026-05-30": {
                    "tmax": 20.5,
                    "tmax_count": 2,
                    "tmax_spread": 9.7,
                    "tmin": 13.2,
                    "tmin_count": 2,
                    "tmin_spread": 9.5,
                    "precip": 0,
                    "precip_count": 2,
                    "precip_spread": 0,
                    "wind": 15.4,
                    "wind_count": 2,
                    "wind_spread": 5.1
                },
                "2026-05-31": {
                    "tmax": 22.8,
                    "tmax_count": 2,
                    "tmax_spread": 8.3,
                    "tmin": 11.8,
                    "tmin_count": 2,
                    "tmin_spread": 12.4,
                    "precip": 0.6,
                    "precip_count": 2,
                    "precip_spread": 1.2,
                    "wind": 12.3,
                    "wind_count": 2,
                    "wind_spread": 1.8
                },
                "2026-06-01": {
                    "tmax": 22,
                    "tmax_count": 2,
                    "tmax_spread": 1.1,
                    "tmin": 13.1,
                    "tmin_count": 2,
                    "tmin_spread": 10.3,
                    "precip": 1.8,
                    "precip_count": 2,
                    "precip_spread": 3.6,
                    "wind": 14.5,
                    "wind_count": 2,
                    "wind_spread": 6.5
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.6,
                            "tmin": 8,
                            "precip": 1.7,
                            "wind": 10
                        },
                        "2026-05-20": {
                            "tmax": 18.2,
                            "tmin": 12.1,
                            "precip": 6.5,
                            "wind": 14.8
                        },
                        "2026-05-21": {
                            "tmax": 20.2,
                            "tmin": 11.4,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-22": {
                            "tmax": 26,
                            "tmin": 12.4,
                            "precip": 0,
                            "wind": 7.2
                        },
                        "2026-05-23": {
                            "tmax": 28.7,
                            "tmin": 14.9,
                            "precip": 0,
                            "wind": 13.1
                        },
                        "2026-05-24": {
                            "tmax": 30.8,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 7.8
                        },
                        "2026-05-25": {
                            "tmax": 26.5,
                            "tmin": 15.5,
                            "precip": 0,
                            "wind": 13.1
                        },
                        "2026-05-26": {
                            "tmax": 22.3,
                            "tmin": 11.1,
                            "precip": 0,
                            "wind": 15.4
                        },
                        "2026-05-27": {
                            "tmax": 20.5,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 12.3
                        },
                        "2026-05-28": {
                            "tmax": 23.2,
                            "tmin": 9.4,
                            "precip": 0,
                            "wind": 7.7
                        },
                        "2026-05-29": {
                            "tmax": 28.2,
                            "tmin": 13.9,
                            "precip": 0,
                            "wind": 9.2
                        },
                        "2026-05-30": {
                            "tmax": 25.3,
                            "tmin": 17.9,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-31": {
                            "tmax": 26.9,
                            "tmin": 18,
                            "precip": 1.2,
                            "wind": 11.4
                        },
                        "2026-06-01": {
                            "tmax": 21.4,
                            "tmin": 18.2,
                            "precip": 3.6,
                            "wind": 17.7
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.6,
                            "tmin": 8,
                            "precip": 1.7,
                            "wind": 10
                        },
                        "2026-05-20": {
                            "tmax": 18.2,
                            "tmin": 12.1,
                            "precip": 6.1,
                            "wind": 14.8
                        },
                        "2026-05-21": {
                            "tmax": 20.2,
                            "tmin": 11.4,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-22": {
                            "tmax": 26,
                            "tmin": 12.4,
                            "precip": 0,
                            "wind": 7.2
                        },
                        "2026-05-23": {
                            "tmax": 28.7,
                            "tmin": 14.9,
                            "precip": 0,
                            "wind": 13.1
                        },
                        "2026-05-24": {
                            "tmax": 30.8,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 7.8
                        },
                        "2026-05-25": {
                            "tmax": 26.5,
                            "tmin": 15.5,
                            "precip": 0,
                            "wind": 13.1
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17,
                            "tmin": 6.7,
                            "precip": 2.7,
                            "wind": 10.5
                        },
                        "2026-05-20": {
                            "tmax": 18.2,
                            "tmin": 11.5,
                            "precip": 3.5,
                            "wind": 18.7
                        },
                        "2026-05-21": {
                            "tmax": 18.8,
                            "tmin": 9.7,
                            "precip": 2,
                            "wind": 17.7
                        },
                        "2026-05-22": {
                            "tmax": 21,
                            "tmin": 10.7,
                            "precip": 0,
                            "wind": 9.6
                        },
                        "2026-05-23": {
                            "tmax": 25.2,
                            "tmin": 11.9,
                            "precip": 0,
                            "wind": 8.9
                        },
                        "2026-05-24": {
                            "tmax": 20.5,
                            "tmin": 12.9,
                            "precip": 7.1,
                            "wind": 18.1
                        },
                        "2026-05-25": {
                            "tmax": 19.8,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-26": {
                            "tmax": 22.4,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 7.7
                        },
                        "2026-05-27": {
                            "tmax": 20.4,
                            "tmin": 11.2,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-28": {
                            "tmax": 22.5,
                            "tmin": 8.3,
                            "precip": 0,
                            "wind": 6.8
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.5,
                            "tmin": 7.5,
                            "precip": 2.9,
                            "wind": 8.7
                        },
                        "2026-05-20": {
                            "tmax": 17.2,
                            "tmin": 11.1,
                            "precip": 4.8,
                            "wind": 16.7
                        },
                        "2026-05-21": {
                            "tmax": 18.7,
                            "tmin": 9.4,
                            "precip": 1.8,
                            "wind": 19.9
                        },
                        "2026-05-22": {
                            "tmax": 21.8,
                            "tmin": 11.2,
                            "precip": 0.4,
                            "wind": 10.8
                        },
                        "2026-05-23": {
                            "tmax": 26,
                            "tmin": 14.1,
                            "precip": 0.6,
                            "wind": 7.6
                        },
                        "2026-05-24": {
                            "tmax": 21.2,
                            "tmin": 13.8,
                            "precip": 1.5,
                            "wind": 14.5
                        },
                        "2026-05-25": {
                            "tmax": 22.6,
                            "tmin": 11.4,
                            "precip": 0,
                            "wind": 10.8
                        },
                        "2026-05-26": {
                            "tmax": 25.7,
                            "tmin": 13.6,
                            "precip": 0,
                            "wind": 13.1
                        },
                        "2026-05-27": {
                            "tmax": 20.4,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 15
                        },
                        "2026-05-28": {
                            "tmax": 16.6,
                            "tmin": 9.2,
                            "precip": 0,
                            "wind": 24.2
                        },
                        "2026-05-29": {
                            "tmax": 16.8,
                            "tmin": 6.8,
                            "precip": 0,
                            "wind": 20
                        },
                        "2026-05-30": {
                            "tmax": 15.6,
                            "tmin": 8.4,
                            "precip": 0,
                            "wind": 17.9
                        },
                        "2026-05-31": {
                            "tmax": 18.6,
                            "tmin": 5.6,
                            "precip": 0,
                            "wind": 13.2
                        },
                        "2026-06-01": {
                            "tmax": 22.5,
                            "tmin": 7.9,
                            "precip": 0,
                            "wind": 11.2
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 19.2,
                            "tmin": 7.3,
                            "precip": 0.2,
                            "wind": 22
                        },
                        "2026-05-20": {
                            "tmax": 18.9,
                            "tmin": 12.6,
                            "precip": 6.1,
                            "wind": 18.9
                        },
                        "2026-05-21": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        },
                        "2026-05-22": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        }
                    }
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.1,
                            "tmin": 4.5,
                            "precip": 0,
                            "wind": 11.2
                        },
                        "2026-05-20": {
                            "tmax": 17.6,
                            "tmin": 12.3,
                            "precip": 3.3,
                            "wind": 18.5
                        },
                        "2026-05-21": {
                            "tmax": 20.8,
                            "tmin": 11.2,
                            "precip": 0,
                            "wind": 18.5
                        },
                        "2026-05-22": {
                            "tmax": 25,
                            "tmin": 12,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-23": {
                            "tmax": 29,
                            "tmin": 13.6,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-24": {
                            "tmax": 27.9,
                            "tmin": 15.9,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-25": {
                            "tmax": 25.8,
                            "tmin": 15.2,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-26": {
                            "tmax": 25.6,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 16.7
                        },
                        "2026-05-27": {
                            "tmax": 25.4,
                            "tmin": 13.8,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-28": {
                            "tmax": 24,
                            "tmin": 13.9,
                            "precip": 0,
                            "wind": 16.7
                        },
                        "2026-05-29": {
                            "tmax": 16.4,
                            "tmin": 16.4,
                            "precip": 0,
                            "wind": 11.1
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.3,
                            "tmin": 13,
                            "precip": 0.9,
                            "wind": 15.8
                        },
                        "2026-05-20": {
                            "tmax": 18.7,
                            "tmin": 11.6,
                            "precip": 4.2,
                            "wind": 19.4
                        },
                        "2026-05-21": {
                            "tmax": 19.1,
                            "tmin": 10.5,
                            "precip": 0.8,
                            "wind": 18
                        },
                        "2026-05-22": {
                            "tmax": 20.6,
                            "tmin": 11.9,
                            "precip": 0,
                            "wind": 8.6
                        },
                        "2026-05-23": {
                            "tmax": 24.3,
                            "tmin": 14.3,
                            "precip": 0.4,
                            "wind": 7.9
                        },
                        "2026-05-24": {
                            "tmax": 20.3,
                            "tmin": 15.9,
                            "precip": 0.9,
                            "wind": 15.1
                        },
                        "2026-05-25": {
                            "tmax": 18.8,
                            "tmin": 11.2,
                            "precip": 0,
                            "wind": 11.9
                        },
                        "2026-05-26": {
                            "tmax": 21.4,
                            "tmin": 10.4,
                            "precip": 0,
                            "wind": 7.9
                        },
                        "2026-05-27": {
                            "tmax": 20.4,
                            "tmin": 12.7,
                            "precip": 0,
                            "wind": 11.9
                        },
                        "2026-05-28": {
                            "tmax": 22.1,
                            "tmin": 9.9,
                            "precip": 0,
                            "wind": 6.5
                        },
                        "2026-05-29": {
                            "tmax": 14.2,
                            "tmin": 14.2,
                            "precip": 0,
                            "wind": 9
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 16,
                            "tmin": 7,
                            "precip": 0.3,
                            "wind": 5
                        },
                        "2026-05-20": {
                            "tmax": 16,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 18,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-22": {
                            "tmax": 22,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-23": {
                            "tmax": 26,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-24": {
                            "tmax": 21,
                            "tmin": 13,
                            "precip": 0.1,
                            "wind": 12
                        },
                        "2026-05-25": {
                            "tmax": 22,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-26": {
                            "tmax": 25,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-27": {
                            "tmax": 13,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 5
                        }
                    }
                }
            }
        },
        {
            "id": 2,
            "name": "Berlin",
            "lat": 52.52,
            "lon": 13.405,
            "consensus": {
                "2026-05-19": {
                    "tmax": 20.1,
                    "tmax_count": 8,
                    "tmax_spread": 2.6,
                    "tmin": 9.5,
                    "tmin_count": 8,
                    "tmin_spread": 9.9,
                    "precip": 0,
                    "precip_count": 8,
                    "precip_spread": 0.6,
                    "wind": 10.9,
                    "wind_count": 8,
                    "wind_spread": 10.1
                },
                "2026-05-20": {
                    "tmax": 19.4,
                    "tmax_count": 8,
                    "tmax_spread": 4.2,
                    "tmin": 12,
                    "tmin_count": 8,
                    "tmin_spread": 5.3,
                    "precip": 2,
                    "precip_count": 8,
                    "precip_spread": 3.5,
                    "wind": 16.3,
                    "wind_count": 8,
                    "wind_spread": 7.5
                },
                "2026-05-21": {
                    "tmax": 19.9,
                    "tmax_count": 7,
                    "tmax_spread": 4,
                    "tmin": 11,
                    "tmin_count": 7,
                    "tmin_spread": 3.8,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 2.2,
                    "wind": 13.3,
                    "wind_count": 7,
                    "wind_spread": 9
                },
                "2026-05-22": {
                    "tmax": 22.1,
                    "tmax_count": 7,
                    "tmax_spread": 3.7,
                    "tmin": 12.9,
                    "tmin_count": 7,
                    "tmin_spread": 4.5,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.1,
                    "wind": 13,
                    "wind_count": 7,
                    "wind_spread": 7.5
                },
                "2026-05-23": {
                    "tmax": 25.4,
                    "tmax_count": 7,
                    "tmax_spread": 2.8,
                    "tmin": 13.3,
                    "tmin_count": 7,
                    "tmin_spread": 3.7,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 7.3,
                    "wind_count": 7,
                    "wind_spread": 10.5
                },
                "2026-05-24": {
                    "tmax": 26.3,
                    "tmax_count": 7,
                    "tmax_spread": 9,
                    "tmin": 16.1,
                    "tmin_count": 7,
                    "tmin_spread": 6.2,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 2.2,
                    "wind": 12,
                    "wind_count": 7,
                    "wind_spread": 16.5
                },
                "2026-05-25": {
                    "tmax": 22.7,
                    "tmax_count": 7,
                    "tmax_spread": 7.3,
                    "tmin": 15.3,
                    "tmin_count": 7,
                    "tmin_spread": 9.2,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.9,
                    "wind": 13,
                    "wind_count": 7,
                    "wind_spread": 8.3
                },
                "2026-05-26": {
                    "tmax": 24.5,
                    "tmax_count": 6,
                    "tmax_spread": 3.3,
                    "tmin": 13.5,
                    "tmin_count": 6,
                    "tmin_spread": 4.5,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 12.6,
                    "wind_count": 6,
                    "wind_spread": 2.3
                },
                "2026-05-27": {
                    "tmax": 22.3,
                    "tmax_count": 6,
                    "tmax_spread": 10.5,
                    "tmin": 14.6,
                    "tmin_count": 6,
                    "tmin_spread": 1.7,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 16.3,
                    "wind_count": 6,
                    "wind_spread": 9.8
                },
                "2026-05-28": {
                    "tmax": 23.4,
                    "tmax_count": 5,
                    "tmax_spread": 6.5,
                    "tmin": 12.2,
                    "tmin_count": 5,
                    "tmin_spread": 3.1,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 0,
                    "wind": 10.4,
                    "wind_count": 5,
                    "wind_spread": 20.2
                },
                "2026-05-29": {
                    "tmax": 16.8,
                    "tmax_count": 4,
                    "tmax_spread": 11.5,
                    "tmin": 16.1,
                    "tmin_count": 4,
                    "tmin_spread": 9.4,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 0,
                    "wind": 11.4,
                    "wind_count": 4,
                    "wind_spread": 20
                },
                "2026-05-30": {
                    "tmax": 21.7,
                    "tmax_count": 2,
                    "tmax_spread": 15.7,
                    "tmin": 13.5,
                    "tmin_count": 2,
                    "tmin_spread": 12,
                    "precip": 0,
                    "precip_count": 2,
                    "precip_spread": 0,
                    "wind": 18,
                    "wind_count": 2,
                    "wind_spread": 10.5
                },
                "2026-05-31": {
                    "tmax": 24.2,
                    "tmax_count": 2,
                    "tmax_spread": 10.4,
                    "tmin": 12.7,
                    "tmin_count": 2,
                    "tmin_spread": 13.8,
                    "precip": 0,
                    "precip_count": 2,
                    "precip_spread": 0,
                    "wind": 15.5,
                    "wind_count": 2,
                    "wind_spread": 13.9
                },
                "2026-06-01": {
                    "tmax": 24.2,
                    "tmax_count": 2,
                    "tmax_spread": 3.8,
                    "tmin": 13.2,
                    "tmin_count": 2,
                    "tmin_spread": 8.9,
                    "precip": 3,
                    "precip_count": 2,
                    "precip_spread": 6,
                    "wind": 18.4,
                    "wind_count": 2,
                    "wind_spread": 2.3
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20.6,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 10.9
                        },
                        "2026-05-20": {
                            "tmax": 19.4,
                            "tmin": 13.7,
                            "precip": 0.3,
                            "wind": 16.8
                        },
                        "2026-05-21": {
                            "tmax": 21,
                            "tmin": 11.8,
                            "precip": 0,
                            "wind": 11.6
                        },
                        "2026-05-22": {
                            "tmax": 23.7,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 9.6
                        },
                        "2026-05-23": {
                            "tmax": 27.1,
                            "tmin": 14.7,
                            "precip": 0,
                            "wind": 7.3
                        },
                        "2026-05-24": {
                            "tmax": 30,
                            "tmin": 16.7,
                            "precip": 0,
                            "wind": 5.4
                        },
                        "2026-05-25": {
                            "tmax": 28.3,
                            "tmin": 18.2,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-26": {
                            "tmax": 23.8,
                            "tmin": 14.5,
                            "precip": 0,
                            "wind": 12.3
                        },
                        "2026-05-27": {
                            "tmax": 22.2,
                            "tmin": 15.1,
                            "precip": 0,
                            "wind": 16.4
                        },
                        "2026-05-28": {
                            "tmax": 23.4,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 9.9
                        },
                        "2026-05-29": {
                            "tmax": 27.6,
                            "tmin": 16.1,
                            "precip": 0,
                            "wind": 9.7
                        },
                        "2026-05-30": {
                            "tmax": 29.5,
                            "tmin": 19.5,
                            "precip": 0,
                            "wind": 12.7
                        },
                        "2026-05-31": {
                            "tmax": 29.4,
                            "tmin": 19.6,
                            "precip": 0,
                            "wind": 8.5
                        },
                        "2026-06-01": {
                            "tmax": 26.1,
                            "tmin": 17.6,
                            "precip": 6,
                            "wind": 19.5
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20.6,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 10.9
                        },
                        "2026-05-20": {
                            "tmax": 19.4,
                            "tmin": 13.7,
                            "precip": 0.3,
                            "wind": 16.8
                        },
                        "2026-05-21": {
                            "tmax": 21,
                            "tmin": 11.8,
                            "precip": 0,
                            "wind": 11.6
                        },
                        "2026-05-22": {
                            "tmax": 23.7,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 9.6
                        },
                        "2026-05-23": {
                            "tmax": 27.1,
                            "tmin": 14.7,
                            "precip": 0,
                            "wind": 7.3
                        },
                        "2026-05-24": {
                            "tmax": 30,
                            "tmin": 16.7,
                            "precip": 0,
                            "wind": 5.4
                        },
                        "2026-05-25": {
                            "tmax": 28.3,
                            "tmin": 18.2,
                            "precip": 0,
                            "wind": 13
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20,
                            "tmin": 9,
                            "precip": 0.2,
                            "wind": 10.9
                        },
                        "2026-05-20": {
                            "tmax": 21.2,
                            "tmin": 11.6,
                            "precip": 3.2,
                            "wind": 12.8
                        },
                        "2026-05-21": {
                            "tmax": 20,
                            "tmin": 11,
                            "precip": 0.7,
                            "wind": 13.3
                        },
                        "2026-05-22": {
                            "tmax": 22.1,
                            "tmin": 12.9,
                            "precip": 0,
                            "wind": 13.9
                        },
                        "2026-05-23": {
                            "tmax": 25.4,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 4.9
                        },
                        "2026-05-24": {
                            "tmax": 26.3,
                            "tmin": 16.1,
                            "precip": 2.2,
                            "wind": 13.4
                        },
                        "2026-05-25": {
                            "tmax": 22.7,
                            "tmin": 14.7,
                            "precip": 0.9,
                            "wind": 17.4
                        },
                        "2026-05-26": {
                            "tmax": 23.9,
                            "tmin": 13.1,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-27": {
                            "tmax": 22.4,
                            "tmin": 15.4,
                            "precip": 0,
                            "wind": 16.8
                        },
                        "2026-05-28": {
                            "tmax": 23.4,
                            "tmin": 12.2,
                            "precip": 0,
                            "wind": 10.4
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20.2,
                            "tmin": 9.4,
                            "precip": 0.6,
                            "wind": 13
                        },
                        "2026-05-20": {
                            "tmax": 19.3,
                            "tmin": 12.3,
                            "precip": 3.6,
                            "wind": 17.8
                        },
                        "2026-05-21": {
                            "tmax": 19.1,
                            "tmin": 10.1,
                            "precip": 2.2,
                            "wind": 20.6
                        },
                        "2026-05-22": {
                            "tmax": 20.4,
                            "tmin": 11.8,
                            "precip": 0.1,
                            "wind": 17.1
                        },
                        "2026-05-23": {
                            "tmax": 25.4,
                            "tmin": 13.3,
                            "precip": 0,
                            "wind": 13.4
                        },
                        "2026-05-24": {
                            "tmax": 22.6,
                            "tmin": 15.5,
                            "precip": 1.4,
                            "wind": 21.9
                        },
                        "2026-05-25": {
                            "tmax": 22.5,
                            "tmin": 11.5,
                            "precip": 0,
                            "wind": 20.3
                        },
                        "2026-05-26": {
                            "tmax": 26.4,
                            "tmin": 13.4,
                            "precip": 0,
                            "wind": 14.3
                        },
                        "2026-05-27": {
                            "tmax": 20.5,
                            "tmin": 14,
                            "precip": 0,
                            "wind": 21.8
                        },
                        "2026-05-28": {
                            "tmax": 18.3,
                            "tmin": 10.4,
                            "precip": 0,
                            "wind": 27.8
                        },
                        "2026-05-29": {
                            "tmax": 16.4,
                            "tmin": 7.8,
                            "precip": 0,
                            "wind": 25.4
                        },
                        "2026-05-30": {
                            "tmax": 13.8,
                            "tmin": 7.5,
                            "precip": 0,
                            "wind": 23.2
                        },
                        "2026-05-31": {
                            "tmax": 19,
                            "tmin": 5.8,
                            "precip": 0,
                            "wind": 22.4
                        },
                        "2026-06-01": {
                            "tmax": 22.3,
                            "tmin": 8.7,
                            "precip": 0,
                            "wind": 17.2
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20.4,
                            "tmin": 9.6,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-20": {
                            "tmax": 20.7,
                            "tmin": 15.3,
                            "precip": 3,
                            "wind": 19.5
                        },
                        "2026-05-21": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        },
                        "2026-05-22": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        }
                    }
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 19.1,
                            "tmin": 7.9,
                            "precip": 0,
                            "wind": 15.1
                        },
                        "2026-05-20": {
                            "tmax": 18.7,
                            "tmin": 10.1,
                            "precip": 1.3,
                            "wind": 13
                        },
                        "2026-05-21": {
                            "tmax": 19.7,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-22": {
                            "tmax": 23,
                            "tmin": 10.8,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-23": {
                            "tmax": 27.6,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-24": {
                            "tmax": 28.7,
                            "tmin": 14.6,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-25": {
                            "tmax": 26,
                            "tmin": 15.4,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-26": {
                            "tmax": 25.8,
                            "tmin": 13.9,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-27": {
                            "tmax": 24.5,
                            "tmin": 14,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-28": {
                            "tmax": 24.8,
                            "tmin": 13.5,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-29": {
                            "tmax": 17.2,
                            "tmin": 17.2,
                            "precip": 0,
                            "wind": 13
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 19.8,
                            "tmin": 15.9,
                            "precip": 0,
                            "wind": 8.6
                        },
                        "2026-05-20": {
                            "tmax": 21.2,
                            "tmin": 11.7,
                            "precip": 2.6,
                            "wind": 15.8
                        },
                        "2026-05-21": {
                            "tmax": 19.9,
                            "tmin": 10.9,
                            "precip": 0.2,
                            "wind": 14.4
                        },
                        "2026-05-22": {
                            "tmax": 21.7,
                            "tmin": 13.5,
                            "precip": 0,
                            "wind": 13.7
                        },
                        "2026-05-23": {
                            "tmax": 24.8,
                            "tmin": 14.5,
                            "precip": 0,
                            "wind": 2.9
                        },
                        "2026-05-24": {
                            "tmax": 25.4,
                            "tmin": 18.2,
                            "precip": 0.5,
                            "wind": 13
                        },
                        "2026-05-25": {
                            "tmax": 22.5,
                            "tmin": 15.3,
                            "precip": 0,
                            "wind": 16.9
                        },
                        "2026-05-26": {
                            "tmax": 23.1,
                            "tmin": 13.6,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-27": {
                            "tmax": 22.3,
                            "tmin": 15.7,
                            "precip": 0,
                            "wind": 16.2
                        },
                        "2026-05-28": {
                            "tmax": 23,
                            "tmin": 12.7,
                            "precip": 0,
                            "wind": 7.6
                        },
                        "2026-05-29": {
                            "tmax": 16.1,
                            "tmin": 16.1,
                            "precip": 0,
                            "wind": 5.4
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18,
                            "tmin": 6,
                            "precip": 0.2,
                            "wind": 5
                        },
                        "2026-05-20": {
                            "tmax": 17,
                            "tmin": 10,
                            "precip": 0.1,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 17,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-22": {
                            "tmax": 20,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-23": {
                            "tmax": 25,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-24": {
                            "tmax": 21,
                            "tmin": 12,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-25": {
                            "tmax": 21,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-26": {
                            "tmax": 25,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-27": {
                            "tmax": 14,
                            "tmin": 14,
                            "precip": 0,
                            "wind": 12
                        }
                    }
                }
            }
        },
        {
            "id": 3,
            "name": "München",
            "lat": 48.1351,
            "lon": 11.582,
            "consensus": {
                "2026-05-19": {
                    "tmax": 17.9,
                    "tmax_count": 8,
                    "tmax_spread": 2,
                    "tmin": 8.7,
                    "tmin_count": 8,
                    "tmin_spread": 6,
                    "precip": 4.4,
                    "precip_count": 8,
                    "precip_spread": 10.3,
                    "wind": 11.6,
                    "wind_count": 8,
                    "wind_spread": 10
                },
                "2026-05-20": {
                    "tmax": 18.2,
                    "tmax_count": 8,
                    "tmax_spread": 3.8,
                    "tmin": 11.4,
                    "tmin_count": 8,
                    "tmin_spread": 2.9,
                    "precip": 4.9,
                    "precip_count": 8,
                    "precip_spread": 9.6,
                    "wind": 15.3,
                    "wind_count": 8,
                    "wind_spread": 7.1
                },
                "2026-05-21": {
                    "tmax": 20.2,
                    "tmax_count": 7,
                    "tmax_spread": 2.7,
                    "tmin": 9.7,
                    "tmin_count": 7,
                    "tmin_spread": 4.6,
                    "precip": 0.2,
                    "precip_count": 7,
                    "precip_spread": 3.8,
                    "wind": 12,
                    "wind_count": 7,
                    "wind_spread": 2.9
                },
                "2026-05-22": {
                    "tmax": 22,
                    "tmax_count": 7,
                    "tmax_spread": 3.5,
                    "tmin": 10.1,
                    "tmin_count": 7,
                    "tmin_spread": 3.7,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 11.3,
                    "wind_count": 7,
                    "wind_spread": 8
                },
                "2026-05-23": {
                    "tmax": 24.5,
                    "tmax_count": 7,
                    "tmax_spread": 4.1,
                    "tmin": 12.2,
                    "tmin_count": 7,
                    "tmin_spread": 3,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 13.7,
                    "wind_count": 7,
                    "wind_spread": 3.3
                },
                "2026-05-24": {
                    "tmax": 25,
                    "tmax_count": 7,
                    "tmax_spread": 3.2,
                    "tmin": 12.7,
                    "tmin_count": 7,
                    "tmin_spread": 4.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 10,
                    "wind": 11.5,
                    "wind_count": 7,
                    "wind_spread": 8
                },
                "2026-05-25": {
                    "tmax": 25.9,
                    "tmax_count": 7,
                    "tmax_spread": 6.1,
                    "tmin": 13,
                    "tmin_count": 7,
                    "tmin_spread": 3.1,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 1.7,
                    "wind": 12.2,
                    "wind_count": 7,
                    "wind_spread": 7.8
                },
                "2026-05-26": {
                    "tmax": 25.8,
                    "tmax_count": 6,
                    "tmax_spread": 3.9,
                    "tmin": 14.2,
                    "tmin_count": 6,
                    "tmin_spread": 3.9,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 9.9,
                    "wind_count": 6,
                    "wind_spread": 8
                },
                "2026-05-27": {
                    "tmax": 27,
                    "tmax_count": 6,
                    "tmax_spread": 12,
                    "tmin": 16.4,
                    "tmin_count": 6,
                    "tmin_spread": 1.9,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 2.1,
                    "wind": 9.6,
                    "wind_count": 6,
                    "wind_spread": 8
                },
                "2026-05-28": {
                    "tmax": 25.5,
                    "tmax_count": 5,
                    "tmax_spread": 5,
                    "tmin": 15.4,
                    "tmin_count": 5,
                    "tmin_spread": 2.9,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 2.7,
                    "wind": 9.2,
                    "wind_count": 5,
                    "wind_spread": 4.5
                },
                "2026-05-29": {
                    "tmax": 19.1,
                    "tmax_count": 4,
                    "tmax_spread": 13.1,
                    "tmin": 16.5,
                    "tmin_count": 4,
                    "tmin_spread": 7.7,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 0,
                    "wind": 8.2,
                    "wind_count": 4,
                    "wind_spread": 16.4
                },
                "2026-05-30": {
                    "tmax": 24.7,
                    "tmax_count": 2,
                    "tmax_spread": 7.9,
                    "tmin": 12.8,
                    "tmin_count": 2,
                    "tmin_spread": 9.8,
                    "precip": 5.4,
                    "precip_count": 2,
                    "precip_spread": 10.8,
                    "wind": 13.6,
                    "wind_count": 2,
                    "wind_spread": 3.7
                },
                "2026-05-31": {
                    "tmax": 24.1,
                    "tmax_count": 2,
                    "tmax_spread": 1.7,
                    "tmin": 13.2,
                    "tmin_count": 2,
                    "tmin_spread": 7.9,
                    "precip": 2.4,
                    "precip_count": 2,
                    "precip_spread": 4.8,
                    "wind": 10.9,
                    "wind_count": 2,
                    "wind_spread": 0
                },
                "2026-06-01": {
                    "tmax": 27.2,
                    "tmax_count": 2,
                    "tmax_spread": 0,
                    "tmin": 14.5,
                    "tmin_count": 2,
                    "tmin_spread": 6,
                    "precip": 0.3,
                    "precip_count": 2,
                    "precip_spread": 0.6,
                    "wind": 13.4,
                    "wind_count": 2,
                    "wind_spread": 4.1
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.9,
                            "tmin": 8.7,
                            "precip": 5.4,
                            "wind": 11.6
                        },
                        "2026-05-20": {
                            "tmax": 18.2,
                            "tmin": 11.9,
                            "precip": 4.8,
                            "wind": 15
                        },
                        "2026-05-21": {
                            "tmax": 19.9,
                            "tmin": 11.6,
                            "precip": 0.1,
                            "wind": 11.7
                        },
                        "2026-05-22": {
                            "tmax": 23.1,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 11.3
                        },
                        "2026-05-23": {
                            "tmax": 24.6,
                            "tmin": 12.2,
                            "precip": 0,
                            "wind": 13.7
                        },
                        "2026-05-24": {
                            "tmax": 25,
                            "tmin": 10.6,
                            "precip": 0,
                            "wind": 12.4
                        },
                        "2026-05-25": {
                            "tmax": 26.9,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 12.8
                        },
                        "2026-05-26": {
                            "tmax": 25.6,
                            "tmin": 12.3,
                            "precip": 0,
                            "wind": 11.3
                        },
                        "2026-05-27": {
                            "tmax": 28,
                            "tmin": 16.8,
                            "precip": 0,
                            "wind": 9.4
                        },
                        "2026-05-28": {
                            "tmax": 26.1,
                            "tmin": 15.4,
                            "precip": 0,
                            "wind": 9.2
                        },
                        "2026-05-29": {
                            "tmax": 29.3,
                            "tmin": 16.8,
                            "precip": 0,
                            "wind": 22.2
                        },
                        "2026-05-30": {
                            "tmax": 28.6,
                            "tmin": 17.7,
                            "precip": 10.8,
                            "wind": 15.4
                        },
                        "2026-05-31": {
                            "tmax": 24.9,
                            "tmin": 17.1,
                            "precip": 4.8,
                            "wind": 10.9
                        },
                        "2026-06-01": {
                            "tmax": 27.2,
                            "tmin": 17.5,
                            "precip": 0.6,
                            "wind": 15.4
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.9,
                            "tmin": 8.7,
                            "precip": 5.8,
                            "wind": 11.6
                        },
                        "2026-05-20": {
                            "tmax": 18.2,
                            "tmin": 11.9,
                            "precip": 4.9,
                            "wind": 15
                        },
                        "2026-05-21": {
                            "tmax": 19.9,
                            "tmin": 11.6,
                            "precip": 0.2,
                            "wind": 11.7
                        },
                        "2026-05-22": {
                            "tmax": 23.1,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 11.3
                        },
                        "2026-05-23": {
                            "tmax": 24.6,
                            "tmin": 12.2,
                            "precip": 0,
                            "wind": 13.7
                        },
                        "2026-05-24": {
                            "tmax": 25,
                            "tmin": 10.6,
                            "precip": 0,
                            "wind": 12.4
                        },
                        "2026-05-25": {
                            "tmax": 26.9,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 12.8
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.1,
                            "tmin": 8.4,
                            "precip": 10.4,
                            "wind": 15
                        },
                        "2026-05-20": {
                            "tmax": 19.8,
                            "tmin": 10.8,
                            "precip": 2.2,
                            "wind": 15.6
                        },
                        "2026-05-21": {
                            "tmax": 20.4,
                            "tmin": 9.7,
                            "precip": 3.8,
                            "wind": 13.2
                        },
                        "2026-05-22": {
                            "tmax": 22,
                            "tmin": 9.5,
                            "precip": 0,
                            "wind": 8.2
                        },
                        "2026-05-23": {
                            "tmax": 24.5,
                            "tmin": 11.3,
                            "precip": 0,
                            "wind": 14.6
                        },
                        "2026-05-24": {
                            "tmax": 24.8,
                            "tmin": 12.9,
                            "precip": 10,
                            "wind": 8.4
                        },
                        "2026-05-25": {
                            "tmax": 22.3,
                            "tmin": 11.8,
                            "precip": 1.7,
                            "wind": 9.9
                        },
                        "2026-05-26": {
                            "tmax": 24.4,
                            "tmin": 13.9,
                            "precip": 0,
                            "wind": 9.6
                        },
                        "2026-05-27": {
                            "tmax": 26.7,
                            "tmin": 14.9,
                            "precip": 0,
                            "wind": 9.4
                        },
                        "2026-05-28": {
                            "tmax": 24.6,
                            "tmin": 13.5,
                            "precip": 0,
                            "wind": 8.4
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.8,
                            "tmin": 7.6,
                            "precip": 2.1,
                            "wind": 13.6
                        },
                        "2026-05-20": {
                            "tmax": 18.5,
                            "tmin": 10.3,
                            "precip": 9.3,
                            "wind": 18
                        },
                        "2026-05-21": {
                            "tmax": 20.7,
                            "tmin": 9.1,
                            "precip": 0,
                            "wind": 13.2
                        },
                        "2026-05-22": {
                            "tmax": 21.6,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 11.5
                        },
                        "2026-05-23": {
                            "tmax": 24.2,
                            "tmin": 11.4,
                            "precip": 0,
                            "wind": 15.3
                        },
                        "2026-05-24": {
                            "tmax": 25.8,
                            "tmin": 12.7,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-25": {
                            "tmax": 25.9,
                            "tmin": 14.4,
                            "precip": 0,
                            "wind": 12.4
                        },
                        "2026-05-26": {
                            "tmax": 28.2,
                            "tmin": 14.5,
                            "precip": 0,
                            "wind": 10
                        },
                        "2026-05-27": {
                            "tmax": 25.8,
                            "tmin": 16.3,
                            "precip": 2.1,
                            "wind": 10.5
                        },
                        "2026-05-28": {
                            "tmax": 22.8,
                            "tmin": 14.5,
                            "precip": 2.7,
                            "wind": 12.9
                        },
                        "2026-05-29": {
                            "tmax": 18.9,
                            "tmin": 11.6,
                            "precip": 0,
                            "wind": 8.9
                        },
                        "2026-05-30": {
                            "tmax": 20.7,
                            "tmin": 7.9,
                            "precip": 0,
                            "wind": 11.7
                        },
                        "2026-05-31": {
                            "tmax": 23.2,
                            "tmin": 9.2,
                            "precip": 0,
                            "wind": 10.9
                        },
                        "2026-06-01": {
                            "tmax": 27.2,
                            "tmin": 11.5,
                            "precip": 0,
                            "wind": 11.3
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 19,
                            "tmin": 9.3,
                            "precip": 3.4,
                            "wind": 11.3
                        },
                        "2026-05-20": {
                            "tmax": 18.1,
                            "tmin": 12.9,
                            "precip": 9.8,
                            "wind": 19
                        },
                        "2026-05-21": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        },
                        "2026-05-22": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        }
                    }
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.1,
                            "tmin": 8.6,
                            "precip": 5.7,
                            "wind": 12.6
                        },
                        "2026-05-20": {
                            "tmax": 17.5,
                            "tmin": 11.7,
                            "precip": 4.7,
                            "wind": 14.8
                        },
                        "2026-05-21": {
                            "tmax": 20.7,
                            "tmin": 11.1,
                            "precip": 0.7,
                            "wind": 11.1
                        },
                        "2026-05-22": {
                            "tmax": 24.5,
                            "tmin": 10.4,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-23": {
                            "tmax": 27.1,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-24": {
                            "tmax": 28,
                            "tmin": 14.1,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-25": {
                            "tmax": 28.4,
                            "tmin": 14.9,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-26": {
                            "tmax": 28.3,
                            "tmin": 16.2,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-27": {
                            "tmax": 27.6,
                            "tmin": 16.4,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-28": {
                            "tmax": 27.8,
                            "tmin": 16.4,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-29": {
                            "tmax": 19.3,
                            "tmin": 19.3,
                            "precip": 0,
                            "wind": 7.4
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17,
                            "tmin": 13,
                            "precip": 0.3,
                            "wind": 11.2
                        },
                        "2026-05-20": {
                            "tmax": 19.6,
                            "tmin": 11.1,
                            "precip": 8.3,
                            "wind": 19.1
                        },
                        "2026-05-21": {
                            "tmax": 20.2,
                            "tmin": 9.5,
                            "precip": 2.1,
                            "wind": 14
                        },
                        "2026-05-22": {
                            "tmax": 21.1,
                            "tmin": 11.7,
                            "precip": 0,
                            "wind": 9
                        },
                        "2026-05-23": {
                            "tmax": 24.3,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-24": {
                            "tmax": 25.6,
                            "tmin": 15,
                            "precip": 1,
                            "wind": 11.5
                        },
                        "2026-05-25": {
                            "tmax": 23.6,
                            "tmin": 11.9,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-26": {
                            "tmax": 25.3,
                            "tmin": 14.8,
                            "precip": 0,
                            "wind": 9.7
                        },
                        "2026-05-27": {
                            "tmax": 27.2,
                            "tmin": 16.6,
                            "precip": 0,
                            "wind": 9.7
                        },
                        "2026-05-28": {
                            "tmax": 25.5,
                            "tmin": 16.3,
                            "precip": 0,
                            "wind": 8.6
                        },
                        "2026-05-29": {
                            "tmax": 16.2,
                            "tmin": 16.2,
                            "precip": 0,
                            "wind": 5.8
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17,
                            "tmin": 7,
                            "precip": 0.1,
                            "wind": 5
                        },
                        "2026-05-20": {
                            "tmax": 16,
                            "tmin": 10,
                            "precip": 0.2,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 18,
                            "tmin": 7,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-22": {
                            "tmax": 21,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-23": {
                            "tmax": 23,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-24": {
                            "tmax": 25,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-25": {
                            "tmax": 24,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-26": {
                            "tmax": 26,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-27": {
                            "tmax": 16,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 5
                        }
                    }
                }
            }
        },
        {
            "id": 4,
            "name": "Hamburg",
            "lat": 53.5511,
            "lon": 9.9937,
            "consensus": {
                "2026-05-19": {
                    "tmax": 18.5,
                    "tmax_count": 8,
                    "tmax_spread": 1.8,
                    "tmin": 9.4,
                    "tmin_count": 8,
                    "tmin_spread": 6,
                    "precip": 1.6,
                    "precip_count": 8,
                    "precip_spread": 3.2,
                    "wind": 12.1,
                    "wind_count": 8,
                    "wind_spread": 14
                },
                "2026-05-20": {
                    "tmax": 17.1,
                    "tmax_count": 8,
                    "tmax_spread": 3.9,
                    "tmin": 12.2,
                    "tmin_count": 8,
                    "tmin_spread": 4.4,
                    "precip": 7.5,
                    "precip_count": 8,
                    "precip_spread": 11.1,
                    "wind": 14.1,
                    "wind_count": 8,
                    "wind_spread": 8
                },
                "2026-05-21": {
                    "tmax": 19.2,
                    "tmax_count": 7,
                    "tmax_spread": 3.7,
                    "tmin": 10.8,
                    "tmin_count": 7,
                    "tmin_spread": 4.8,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 1.1,
                    "wind": 15.9,
                    "wind_count": 7,
                    "wind_spread": 10.1
                },
                "2026-05-22": {
                    "tmax": 21.9,
                    "tmax_count": 7,
                    "tmax_spread": 5.6,
                    "tmin": 12.7,
                    "tmin_count": 7,
                    "tmin_spread": 6.2,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.4,
                    "wind": 9.4,
                    "wind_count": 7,
                    "wind_spread": 11.6
                },
                "2026-05-23": {
                    "tmax": 26.5,
                    "tmax_count": 7,
                    "tmax_spread": 4.2,
                    "tmin": 12.6,
                    "tmin_count": 7,
                    "tmin_spread": 5.3,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 1.3,
                    "wind": 11.1,
                    "wind_count": 7,
                    "wind_spread": 7.9
                },
                "2026-05-24": {
                    "tmax": 26.1,
                    "tmax_count": 7,
                    "tmax_spread": 10.7,
                    "tmin": 14.1,
                    "tmin_count": 7,
                    "tmin_spread": 7.6,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 9.4,
                    "wind": 12.1,
                    "wind_count": 7,
                    "wind_spread": 9.1
                },
                "2026-05-25": {
                    "tmax": 23.9,
                    "tmax_count": 7,
                    "tmax_spread": 5.1,
                    "tmin": 13.3,
                    "tmin_count": 7,
                    "tmin_spread": 6.7,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 13.3,
                    "wind_count": 7,
                    "wind_spread": 6.4
                },
                "2026-05-26": {
                    "tmax": 23.5,
                    "tmax_count": 6,
                    "tmax_spread": 4.3,
                    "tmin": 11.1,
                    "tmin_count": 6,
                    "tmin_spread": 5.8,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0.3,
                    "wind": 13.4,
                    "wind_count": 6,
                    "wind_spread": 6.5
                },
                "2026-05-27": {
                    "tmax": 20,
                    "tmax_count": 6,
                    "tmax_spread": 15.4,
                    "tmin": 11.6,
                    "tmin_count": 6,
                    "tmin_spread": 7.6,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 13.7,
                    "wind_count": 6,
                    "wind_spread": 14.8
                },
                "2026-05-28": {
                    "tmax": 22.6,
                    "tmax_count": 5,
                    "tmax_spread": 11.3,
                    "tmin": 10.9,
                    "tmin_count": 5,
                    "tmin_spread": 10,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 0.3,
                    "wind": 11.9,
                    "wind_count": 5,
                    "wind_spread": 20.1
                },
                "2026-05-29": {
                    "tmax": 15.7,
                    "tmax_count": 4,
                    "tmax_spread": 12.3,
                    "tmin": 14.8,
                    "tmin_count": 4,
                    "tmin_spread": 8.8,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 0,
                    "wind": 8,
                    "wind_count": 4,
                    "wind_spread": 17.4
                },
                "2026-05-30": {
                    "tmax": 18.5,
                    "tmax_count": 2,
                    "tmax_spread": 11,
                    "tmin": 12.3,
                    "tmin_count": 2,
                    "tmin_spread": 11.1,
                    "precip": 0.3,
                    "precip_count": 2,
                    "precip_spread": 0.6,
                    "wind": 15.1,
                    "wind_count": 2,
                    "wind_spread": 9.8
                },
                "2026-05-31": {
                    "tmax": 20,
                    "tmax_count": 2,
                    "tmax_spread": 6.2,
                    "tmin": 11.1,
                    "tmin_count": 2,
                    "tmin_spread": 14.1,
                    "precip": 1.8,
                    "precip_count": 2,
                    "precip_spread": 3.6,
                    "wind": 17.9,
                    "wind_count": 2,
                    "wind_spread": 3.9
                },
                "2026-06-01": {
                    "tmax": 20.5,
                    "tmax_count": 2,
                    "tmax_spread": 0.1,
                    "tmin": 11.2,
                    "tmin_count": 2,
                    "tmin_spread": 9.9,
                    "precip": 2.1,
                    "precip_count": 2,
                    "precip_spread": 4.2,
                    "wind": 19.1,
                    "wind_count": 2,
                    "wind_spread": 4.6
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.5,
                            "tmin": 9.4,
                            "precip": 1.7,
                            "wind": 12.3
                        },
                        "2026-05-20": {
                            "tmax": 17.4,
                            "tmin": 12.2,
                            "precip": 11.2,
                            "wind": 12.3
                        },
                        "2026-05-21": {
                            "tmax": 20.7,
                            "tmin": 11.6,
                            "precip": 0,
                            "wind": 15.9
                        },
                        "2026-05-22": {
                            "tmax": 25.6,
                            "tmin": 12.9,
                            "precip": 0,
                            "wind": 5.8
                        },
                        "2026-05-23": {
                            "tmax": 29.2,
                            "tmin": 15.2,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-24": {
                            "tmax": 30.7,
                            "tmin": 15.3,
                            "precip": 0,
                            "wind": 12.1
                        },
                        "2026-05-25": {
                            "tmax": 23.9,
                            "tmin": 13.3,
                            "precip": 0,
                            "wind": 13.3
                        },
                        "2026-05-26": {
                            "tmax": 22.2,
                            "tmin": 11.1,
                            "precip": 0,
                            "wind": 13.8
                        },
                        "2026-05-27": {
                            "tmax": 20,
                            "tmin": 11.6,
                            "precip": 0,
                            "wind": 14.1
                        },
                        "2026-05-28": {
                            "tmax": 22.8,
                            "tmin": 10.9,
                            "precip": 0,
                            "wind": 8.1
                        },
                        "2026-05-29": {
                            "tmax": 26.4,
                            "tmin": 15.4,
                            "precip": 0,
                            "wind": 6.4
                        },
                        "2026-05-30": {
                            "tmax": 24,
                            "tmin": 17.8,
                            "precip": 0.6,
                            "wind": 10.2
                        },
                        "2026-05-31": {
                            "tmax": 23.1,
                            "tmin": 18.1,
                            "precip": 3.6,
                            "wind": 15.9
                        },
                        "2026-06-01": {
                            "tmax": 20.4,
                            "tmin": 16.1,
                            "precip": 4.2,
                            "wind": 21.4
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.5,
                            "tmin": 9.4,
                            "precip": 1.5,
                            "wind": 12.3
                        },
                        "2026-05-20": {
                            "tmax": 17.4,
                            "tmin": 12.2,
                            "precip": 11.1,
                            "wind": 12.3
                        },
                        "2026-05-21": {
                            "tmax": 20.7,
                            "tmin": 11.6,
                            "precip": 0,
                            "wind": 15.9
                        },
                        "2026-05-22": {
                            "tmax": 25.6,
                            "tmin": 12.9,
                            "precip": 0,
                            "wind": 5.8
                        },
                        "2026-05-23": {
                            "tmax": 29.2,
                            "tmin": 15.2,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-24": {
                            "tmax": 30.7,
                            "tmin": 15.3,
                            "precip": 0,
                            "wind": 12.1
                        },
                        "2026-05-25": {
                            "tmax": 23.9,
                            "tmin": 13.3,
                            "precip": 0,
                            "wind": 13.3
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.7,
                            "tmin": 9,
                            "precip": 2.7,
                            "wind": 10.1
                        },
                        "2026-05-20": {
                            "tmax": 17.2,
                            "tmin": 12.3,
                            "precip": 7.3,
                            "wind": 16.1
                        },
                        "2026-05-21": {
                            "tmax": 19.2,
                            "tmin": 10.8,
                            "precip": 0.7,
                            "wind": 19.8
                        },
                        "2026-05-22": {
                            "tmax": 21,
                            "tmin": 12.7,
                            "precip": 0.1,
                            "wind": 11
                        },
                        "2026-05-23": {
                            "tmax": 25.8,
                            "tmin": 12.6,
                            "precip": 0.3,
                            "wind": 8.7
                        },
                        "2026-05-24": {
                            "tmax": 20.7,
                            "tmin": 12.5,
                            "precip": 9.4,
                            "wind": 16.4
                        },
                        "2026-05-25": {
                            "tmax": 19.6,
                            "tmin": 11.2,
                            "precip": 0,
                            "wind": 13.1
                        },
                        "2026-05-26": {
                            "tmax": 21.7,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 14.3
                        },
                        "2026-05-27": {
                            "tmax": 20,
                            "tmin": 11.6,
                            "precip": 0,
                            "wind": 14.4
                        },
                        "2026-05-28": {
                            "tmax": 22.6,
                            "tmin": 10.6,
                            "precip": 0,
                            "wind": 8.6
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.5,
                            "tmin": 8.7,
                            "precip": 3.2,
                            "wind": 11.8
                        },
                        "2026-05-20": {
                            "tmax": 16.1,
                            "tmin": 9.9,
                            "precip": 7.7,
                            "wind": 15.8
                        },
                        "2026-05-21": {
                            "tmax": 18.8,
                            "tmin": 8.7,
                            "precip": 1.1,
                            "wind": 22.1
                        },
                        "2026-05-22": {
                            "tmax": 21.6,
                            "tmin": 9.9,
                            "precip": 0.4,
                            "wind": 17.4
                        },
                        "2026-05-23": {
                            "tmax": 25.7,
                            "tmin": 12.3,
                            "precip": 1.3,
                            "wind": 12.9
                        },
                        "2026-05-24": {
                            "tmax": 20.6,
                            "tmin": 11.1,
                            "precip": 0,
                            "wind": 18.4
                        },
                        "2026-05-25": {
                            "tmax": 21.3,
                            "tmin": 9.5,
                            "precip": 0,
                            "wind": 17.5
                        },
                        "2026-05-26": {
                            "tmax": 24.4,
                            "tmin": 10.6,
                            "precip": 0.3,
                            "wind": 15.8
                        },
                        "2026-05-27": {
                            "tmax": 19.5,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 19.8
                        },
                        "2026-05-28": {
                            "tmax": 14.1,
                            "tmin": 6.5,
                            "precip": 0.3,
                            "wind": 28.2
                        },
                        "2026-05-29": {
                            "tmax": 14.1,
                            "tmin": 8.1,
                            "precip": 0,
                            "wind": 23.8
                        },
                        "2026-05-30": {
                            "tmax": 13,
                            "tmin": 6.7,
                            "precip": 0,
                            "wind": 20
                        },
                        "2026-05-31": {
                            "tmax": 16.9,
                            "tmin": 4,
                            "precip": 0,
                            "wind": 19.8
                        },
                        "2026-06-01": {
                            "tmax": 20.5,
                            "tmin": 6.2,
                            "precip": 0,
                            "wind": 16.8
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.8,
                            "tmin": 10.4,
                            "precip": 0.5,
                            "wind": 19
                        },
                        "2026-05-20": {
                            "tmax": 18.9,
                            "tmin": 13.4,
                            "precip": 9.4,
                            "wind": 19.1
                        },
                        "2026-05-21": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        },
                        "2026-05-22": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        }
                    }
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.3,
                            "tmin": 10.3,
                            "precip": 1.6,
                            "wind": 11.1
                        },
                        "2026-05-20": {
                            "tmax": 16.7,
                            "tmin": 11.3,
                            "precip": 5.4,
                            "wind": 11.1
                        },
                        "2026-05-21": {
                            "tmax": 18.6,
                            "tmin": 9.1,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-22": {
                            "tmax": 22.8,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-23": {
                            "tmax": 27.2,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-24": {
                            "tmax": 26.3,
                            "tmin": 14.1,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-25": {
                            "tmax": 24.1,
                            "tmin": 13.5,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-26": {
                            "tmax": 22.9,
                            "tmin": 11.4,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-27": {
                            "tmax": 23.4,
                            "tmin": 12,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-28": {
                            "tmax": 21.9,
                            "tmin": 12,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-29": {
                            "tmax": 14.1,
                            "tmin": 14.1,
                            "precip": 0,
                            "wind": 7.4
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.4,
                            "tmin": 14.7,
                            "precip": 0,
                            "wind": 15.5
                        },
                        "2026-05-20": {
                            "tmax": 17,
                            "tmin": 13.3,
                            "precip": 6.2,
                            "wind": 16.9
                        },
                        "2026-05-21": {
                            "tmax": 19.6,
                            "tmin": 12.8,
                            "precip": 0,
                            "wind": 15.1
                        },
                        "2026-05-22": {
                            "tmax": 21.9,
                            "tmin": 14.2,
                            "precip": 0,
                            "wind": 9.4
                        },
                        "2026-05-23": {
                            "tmax": 26.5,
                            "tmin": 16.3,
                            "precip": 0,
                            "wind": 7.9
                        },
                        "2026-05-24": {
                            "tmax": 26.1,
                            "tmin": 17.6,
                            "precip": 0,
                            "wind": 13.3
                        },
                        "2026-05-25": {
                            "tmax": 24.7,
                            "tmin": 15.7,
                            "precip": 0,
                            "wind": 13.7
                        },
                        "2026-05-26": {
                            "tmax": 26,
                            "tmin": 15.8,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-27": {
                            "tmax": 25.4,
                            "tmin": 16.6,
                            "precip": 0,
                            "wind": 13.3
                        },
                        "2026-05-28": {
                            "tmax": 25.4,
                            "tmin": 16.5,
                            "precip": 0,
                            "wind": 11.9
                        },
                        "2026-05-29": {
                            "tmax": 17.3,
                            "tmin": 16.9,
                            "precip": 0,
                            "wind": 8.6
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17,
                            "tmin": 9,
                            "precip": 0.2,
                            "wind": 5
                        },
                        "2026-05-20": {
                            "tmax": 15,
                            "tmin": 9,
                            "precip": 0.1,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 17,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-22": {
                            "tmax": 20,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-23": {
                            "tmax": 25,
                            "tmin": 11,
                            "precip": 0.1,
                            "wind": 5
                        },
                        "2026-05-24": {
                            "tmax": 20,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-25": {
                            "tmax": 21,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-26": {
                            "tmax": 24,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-27": {
                            "tmax": 10,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 5
                        }
                    }
                }
            }
        },
        {
            "id": 5,
            "name": "Zürich",
            "lat": 47.374449,
            "lon": 8.541042,
            "consensus": {
                "2026-05-19": {
                    "tmax": 17.3,
                    "tmax_count": 8,
                    "tmax_spread": 2.5,
                    "tmin": 5.9,
                    "tmin_count": 8,
                    "tmin_spread": 7.5,
                    "precip": 0,
                    "precip_count": 8,
                    "precip_spread": 0.6,
                    "wind": 10.9,
                    "wind_count": 8,
                    "wind_spread": 6.8
                },
                "2026-05-20": {
                    "tmax": 19.1,
                    "tmax_count": 8,
                    "tmax_spread": 2.6,
                    "tmin": 10.9,
                    "tmin_count": 8,
                    "tmin_spread": 4.5,
                    "precip": 3.6,
                    "precip_count": 8,
                    "precip_spread": 12.1,
                    "wind": 14.4,
                    "wind_count": 8,
                    "wind_spread": 7.9
                },
                "2026-05-21": {
                    "tmax": 22.5,
                    "tmax_count": 7,
                    "tmax_spread": 1.5,
                    "tmin": 10.2,
                    "tmin_count": 7,
                    "tmin_spread": 4.6,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.8,
                    "wind": 8.9,
                    "wind_count": 7,
                    "wind_spread": 5.6
                },
                "2026-05-22": {
                    "tmax": 24.5,
                    "tmax_count": 7,
                    "tmax_spread": 2.5,
                    "tmin": 10.8,
                    "tmin_count": 7,
                    "tmin_spread": 5.2,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 9.1,
                    "wind_count": 7,
                    "wind_spread": 5.9
                },
                "2026-05-23": {
                    "tmax": 27.2,
                    "tmax_count": 7,
                    "tmax_spread": 2.8,
                    "tmin": 12.5,
                    "tmin_count": 7,
                    "tmin_spread": 5.9,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 5,
                    "wind_count": 7,
                    "wind_spread": 4.7
                },
                "2026-05-24": {
                    "tmax": 27,
                    "tmax_count": 7,
                    "tmax_spread": 2.6,
                    "tmin": 13.8,
                    "tmin_count": 7,
                    "tmin_spread": 4.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 1.1,
                    "wind": 10.2,
                    "wind_count": 7,
                    "wind_spread": 7.6
                },
                "2026-05-25": {
                    "tmax": 27.9,
                    "tmax_count": 7,
                    "tmax_spread": 5.4,
                    "tmin": 13.6,
                    "tmin_count": 7,
                    "tmin_spread": 3.7,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.2,
                    "wind": 9.8,
                    "wind_count": 7,
                    "wind_spread": 11.2
                },
                "2026-05-26": {
                    "tmax": 28.3,
                    "tmax_count": 6,
                    "tmax_spread": 5.7,
                    "tmin": 15.4,
                    "tmin_count": 6,
                    "tmin_spread": 4.5,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0.1,
                    "wind": 8.2,
                    "wind_count": 6,
                    "wind_spread": 5.3
                },
                "2026-05-27": {
                    "tmax": 28.3,
                    "tmax_count": 6,
                    "tmax_spread": 14.9,
                    "tmin": 17,
                    "tmin_count": 6,
                    "tmin_spread": 1.6,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 8.3,
                    "wind_count": 6,
                    "wind_spread": 9.4
                },
                "2026-05-28": {
                    "tmax": 28.7,
                    "tmax_count": 5,
                    "tmax_spread": 3.6,
                    "tmin": 18.1,
                    "tmin_count": 5,
                    "tmin_spread": 2.3,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 1.2,
                    "wind": 8.2,
                    "wind_count": 5,
                    "wind_spread": 6.2
                },
                "2026-05-29": {
                    "tmax": 21.1,
                    "tmax_count": 4,
                    "tmax_spread": 10.7,
                    "tmin": 18.9,
                    "tmin_count": 4,
                    "tmin_spread": 5.8,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 7.8,
                    "wind": 5.2,
                    "wind_count": 4,
                    "wind_spread": 16.1
                },
                "2026-05-30": {
                    "tmax": 24,
                    "tmax_count": 2,
                    "tmax_spread": 1,
                    "tmin": 12.5,
                    "tmin_count": 2,
                    "tmin_spread": 6.9,
                    "precip": 2.4,
                    "precip_count": 2,
                    "precip_spread": 4.8,
                    "wind": 9.5,
                    "wind_count": 2,
                    "wind_spread": 8.1
                },
                "2026-05-31": {
                    "tmax": 27.4,
                    "tmax_count": 2,
                    "tmax_spread": 1.1,
                    "tmin": 13.1,
                    "tmin_count": 2,
                    "tmin_spread": 7,
                    "precip": 0.6,
                    "precip_count": 2,
                    "precip_spread": 1.2,
                    "wind": 8.6,
                    "wind_count": 2,
                    "wind_spread": 3.8
                },
                "2026-06-01": {
                    "tmax": 28.5,
                    "tmax_count": 2,
                    "tmax_spread": 6,
                    "tmin": 14.9,
                    "tmin_count": 2,
                    "tmin_spread": 3.2,
                    "precip": 0.6,
                    "precip_count": 2,
                    "precip_spread": 1.2,
                    "wind": 11,
                    "wind_count": 2,
                    "wind_spread": 6.2
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.6,
                            "tmin": 6.1,
                            "precip": 0,
                            "wind": 10.9
                        },
                        "2026-05-20": {
                            "tmax": 18.6,
                            "tmin": 12.4,
                            "precip": 3.9,
                            "wind": 15.3
                        },
                        "2026-05-21": {
                            "tmax": 22.5,
                            "tmin": 10.2,
                            "precip": 0,
                            "wind": 8.9
                        },
                        "2026-05-22": {
                            "tmax": 24.5,
                            "tmin": 10.8,
                            "precip": 0,
                            "wind": 9.1
                        },
                        "2026-05-23": {
                            "tmax": 27.2,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 4.6
                        },
                        "2026-05-24": {
                            "tmax": 27,
                            "tmin": 11.9,
                            "precip": 0,
                            "wind": 10.2
                        },
                        "2026-05-25": {
                            "tmax": 27.9,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 9.8
                        },
                        "2026-05-26": {
                            "tmax": 27,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 10.3
                        },
                        "2026-05-27": {
                            "tmax": 28.7,
                            "tmin": 16.5,
                            "precip": 0,
                            "wind": 8.9
                        },
                        "2026-05-28": {
                            "tmax": 29.9,
                            "tmin": 18.1,
                            "precip": 0,
                            "wind": 8.2
                        },
                        "2026-05-29": {
                            "tmax": 29.7,
                            "tmin": 18.8,
                            "precip": 7.8,
                            "wind": 4.8
                        },
                        "2026-05-30": {
                            "tmax": 23.5,
                            "tmin": 15.9,
                            "precip": 4.8,
                            "wind": 5.4
                        },
                        "2026-05-31": {
                            "tmax": 26.8,
                            "tmin": 16.6,
                            "precip": 1.2,
                            "wind": 6.7
                        },
                        "2026-06-01": {
                            "tmax": 25.5,
                            "tmin": 16.5,
                            "precip": 1.2,
                            "wind": 14.1
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17.6,
                            "tmin": 6.1,
                            "precip": 0,
                            "wind": 10.9
                        },
                        "2026-05-20": {
                            "tmax": 18.6,
                            "tmin": 12.4,
                            "precip": 3.8,
                            "wind": 15.3
                        },
                        "2026-05-21": {
                            "tmax": 22.5,
                            "tmin": 10.2,
                            "precip": 0,
                            "wind": 8.9
                        },
                        "2026-05-22": {
                            "tmax": 24.5,
                            "tmin": 10.8,
                            "precip": 0,
                            "wind": 9.1
                        },
                        "2026-05-23": {
                            "tmax": 27.2,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 4.6
                        },
                        "2026-05-24": {
                            "tmax": 27,
                            "tmin": 11.9,
                            "precip": 0,
                            "wind": 10.2
                        },
                        "2026-05-25": {
                            "tmax": 27.9,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 9.8
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 16.7,
                            "tmin": 5.7,
                            "precip": 0.6,
                            "wind": 10.4
                        },
                        "2026-05-20": {
                            "tmax": 19.2,
                            "tmin": 10.5,
                            "precip": 12.3,
                            "wind": 13.4
                        },
                        "2026-05-21": {
                            "tmax": 21.2,
                            "tmin": 10.5,
                            "precip": 0.8,
                            "wind": 8.7
                        },
                        "2026-05-22": {
                            "tmax": 23.7,
                            "tmin": 10.6,
                            "precip": 0,
                            "wind": 7.7
                        },
                        "2026-05-23": {
                            "tmax": 25.8,
                            "tmin": 12.5,
                            "precip": 0,
                            "wind": 3.3
                        },
                        "2026-05-24": {
                            "tmax": 25.8,
                            "tmin": 13.9,
                            "precip": 1.1,
                            "wind": 12.6
                        },
                        "2026-05-25": {
                            "tmax": 23.6,
                            "tmin": 13.6,
                            "precip": 0.2,
                            "wind": 15.5
                        },
                        "2026-05-26": {
                            "tmax": 26,
                            "tmin": 15,
                            "precip": 0,
                            "wind": 6.9
                        },
                        "2026-05-27": {
                            "tmax": 27.5,
                            "tmin": 16.9,
                            "precip": 0,
                            "wind": 4.7
                        },
                        "2026-05-28": {
                            "tmax": 28.7,
                            "tmin": 18.5,
                            "precip": 0,
                            "wind": 6.4
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.6,
                            "tmin": 4.9,
                            "precip": 0,
                            "wind": 16.1
                        },
                        "2026-05-20": {
                            "tmax": 18.9,
                            "tmin": 10.1,
                            "precip": 5.9,
                            "wind": 12.2
                        },
                        "2026-05-21": {
                            "tmax": 22.7,
                            "tmin": 8.8,
                            "precip": 0,
                            "wind": 10.6
                        },
                        "2026-05-22": {
                            "tmax": 24.8,
                            "tmin": 10.1,
                            "precip": 0,
                            "wind": 13.3
                        },
                        "2026-05-23": {
                            "tmax": 27.2,
                            "tmin": 11.1,
                            "precip": 0,
                            "wind": 8
                        },
                        "2026-05-24": {
                            "tmax": 28.4,
                            "tmin": 13.8,
                            "precip": 0,
                            "wind": 7.6
                        },
                        "2026-05-25": {
                            "tmax": 29,
                            "tmin": 14.4,
                            "precip": 0,
                            "wind": 12.3
                        },
                        "2026-05-26": {
                            "tmax": 31.7,
                            "tmin": 15.7,
                            "precip": 0,
                            "wind": 7.1
                        },
                        "2026-05-27": {
                            "tmax": 30.9,
                            "tmin": 17.6,
                            "precip": 0,
                            "wind": 14.1
                        },
                        "2026-05-28": {
                            "tmax": 26.3,
                            "tmin": 16.6,
                            "precip": 1.2,
                            "wind": 12.6
                        },
                        "2026-05-29": {
                            "tmax": 21.9,
                            "tmin": 14.4,
                            "precip": 0,
                            "wind": 16.8
                        },
                        "2026-05-30": {
                            "tmax": 24.5,
                            "tmin": 9,
                            "precip": 0,
                            "wind": 13.5
                        },
                        "2026-05-31": {
                            "tmax": 27.9,
                            "tmin": 9.6,
                            "precip": 0,
                            "wind": 10.5
                        },
                        "2026-06-01": {
                            "tmax": 31.5,
                            "tmin": 13.3,
                            "precip": 0,
                            "wind": 7.9
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 18.6,
                            "tmin": 8.6,
                            "precip": 0,
                            "wind": 9.8
                        },
                        "2026-05-20": {
                            "tmax": 19.8,
                            "tmin": 12.5,
                            "precip": 2.9,
                            "wind": 19.9
                        },
                        "2026-05-21": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        },
                        "2026-05-22": {
                            "tmax": null,
                            "tmin": null,
                            "precip": null,
                            "wind": null
                        }
                    }
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 16.1,
                            "tmin": 4.9,
                            "precip": 0.1,
                            "wind": 9.3
                        },
                        "2026-05-20": {
                            "tmax": 17.4,
                            "tmin": 11.2,
                            "precip": 1.6,
                            "wind": 13
                        },
                        "2026-05-21": {
                            "tmax": 22.5,
                            "tmin": 10.6,
                            "precip": 0,
                            "wind": 7.4
                        },
                        "2026-05-22": {
                            "tmax": 25.5,
                            "tmin": 11.5,
                            "precip": 0,
                            "wind": 7.4
                        },
                        "2026-05-23": {
                            "tmax": 27.8,
                            "tmin": 13.6,
                            "precip": 0,
                            "wind": 7.4
                        },
                        "2026-05-24": {
                            "tmax": 27.6,
                            "tmin": 15.3,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-25": {
                            "tmax": 29,
                            "tmin": 15.7,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-26": {
                            "tmax": 29.5,
                            "tmin": 17,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-27": {
                            "tmax": 28,
                            "tmin": 17,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-28": {
                            "tmax": 26.5,
                            "tmin": 16.6,
                            "precip": 0,
                            "wind": 9.3
                        },
                        "2026-05-29": {
                            "tmax": 19,
                            "tmin": 19,
                            "precip": 0,
                            "wind": 5.5
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 16.9,
                            "tmin": 10.5,
                            "precip": 0.2,
                            "wind": 11.9
                        },
                        "2026-05-20": {
                            "tmax": 19.6,
                            "tmin": 9.6,
                            "precip": 3.3,
                            "wind": 18.7
                        },
                        "2026-05-21": {
                            "tmax": 21.3,
                            "tmin": 9.2,
                            "precip": 0,
                            "wind": 9.7
                        },
                        "2026-05-22": {
                            "tmax": 23,
                            "tmin": 12.2,
                            "precip": 0,
                            "wind": 12.2
                        },
                        "2026-05-23": {
                            "tmax": 25,
                            "tmin": 13.9,
                            "precip": 0,
                            "wind": 5.4
                        },
                        "2026-05-24": {
                            "tmax": 26.3,
                            "tmin": 15.4,
                            "precip": 0.4,
                            "wind": 11.2
                        },
                        "2026-05-25": {
                            "tmax": 24.2,
                            "tmin": 14.5,
                            "precip": 0,
                            "wind": 16.2
                        },
                        "2026-05-26": {
                            "tmax": 27,
                            "tmin": 16.6,
                            "precip": 0,
                            "wind": 10.1
                        },
                        "2026-05-27": {
                            "tmax": 28.5,
                            "tmin": 17.5,
                            "precip": 0,
                            "wind": 7.6
                        },
                        "2026-05-28": {
                            "tmax": 29.8,
                            "tmin": 18.9,
                            "precip": 0,
                            "wind": 7.6
                        },
                        "2026-05-29": {
                            "tmax": 20.2,
                            "tmin": 20.2,
                            "precip": 0,
                            "wind": 0.7
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 17,
                            "tmin": 3,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-20": {
                            "tmax": 20,
                            "tmin": 8,
                            "precip": 0.2,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 22,
                            "tmin": 6,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-22": {
                            "tmax": 24,
                            "tmin": 7,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-23": {
                            "tmax": 26,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-24": {
                            "tmax": 27,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-25": {
                            "tmax": 28,
                            "tmin": 12,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-26": {
                            "tmax": 30,
                            "tmin": 13,
                            "precip": 0.1,
                            "wind": 5
                        },
                        "2026-05-27": {
                            "tmax": 16,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 5
                        }
                    }
                }
            }
        },
        {
            "id": 6,
            "name": "Wien",
            "lat": 48.208354,
            "lon": 16.372504,
            "consensus": {
                "2026-05-19": {
                    "tmax": 21.3,
                    "tmax_count": 7,
                    "tmax_spread": 1.7,
                    "tmin": 9.7,
                    "tmin_count": 7,
                    "tmin_spread": 6.2,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.9,
                    "wind": 17.7,
                    "wind_count": 7,
                    "wind_spread": 20
                },
                "2026-05-20": {
                    "tmax": 21.3,
                    "tmax_count": 7,
                    "tmax_spread": 1.8,
                    "tmin": 11.8,
                    "tmin_count": 7,
                    "tmin_spread": 3.5,
                    "precip": 0.1,
                    "precip_count": 7,
                    "precip_spread": 3.3,
                    "wind": 17.3,
                    "wind_count": 7,
                    "wind_spread": 10.7
                },
                "2026-05-21": {
                    "tmax": 22.6,
                    "tmax_count": 7,
                    "tmax_spread": 1.5,
                    "tmin": 13.7,
                    "tmin_count": 7,
                    "tmin_spread": 4.1,
                    "precip": 0.1,
                    "precip_count": 7,
                    "precip_spread": 1.3,
                    "wind": 21.5,
                    "wind_count": 7,
                    "wind_spread": 10.1
                },
                "2026-05-22": {
                    "tmax": 23.5,
                    "tmax_count": 7,
                    "tmax_spread": 2.6,
                    "tmin": 14.2,
                    "tmin_count": 7,
                    "tmin_spread": 5.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 15.9,
                    "wind_count": 7,
                    "wind_spread": 5.4
                },
                "2026-05-23": {
                    "tmax": 24.6,
                    "tmax_count": 7,
                    "tmax_spread": 2.8,
                    "tmin": 14.1,
                    "tmin_count": 7,
                    "tmin_spread": 5.7,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0,
                    "wind": 13,
                    "wind_count": 7,
                    "wind_spread": 2.2
                },
                "2026-05-24": {
                    "tmax": 27.4,
                    "tmax_count": 7,
                    "tmax_spread": 2.4,
                    "tmin": 13,
                    "tmin_count": 7,
                    "tmin_spread": 5.6,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.3,
                    "wind": 10.2,
                    "wind_count": 7,
                    "wind_spread": 6.1
                },
                "2026-05-25": {
                    "tmax": 27.6,
                    "tmax_count": 7,
                    "tmax_spread": 3.7,
                    "tmin": 16,
                    "tmin_count": 7,
                    "tmin_spread": 6.4,
                    "precip": 0,
                    "precip_count": 7,
                    "precip_spread": 0.6,
                    "wind": 13,
                    "wind_count": 7,
                    "wind_spread": 8.9
                },
                "2026-05-26": {
                    "tmax": 26.5,
                    "tmax_count": 6,
                    "tmax_spread": 1.8,
                    "tmin": 17.3,
                    "tmin_count": 6,
                    "tmin_spread": 6.2,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0,
                    "wind": 13.8,
                    "wind_count": 6,
                    "wind_spread": 13.5
                },
                "2026-05-27": {
                    "tmax": 28.8,
                    "tmax_count": 6,
                    "tmax_spread": 13,
                    "tmin": 17.8,
                    "tmin_count": 6,
                    "tmin_spread": 2.8,
                    "precip": 0,
                    "precip_count": 6,
                    "precip_spread": 0.3,
                    "wind": 17.4,
                    "wind_count": 6,
                    "wind_spread": 16.4
                },
                "2026-05-28": {
                    "tmax": 25.2,
                    "tmax_count": 5,
                    "tmax_spread": 1.6,
                    "tmin": 16.8,
                    "tmin_count": 5,
                    "tmin_spread": 2.3,
                    "precip": 0,
                    "precip_count": 5,
                    "precip_spread": 0.9,
                    "wind": 15.7,
                    "wind_count": 5,
                    "wind_spread": 3.1
                },
                "2026-05-29": {
                    "tmax": 20.6,
                    "tmax_count": 4,
                    "tmax_spread": 12,
                    "tmin": 16.4,
                    "tmin_count": 4,
                    "tmin_spread": 6.8,
                    "precip": 0,
                    "precip_count": 4,
                    "precip_spread": 0,
                    "wind": 9.9,
                    "wind_count": 4,
                    "wind_spread": 11.7
                },
                "2026-05-30": {
                    "tmax": 26.5,
                    "tmax_count": 2,
                    "tmax_spread": 5.8,
                    "tmin": 15.5,
                    "tmin_count": 2,
                    "tmin_spread": 9.3,
                    "precip": 0.3,
                    "precip_count": 2,
                    "precip_spread": 0.6,
                    "wind": 12.2,
                    "wind_count": 2,
                    "wind_spread": 3.3
                },
                "2026-05-31": {
                    "tmax": 28.1,
                    "tmax_count": 2,
                    "tmax_spread": 4,
                    "tmin": 16.5,
                    "tmin_count": 2,
                    "tmin_spread": 8.4,
                    "precip": 0.3,
                    "precip_count": 2,
                    "precip_spread": 0.6,
                    "wind": 15,
                    "wind_count": 2,
                    "wind_spread": 9.6
                },
                "2026-06-01": {
                    "tmax": 29.2,
                    "tmax_count": 2,
                    "tmax_spread": 2.8,
                    "tmin": 18.3,
                    "tmin_count": 2,
                    "tmin_spread": 7.5,
                    "precip": 0,
                    "precip_count": 2,
                    "precip_spread": 0,
                    "wind": 15.6,
                    "wind_count": 2,
                    "wind_spread": 8.4
                }
            },
            "sources": {
                "open-meteo": {
                    "name": "Open-Meteo",
                    "data": {
                        "2026-05-19": {
                            "tmax": 22,
                            "tmin": 9.7,
                            "precip": 0,
                            "wind": 18.2
                        },
                        "2026-05-20": {
                            "tmax": 21.8,
                            "tmin": 13,
                            "precip": 3.3,
                            "wind": 21.6
                        },
                        "2026-05-21": {
                            "tmax": 22.4,
                            "tmin": 13.7,
                            "precip": 0,
                            "wind": 21.5
                        },
                        "2026-05-22": {
                            "tmax": 23.5,
                            "tmin": 14.2,
                            "precip": 0,
                            "wind": 15.9
                        },
                        "2026-05-23": {
                            "tmax": 24.6,
                            "tmin": 14.1,
                            "precip": 0,
                            "wind": 14.2
                        },
                        "2026-05-24": {
                            "tmax": 25.1,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 10.3
                        },
                        "2026-05-25": {
                            "tmax": 27.6,
                            "tmin": 13.2,
                            "precip": 0,
                            "wind": 10.5
                        },
                        "2026-05-26": {
                            "tmax": 26.8,
                            "tmin": 17.3,
                            "precip": 0,
                            "wind": 18.5
                        },
                        "2026-05-27": {
                            "tmax": 29.1,
                            "tmin": 18.9,
                            "precip": 0,
                            "wind": 21
                        },
                        "2026-05-28": {
                            "tmax": 25.2,
                            "tmin": 16.8,
                            "precip": 0,
                            "wind": 15.8
                        },
                        "2026-05-29": {
                            "tmax": 28.6,
                            "tmin": 16.2,
                            "precip": 0,
                            "wind": 12.3
                        },
                        "2026-05-30": {
                            "tmax": 29.4,
                            "tmin": 20.1,
                            "precip": 0.6,
                            "wind": 13.8
                        },
                        "2026-05-31": {
                            "tmax": 30.1,
                            "tmin": 20.7,
                            "precip": 0.6,
                            "wind": 19.8
                        },
                        "2026-06-01": {
                            "tmax": 30.6,
                            "tmin": 22,
                            "precip": 0,
                            "wind": 19.8
                        }
                    }
                },
                "open-meteo-icon": {
                    "name": "Open-Meteo (ICON \/ DWD)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 22,
                            "tmin": 9.7,
                            "precip": 0,
                            "wind": 18.2
                        },
                        "2026-05-20": {
                            "tmax": 21.8,
                            "tmin": 13,
                            "precip": 3.3,
                            "wind": 21.6
                        },
                        "2026-05-21": {
                            "tmax": 22.4,
                            "tmin": 13.7,
                            "precip": 0,
                            "wind": 21.5
                        },
                        "2026-05-22": {
                            "tmax": 23.5,
                            "tmin": 14.2,
                            "precip": 0,
                            "wind": 15.9
                        },
                        "2026-05-23": {
                            "tmax": 24.6,
                            "tmin": 14.1,
                            "precip": 0,
                            "wind": 14.2
                        },
                        "2026-05-24": {
                            "tmax": 25.1,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 10.3
                        },
                        "2026-05-25": {
                            "tmax": 27.6,
                            "tmin": 13.2,
                            "precip": 0,
                            "wind": 10.5
                        }
                    }
                },
                "open-meteo-ecmwf": {
                    "name": "Open-Meteo (ECMWF IFS)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 20.3,
                            "tmin": 8.5,
                            "precip": 0.6,
                            "wind": 17.7
                        },
                        "2026-05-20": {
                            "tmax": 20.5,
                            "tmin": 10.5,
                            "precip": 0.8,
                            "wind": 16.2
                        },
                        "2026-05-21": {
                            "tmax": 22.6,
                            "tmin": 13,
                            "precip": 1.3,
                            "wind": 20.2
                        },
                        "2026-05-22": {
                            "tmax": 23.3,
                            "tmin": 12.1,
                            "precip": 0,
                            "wind": 15.2
                        },
                        "2026-05-23": {
                            "tmax": 25.1,
                            "tmin": 12.4,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-24": {
                            "tmax": 27.5,
                            "tmin": 12.8,
                            "precip": 0,
                            "wind": 5.8
                        },
                        "2026-05-25": {
                            "tmax": 27.8,
                            "tmin": 16.2,
                            "precip": 0.6,
                            "wind": 17.6
                        },
                        "2026-05-26": {
                            "tmax": 25.8,
                            "tmin": 17.2,
                            "precip": 0,
                            "wind": 14.6
                        },
                        "2026-05-27": {
                            "tmax": 28.5,
                            "tmin": 16.9,
                            "precip": 0,
                            "wind": 21.4
                        },
                        "2026-05-28": {
                            "tmax": 24.3,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 16.1
                        }
                    }
                },
                "open-meteo-gfs": {
                    "name": "Open-Meteo (GFS \/ NOAA)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 22,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-20": {
                            "tmax": 21.1,
                            "tmin": 11.8,
                            "precip": 0,
                            "wind": 22.7
                        },
                        "2026-05-21": {
                            "tmax": 22.7,
                            "tmin": 12.4,
                            "precip": 0.1,
                            "wind": 22.1
                        },
                        "2026-05-22": {
                            "tmax": 22.7,
                            "tmin": 12.8,
                            "precip": 0,
                            "wind": 17.4
                        },
                        "2026-05-23": {
                            "tmax": 23.8,
                            "tmin": 12.7,
                            "precip": 0,
                            "wind": 13.4
                        },
                        "2026-05-24": {
                            "tmax": 27.4,
                            "tmin": 14.3,
                            "precip": 0.3,
                            "wind": 10.2
                        },
                        "2026-05-25": {
                            "tmax": 25.7,
                            "tmin": 16,
                            "precip": 0,
                            "wind": 19.4
                        },
                        "2026-05-26": {
                            "tmax": 27.3,
                            "tmin": 14.7,
                            "precip": 0,
                            "wind": 11.2
                        },
                        "2026-05-27": {
                            "tmax": 30,
                            "tmin": 17.4,
                            "precip": 0.3,
                            "wind": 13.8
                        },
                        "2026-05-28": {
                            "tmax": 25.9,
                            "tmin": 16.8,
                            "precip": 0.9,
                            "wind": 15.7
                        },
                        "2026-05-29": {
                            "tmax": 21.2,
                            "tmin": 13.2,
                            "precip": 0,
                            "wind": 17.8
                        },
                        "2026-05-30": {
                            "tmax": 23.6,
                            "tmin": 10.8,
                            "precip": 0,
                            "wind": 10.5
                        },
                        "2026-05-31": {
                            "tmax": 26.1,
                            "tmin": 12.3,
                            "precip": 0,
                            "wind": 10.2
                        },
                        "2026-06-01": {
                            "tmax": 27.8,
                            "tmin": 14.5,
                            "precip": 0,
                            "wind": 11.4
                        }
                    }
                },
                "open-meteo-arome": {
                    "name": "Open-Meteo (AROME \/ Météo-France)",
                    "data": []
                },
                "bright-sky": {
                    "name": "Bright Sky (DWD MOSMIX)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 21.3,
                            "tmin": 8.9,
                            "precip": 0,
                            "wind": 32
                        },
                        "2026-05-20": {
                            "tmax": 21.4,
                            "tmin": 13.5,
                            "precip": 0,
                            "wind": 16.7
                        },
                        "2026-05-21": {
                            "tmax": 22.6,
                            "tmin": 15.1,
                            "precip": 0,
                            "wind": 20.4
                        },
                        "2026-05-22": {
                            "tmax": 24.4,
                            "tmin": 16.4,
                            "precip": 0,
                            "wind": 16.7
                        },
                        "2026-05-23": {
                            "tmax": 25.8,
                            "tmin": 16.7,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-24": {
                            "tmax": 27.4,
                            "tmin": 17.7,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-25": {
                            "tmax": 27.9,
                            "tmin": 19,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-26": {
                            "tmax": 27.6,
                            "tmin": 19.2,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-27": {
                            "tmax": 28.1,
                            "tmin": 18.2,
                            "precip": 0,
                            "wind": 11.1
                        },
                        "2026-05-28": {
                            "tmax": 25.8,
                            "tmin": 18.3,
                            "precip": 0,
                            "wind": 13
                        },
                        "2026-05-29": {
                            "tmax": 20,
                            "tmin": 20,
                            "precip": 0,
                            "wind": 7.4
                        }
                    }
                },
                "met-no": {
                    "name": "Met.no (Yr \/ Norwegian Met)",
                    "data": {
                        "2026-05-19": {
                            "tmax": 21.1,
                            "tmin": 14.2,
                            "precip": 0.9,
                            "wind": 12.6
                        },
                        "2026-05-20": {
                            "tmax": 21.3,
                            "tmin": 11.5,
                            "precip": 0.1,
                            "wind": 17.3
                        },
                        "2026-05-21": {
                            "tmax": 23.5,
                            "tmin": 13.7,
                            "precip": 0.6,
                            "wind": 22
                        },
                        "2026-05-22": {
                            "tmax": 24.6,
                            "tmin": 15.2,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-23": {
                            "tmax": 24.8,
                            "tmin": 16.4,
                            "precip": 0,
                            "wind": 12.6
                        },
                        "2026-05-24": {
                            "tmax": 27.5,
                            "tmin": 17.3,
                            "precip": 0,
                            "wind": 7.9
                        },
                        "2026-05-25": {
                            "tmax": 28.7,
                            "tmin": 19.6,
                            "precip": 0,
                            "wind": 16.6
                        },
                        "2026-05-26": {
                            "tmax": 26.2,
                            "tmin": 18.6,
                            "precip": 0,
                            "wind": 14.8
                        },
                        "2026-05-27": {
                            "tmax": 29,
                            "tmin": 19.7,
                            "precip": 0,
                            "wind": 21.2
                        },
                        "2026-05-28": {
                            "tmax": 24.8,
                            "tmin": 17.3,
                            "precip": 0,
                            "wind": 13.3
                        },
                        "2026-05-29": {
                            "tmax": 16.6,
                            "tmin": 16.6,
                            "precip": 0,
                            "wind": 6.1
                        }
                    }
                },
                "7timer": {
                    "name": "7Timer!",
                    "data": {
                        "2026-05-19": {
                            "tmax": 21,
                            "tmin": 8,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-20": {
                            "tmax": 20,
                            "tmin": 10,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-21": {
                            "tmax": 22,
                            "tmin": 11,
                            "precip": 0.1,
                            "wind": 12
                        },
                        "2026-05-22": {
                            "tmax": 22,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-23": {
                            "tmax": 23,
                            "tmin": 11,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-24": {
                            "tmax": 27,
                            "tmin": 13,
                            "precip": 0.1,
                            "wind": 5
                        },
                        "2026-05-25": {
                            "tmax": 25,
                            "tmin": 14,
                            "precip": 0,
                            "wind": 12
                        },
                        "2026-05-26": {
                            "tmax": 26,
                            "tmin": 13,
                            "precip": 0,
                            "wind": 5
                        },
                        "2026-05-27": {
                            "tmax": 17,
                            "tmin": 17,
                            "precip": 0,
                            "wind": 5
                        }
                    }
                }
            }
        }
    ]
}