{
 "dataset": "Elgin, IL storm events — 12-month window, 25-mile radius (floods and special weather statements excluded, matching the city page)",
 "license": "https://www.stormauditor.com/data-license",
 "provenance": "Deduplicated by StormAuditor from public NOAA/NWS records (warnings, Local Storm Reports, NCEI Storm Events) under the published methodology at https://www.stormauditor.com/methodology",
 "refreshed_at": "2026-08-24T09:20:11.824+00:00",
 "window_days": 365,
 "event_count": 199,
 "fields": {
  "date": "Event date (YYYY-MM-DD, local storm day)",
  "county": "County or county-equivalent",
  "city": "Nearest city/place named in the source record",
  "event_type": "hazard tag: wind | hail | tornado | flood | lightning",
  "severity": "StormAuditor severity bucket (low|moderate|high|severe)",
  "evidence": "evidence level of the source record",
  "wind_mph": "reported/estimated wind gust, mph (blank if n/a)",
  "hail_in": "reported/estimated hail size, inches (blank if n/a)",
  "source": "originating public record (NWS warning, LSR, NCEI, ...)",
  "lat": "event latitude (WGS84, may be blank)",
  "lon": "event longitude (WGS84, may be blank)"
 },
 "events": [
  {
   "id": "spc-2026-08-21-hail-42.00-4",
   "lat": 42,
   "lon": -88.62,
   "zip": "",
   "city": "3 E Sycamore",
   "date": "2026-08-21",
   "county": "De Kalb",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near 3 E Sycamore",
   "sourceDetail": "SPC filtered reports — 2026-08-21",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-08-11-wind-41.76--88.45",
   "lat": 41.76,
   "lon": -88.45,
   "zip": "",
   "city": "Sugar Grove",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Significant tree damage reported in town.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-08-11-wind-41.77--88.48",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "KARR - Aurora / Sugar Grove Airport.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 85,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-08-11-wind-41.75-71",
   "lat": 41.75,
   "lon": -88.44,
   "zip": "",
   "city": "1 SE Sugar Grove",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 1 SE Sugar Grove",
   "sourceDetail": "SPC filtered reports — 2026-08-11",
   "windSpeedMph": 97,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-08-11-wind-41.96-73",
   "lat": 41.96,
   "lon": -88.47,
   "zip": "",
   "city": "1 NE Lily Lake",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 1 NE Lily Lake",
   "sourceDetail": "SPC filtered reports — 2026-08-11",
   "windSpeedMph": 66,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-08-11-wind-41.69-76",
   "lat": 41.69,
   "lon": -88.33,
   "zip": "",
   "city": "1 ENE Oswego",
   "date": "2026-08-11",
   "county": "Kendall",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 1 ENE Oswego",
   "sourceDetail": "SPC filtered reports — 2026-08-11",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-08-11-wind-41.82--88.27",
   "lat": 41.82,
   "lon": -88.27,
   "zip": "",
   "city": "3 SE Batavia",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station: KILAUROR58.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 89,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-08-11-wind-41.84-85",
   "lat": 41.84,
   "lon": -88.19,
   "zip": "",
   "city": "2 NNW Warrenville",
   "date": "2026-08-11",
   "county": "Dupage",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 2 NNW Warrenville",
   "sourceDetail": "SPC filtered reports — 2026-08-11",
   "windSpeedMph": 80,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-08-11-wind-41.80--87.99",
   "lat": 41.8,
   "lon": -87.99,
   "zip": "",
   "city": "1 WNW Westmont",
   "date": "2026-08-11",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station: KILDOWNE102.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-08-11-wind-42.07-122",
   "lat": 42.07,
   "lon": -88.14,
   "zip": "",
   "city": "1 SSE South Barrington",
   "date": "2026-08-11",
   "county": "Cook",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.93,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "wind reported near 1 SSE South Barrington",
   "sourceDetail": "SPC filtered reports — 2026-08-11",
   "windSpeedMph": 81,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-ARR-2026-08-11-69324",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 63 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR)",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-ARR-2026-08-11-69325",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-08-11",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 85 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR)",
   "windSpeedMph": 85,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-DPA-2026-08-11-69413",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-08-11",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 53 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-08-09-hail-41.76--88.21",
   "lat": 41.76,
   "lon": -88.21,
   "zip": "",
   "city": "3 W Naperville",
   "date": "2026-08-09",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-08-09-hail-41.79--88.15",
   "lat": 41.79,
   "lon": -88.15,
   "zip": "",
   "city": "1 N Naperville",
   "date": "2026-08-09",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Dime (0.75 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-08-09-hail-41.78--88.18",
   "lat": 41.78,
   "lon": -88.18,
   "zip": "",
   "city": "2 W Naperville",
   "date": "2026-08-09",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Dime (0.75 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-08-09-hail-42.24--87.97",
   "lat": 42.24,
   "lon": -87.97,
   "zip": "",
   "city": "Vernon Hills",
   "date": "2026-08-09",
   "county": "Lake",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Trained spotter reports quarter size hail ongoing in Vernon Hills.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-28-hail-41.83--87.95",
   "lat": 41.83,
   "lon": -87.95,
   "zip": "",
   "city": "Oak Brook",
   "date": "2026-07-28",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shared on social media showing a hailstone roughly two inches in diameter.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-geo-2026-07-28-tornado-41.86--88.10",
   "lat": 41.86,
   "lon": -88.1,
   "zip": "",
   "city": "Wheaton",
   "date": "2026-07-28",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "NWS survey confirms a brief EF-0 tornado started just south of Wheaton College. Tornado was on the ground for 2 minutes or less. Peak width of 100 yards and winds of 75 mph.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-27-hail-42.09--88.30",
   "lat": 42.09,
   "lon": -88.3,
   "zip": "",
   "city": "1 W West Dundee",
   "date": "2026-07-27",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-42.08--88.29",
   "lat": 42.08,
   "lon": -88.29,
   "zip": "",
   "city": "1 S West Dundee",
   "date": "2026-07-27",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.98--88.14",
   "lat": 41.98,
   "lon": -88.14,
   "zip": "",
   "city": "1 S Hanover Park",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of quarter size hail relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-42.02--88.07",
   "lat": 42.02,
   "lon": -88.07,
   "zip": "",
   "city": "1 SE Schaumburg",
   "date": "2026-07-27",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-42.02--88.07",
   "lat": 42.02,
   "lon": -88.07,
   "zip": "",
   "city": "1 SE Schaumburg",
   "date": "2026-07-27",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.84--88.04",
   "lat": 41.84,
   "lon": -88.04,
   "zip": "",
   "city": "3 W York Center",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.97--88.07",
   "lat": 41.97,
   "lon": -88.07,
   "zip": "",
   "city": "1 W Medinah",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.99--88.08",
   "lat": 41.99,
   "lon": -88.08,
   "zip": "",
   "city": "1 NW Roselle",
   "date": "2026-07-27",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.84--88.01",
   "lat": 41.84,
   "lon": -88.01,
   "zip": "",
   "city": "1 SW York Center",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.86--87.97",
   "lat": 41.86,
   "lon": -87.97,
   "zip": "",
   "city": "1 N Oakbrook Terrace",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of ping pong ball size hail at Oakbrook Terrace. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.84--87.96",
   "lat": 41.84,
   "lon": -87.96,
   "zip": "",
   "city": "Oak Brook",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of golf ball size hail in Oak Brook. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.92--88.12",
   "lat": 41.92,
   "lon": -88.12,
   "zip": "",
   "city": "1 ENE Carol Stream",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Corrects previous hail report from 1 ENE Carol Stream. Quarter size hail in Carol Stream. Location approximate.",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.92--88.12",
   "lat": 41.92,
   "lon": -88.12,
   "zip": "",
   "city": "1 ENE Carol Stream",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Quarter size hail in Carol Stream. Location approximate.",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.90--87.99",
   "lat": 41.9,
   "lon": -87.99,
   "zip": "",
   "city": "1 NW Villa Park",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of nickel to quarter size hail in Villa Park. Some melting occurred prior to measurement. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.80--87.99",
   "lat": 41.8,
   "lon": -87.99,
   "zip": "",
   "city": "1 NW Westmont",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of golf ball size hail in northeastern Downers Grove. Hail fell for 15 minute period. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.81--88.00",
   "lat": 41.81,
   "lon": -88,
   "zip": "",
   "city": "1 NE Downers Grove",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.80--87.97",
   "lat": 41.8,
   "lon": -87.97,
   "zip": "",
   "city": "1 NW Clarendon Hills",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Hen Egg (2.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.79--88.00",
   "lat": 41.79,
   "lon": -88,
   "zip": "",
   "city": "Downers Grove",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Measured hailstone of 2 inches in diameter. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.83--87.95",
   "lat": 41.83,
   "lon": -87.95,
   "zip": "",
   "city": "Oak Brook",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shared on social media showing a hailstone roughly two inches in diameter.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.90--87.94",
   "lat": 41.9,
   "lon": -87.94,
   "zip": "",
   "city": "Elmhurst",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.89--88.07",
   "lat": 41.89,
   "lon": -88.07,
   "zip": "",
   "city": "1 N Glen Ellyn",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N Glen Ellyn",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.91--88.08",
   "lat": 41.91,
   "lon": -88.08,
   "zip": "",
   "city": "Glendale Heights",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Glendale Heights",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.91--88.06",
   "lat": 41.91,
   "lon": -88.06,
   "zip": "",
   "city": "1 E Glendale Heights",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.83--88.09",
   "lat": 41.83,
   "lon": -88.09,
   "zip": "",
   "city": "2 NW Lisle",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.79--88.01",
   "lat": 41.79,
   "lon": -88.01,
   "zip": "",
   "city": "Downers Grove",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shared on social media of golf ball size hail.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-07-27-hail-41.80--87.99",
   "lat": 41.8,
   "lon": -87.99,
   "zip": "",
   "city": "1 WNW Westmont",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 WNW Westmont",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.5
  },
  {
   "id": "iem-lsr-2026-07-27-hail-42.24--88.11",
   "lat": 42.24,
   "lon": -88.11,
   "zip": "",
   "city": "2 SE Wauconda",
   "date": "2026-07-27",
   "county": "Lake",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-27-wind-42.11--88.28",
   "lat": 42.11,
   "lon": -88.28,
   "zip": "",
   "city": "1 N West Dundee",
   "date": "2026-07-27",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILCARPE8 reported 54 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-27-wind-42.07--88.14",
   "lat": 42.07,
   "lon": -88.14,
   "zip": "",
   "city": "1 SSE South Barrington",
   "date": "2026-07-27",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILHOFFM60 reported 55 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-27-wind-41.86--87.97",
   "lat": 41.86,
   "lon": -87.97,
   "zip": "",
   "city": "1 N Oakbrook Terrace",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 N Oakbrook Terrace",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-27-wind-41.97--87.93",
   "lat": 41.97,
   "lon": -87.93,
   "zip": "",
   "city": "1 NE Bensenville",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS site ORD Chicago Ohare Airport reported 62 mph peak gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-27-wind-41.97--87.93",
   "lat": 41.97,
   "lon": -87.93,
   "zip": "",
   "city": "1 NE Bensenville",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Updates previous tstm wnd gst report from 1 NE Bensenville. ASOS site ORD Chicago Ohare Airport reported 64 mph peak gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-27-tornado-41.89--88.07",
   "lat": 41.89,
   "lon": -88.07,
   "zip": "",
   "city": "1 N Glen Ellyn",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Concentrated tree damage on Stacy Court in North Glen Ellyn, including large trees snapped and/or uprooted, some onto homes and causing damage. This area lines up with tornado debris signature on KLOT radar. Time estimated via tORD radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-27-tornado-41.89--88.07",
   "lat": 41.89,
   "lon": -88.07,
   "zip": "",
   "city": "1 NNW Glen Ellyn",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Photo passed along of a tornado in Glen Ellyn, close to location of radar-indicated TDS.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-27-tornado-41.86--88.10",
   "lat": 41.86,
   "lon": -88.1,
   "zip": "",
   "city": "Wheaton",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Corrects previous tornado report from Wheaton. NWS survey confirms a brief EF-0 tornado started just south of Wheaton College. Tornado was on the ground for 2 minutes or less. Peak width of 100 yards and winds of 75 mph.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-27-tornado-41.79--88.02",
   "lat": 41.79,
   "lon": -88.02,
   "zip": "",
   "city": "Downers Grove",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "An NWS damage survey confirmed an EF-0 tornado with peak winds of 85 mph, path length of 2.1 miles, and maximum width of 100 yards impacted Downers Grove.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-DPA-2026-07-27-4349",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 56 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-ORD-2026-07-27-5805",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 62 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD)",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-ORD-2026-07-27-5869",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-07-27",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 64 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD)",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-04-wind-41.82--88.27",
   "lat": 41.82,
   "lon": -88.27,
   "zip": "",
   "city": "3 SE Batavia",
   "date": "2026-07-04",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILAUROR58 reported a 54 mph wind gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.79--88.62",
   "lat": 41.79,
   "lon": -88.62,
   "zip": "",
   "city": "2 NE Hinckley",
   "date": "2026-07-03",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured wind gust of 58.2 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.77--88.47",
   "lat": 41.77,
   "lon": -88.47,
   "zip": "",
   "city": "1 WNW Sugar Grove",
   "date": "2026-07-03",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured wind gust of 51.2 knots.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.81--88.35",
   "lat": 41.81,
   "lon": -88.35,
   "zip": "",
   "city": "1 W North Aurora",
   "date": "2026-07-03",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak measured wind gust of 60 mph with numerous tree branches larger than 6 inches in diameter downed.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.85--88.31",
   "lat": 41.85,
   "lon": -88.31,
   "zip": "",
   "city": "Batavia",
   "date": "2026-07-03",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Batavia",
   "sourceDetail": "NWS LOT — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.98--87.91",
   "lat": 41.98,
   "lon": -87.91,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-07-03",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind gust of 55 kt measured at runway sensor 27 left. Peak gust of 47 kt at ASOS.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.12--87.95",
   "lat": 42.12,
   "lon": -87.95,
   "zip": "",
   "city": "1 WSW Wheeling",
   "date": "2026-07-03",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station peak wind gust of 59.8 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.11--87.90",
   "lat": 42.11,
   "lon": -87.9,
   "zip": "",
   "city": "1 ENE Prospect Heights",
   "date": "2026-07-03",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind gust of 53 kt.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-41.70--88.21",
   "lat": 41.7,
   "lon": -88.21,
   "zip": "",
   "city": "6 SSW Naperville",
   "date": "2026-07-03",
   "county": "Will",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILNAPER85 reported 52 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DPA-2026-07-03",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-07-03",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PWK-2026-07-03",
   "lat": 42.1208,
   "lon": -87.9047,
   "zip": "",
   "city": "PALWAUKEE",
   "date": "2026-07-03",
   "county": "Cook",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "PALWAUKEE (PWK) recorded a 61 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — PALWAUKEE (PWK) [365d backfill 2026-08]",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2026-07-03",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-07-03",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 54 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-07-03",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-07-03",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 59 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-42.02--88.13",
   "lat": 42.02,
   "lon": -88.13,
   "zip": "",
   "city": "2 NNE Hanover Park",
   "date": "2026-07-02",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station measured wind gusts as storms passed over just east of Streamwood_ IL.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-41.98--87.90",
   "lat": 41.98,
   "lon": -87.9,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-07-02",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind gust of 53 mph measured at ORD.",
   "sourceDetail": "NWS LOT — Official NWS Obs via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-41.90--87.95",
   "lat": 41.9,
   "lon": -87.95,
   "zip": "",
   "city": "1 W Elmhurst",
   "date": "2026-07-02",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station measured wind gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-41.88--87.94",
   "lat": 41.88,
   "lon": -87.94,
   "zip": "",
   "city": "1 S Elmhurst",
   "date": "2026-07-02",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station measured wind gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-ORD-2026-07-02",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-07-02",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 53 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-28-wind-42.29--88.63",
   "lat": 42.29,
   "lon": -88.63,
   "zip": "",
   "city": "3 NNW Marengo",
   "date": "2026-06-28",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station measured a wind gust of 53.2 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-28-wind-42.29--88.63",
   "lat": 42.29,
   "lon": -88.63,
   "zip": "",
   "city": "3 NNW Marengo",
   "date": "2026-06-28",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station measured a wind gust of 60.4 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.18--88.41",
   "lat": 42.18,
   "lon": -88.41,
   "zip": "",
   "city": "1 NE Huntley",
   "date": "2026-06-24",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Huntley",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.18--88.39",
   "lat": 42.18,
   "lon": -88.39,
   "zip": "",
   "city": "2 E Huntley",
   "date": "2026-06-24",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of 1.5 inch hail near Huntley. Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.16--88.30",
   "lat": 42.16,
   "lon": -88.3,
   "zip": "",
   "city": "Algonquin",
   "date": "2026-06-24",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Multiple public reports of quarter size hail near Algonquin. Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.15--88.30",
   "lat": 42.15,
   "lon": -88.3,
   "zip": "",
   "city": "1 S Algonquin",
   "date": "2026-06-24",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.15--88.32",
   "lat": 42.15,
   "lon": -88.32,
   "zip": "",
   "city": "2 SW Algonquin",
   "date": "2026-06-24",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.16--88.34",
   "lat": 42.16,
   "lon": -88.34,
   "zip": "",
   "city": "1 SSW Lake in the Hills",
   "date": "2026-06-24",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "McHenry County EMA reports quarter size hail near Randall Road and Harnish Drive.",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-hail-42.15--88.27",
   "lat": 42.15,
   "lon": -88.27,
   "zip": "",
   "city": "2 SE Algonquin",
   "date": "2026-06-24",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of quarter size hail southeast of Algonquin. Relayed via mping.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-24-wind-42.11--88.28",
   "lat": 42.11,
   "lon": -88.28,
   "zip": "",
   "city": "1 N West Dundee",
   "date": "2026-06-24",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILCARPE8 reported 55 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-24-wind-41.98--88.15",
   "lat": 41.98,
   "lon": -88.15,
   "zip": "",
   "city": "1 S Hanover Park",
   "date": "2026-06-24",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILHANOVI2 measured a wind gust to 58 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-24-tornado-42.16--88.48",
   "lat": 42.16,
   "lon": -88.48,
   "zip": "",
   "city": "3 WSW Huntley",
   "date": "2026-06-24",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "McHenry County EMA reports roof damage to barn along Harmony Road near Brier Hill Road. Video shared to social media shows likely tornado with lofted debris in the vicinity. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-41.93--88.71",
   "lat": 41.93,
   "lon": -88.71,
   "zip": "",
   "city": "1 NW Cortland",
   "date": "2026-06-17",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at KDKB. Wind gust heard on dial in.",
   "sourceDetail": "NWS LOT — AWOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-42.02--88.72",
   "lat": 42.02,
   "lon": -88.72,
   "zip": "",
   "city": "3 NW Sycamore",
   "date": "2026-06-17",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at KILSYCAM31.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-41.99--87.86",
   "lat": 41.99,
   "lon": -87.86,
   "zip": "",
   "city": "1 NE Rosemont",
   "date": "2026-06-17",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station gusted to 50 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-41.98--87.90",
   "lat": 41.98,
   "lon": -87.9,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-06-17",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Infield wind sensor on runway 27 Left measured a peak wind of 53 mph (46 kt).",
   "sourceDetail": "NWS LOT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-42.00--88.30",
   "lat": 42,
   "lon": -88.3,
   "zip": "",
   "city": "1 WNW South Elgin",
   "date": "2026-06-17",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station gusted to 51.8 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-17-wind-41.82--88.27",
   "lat": 41.82,
   "lon": -88.27,
   "zip": "",
   "city": "3 ENE North Aurora",
   "date": "2026-06-17",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station gusted to 51.9 mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-17-tornado-42.32--88.06",
   "lat": 42.32,
   "lon": -88.06,
   "zip": "",
   "city": "2 SSW Grayslake",
   "date": "2026-06-17",
   "county": "Lake",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "A NWS storm survey determined that a brief EF0 tornado produced tree damage and sporadic roofing damage across the far northern portion of the Saddlebrook Farms subdivision near Grayslake.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-ORD-2026-06-17",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-06-17",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 51 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DKB-2026-06-17",
   "lat": 41.9338,
   "lon": -88.7057,
   "zip": "",
   "city": "DE KALB",
   "date": "2026-06-17",
   "county": "De Kalb",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "DE KALB (DKB) recorded a 51 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — DE KALB (DKB) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-11-wind-42.25--88.35",
   "lat": 42.25,
   "lon": -88.35,
   "zip": "",
   "city": "2 WNW Crystal Lake",
   "date": "2026-06-11",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WNW Crystal Lake",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-11-wind-41.76--88.17",
   "lat": 41.76,
   "lon": -88.17,
   "zip": "",
   "city": "2 SW Naperville",
   "date": "2026-06-11",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "60-70 mph winds estimated southwest of downtown Naperville.",
   "sourceDetail": "NWS LOT — NWS Employee via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-11-wind-41.77--88.47",
   "lat": 41.77,
   "lon": -88.47,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-06-11",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Aurora Airport ASOS ARR reported 56 mph gust. Wind gust coincident with 8.8 mb pressure fall within 1 hour.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-11-wind-41.82--88.27",
   "lat": 41.82,
   "lon": -88.27,
   "zip": "",
   "city": "3 SE Batavia",
   "date": "2026-06-11",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILAUROR58 reported 60 mph gust. 10.8 mb pressure fall over 90 minutes occurred coincident with wind gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-11-tornado-41.97--88.23",
   "lat": 41.97,
   "lon": -88.23,
   "zip": "",
   "city": "2 NE Wayne",
   "date": "2026-06-11",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "An NWS damage survey confirmed an EF-1 tornado with estimated peak winds of 100 MPH, path length of 3.0 miles, and maximum width of 400 yards impacted Bartlett, causing damage to several structures at a shopping center and numerous trees across multiple subdivisions.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-11-tornado-41.76--88.12",
   "lat": 41.76,
   "lon": -88.12,
   "zip": "",
   "city": "2 ESE Naperville",
   "date": "2026-06-11",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "NWS survey confirms a preliminary EF-0 tornado. Peak winds of 80 mph, width of 150 yards, and length of 1.3 miles.",
   "sourceDetail": "NWS LOT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-ARR-2026-06-11",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-06-11",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 56 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.25--88.51",
   "lat": 42.25,
   "lon": -88.51,
   "zip": "",
   "city": "2 NE Union",
   "date": "2026-06-10",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Trained spotter measured wind gust at Rt 176 and Franklinville Road east of Marengo. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-41.77--88.47",
   "lat": 41.77,
   "lon": -88.47,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-06-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Wind gust measured at KARR.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.11--88.38",
   "lat": 42.11,
   "lon": -88.38,
   "zip": "",
   "city": "Gilberts",
   "date": "2026-06-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak gust measured on personal weather station.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.15--88.26",
   "lat": 42.15,
   "lon": -88.26,
   "zip": "",
   "city": "2 N Carpentersville",
   "date": "2026-06-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Tree downed onto road. Another branch of another tree also downed onto the road. Time estimated from radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-41.95--88.17",
   "lat": 41.95,
   "lon": -88.17,
   "zip": "",
   "city": "3 S Bartlett",
   "date": "2026-06-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 S Bartlett",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-41.74--88.07",
   "lat": 41.74,
   "lon": -88.07,
   "zip": "",
   "city": "2 SW Woodridge",
   "date": "2026-06-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "60 to 65 mph estimated wind gusts. Time estimated by radar.",
   "sourceDetail": "NWS LOT — NWS Employee via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-41.74--88.10",
   "lat": 41.74,
   "lon": -88.1,
   "zip": "",
   "city": "3 NNW Bolingbrook",
   "date": "2026-06-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Numerous tree limbs of varying sizes downed in the general area. A one foot diameter tree branch downed on Lisson Road blocking southbound traffic. Estimated 60 to 65 mph winds as the storm was movin",
   "sourceDetail": "NWS LOT — NWS Employee via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-41.98--87.90",
   "lat": 41.98,
   "lon": -87.9,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-06-10",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind gust measured at KORD.",
   "sourceDetail": "NWS LOT — Official NWS Obs via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-ARR-2026-06-10",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-06-10",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 57 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2026-06-10",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-06-10",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 61 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PWK-2026-06-10",
   "lat": 42.1208,
   "lon": -87.9047,
   "zip": "",
   "city": "PALWAUKEE",
   "date": "2026-06-10",
   "county": "Cook",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "PALWAUKEE (PWK) recorded a 52 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — PALWAUKEE (PWK) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-hail-41.90--88.32",
   "lat": 41.9,
   "lon": -88.32,
   "zip": "",
   "city": "1 S St. Charles",
   "date": "2026-05-04",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Dime (0.75 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.02--88.72",
   "lat": 42.02,
   "lon": -88.72,
   "zip": "",
   "city": "3 NW Sycamore",
   "date": "2026-04-27",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILSYCAM31 reported 63 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.93--88.71",
   "lat": 41.93,
   "lon": -88.71,
   "zip": "",
   "city": "1 NW Cortland",
   "date": "2026-04-27",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dialed into KDKB AWOS. Sustained at 51 mph. Likely not a peak gust.",
   "sourceDetail": "NWS LOT — AWOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.18--88.70",
   "lat": 42.18,
   "lon": -88.7,
   "zip": "",
   "city": "5 ENE Herbert",
   "date": "2026-04-27",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Illinois DOT weather station on Harmony Road southwest of Marengo reported 52 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.77--88.48",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-04-27",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak wind so far at KARR ASOS.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.90--88.25",
   "lat": 41.9,
   "lon": -88.25,
   "zip": "",
   "city": "1 SSW DuPage Airport",
   "date": "2026-04-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "From the southeast.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.94--88.73",
   "lat": 41.94,
   "lon": -88.73,
   "zip": "",
   "city": "1 E DeKalb",
   "date": "2026-04-27",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Storm chaser private weather station neat airport in DeKalb. 54mph gust. Sustained was picked up at 37mph.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.96--87.92",
   "lat": 41.96,
   "lon": -87.92,
   "zip": "",
   "city": "1 ENE Bensenville",
   "date": "2026-04-27",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "At KORD. From the southeast.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.92--87.90",
   "lat": 41.92,
   "lon": -87.9,
   "zip": "",
   "city": "Northlake",
   "date": "2026-04-27",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Estimated 60 mph gusts. Fence was blown down.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DPA-2026-04-27",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-04-27",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 52 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DKB-2026-04-27",
   "lat": 41.9338,
   "lon": -88.7057,
   "zip": "",
   "city": "DE KALB",
   "date": "2026-04-27",
   "county": "De Kalb",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "DE KALB (DKB) recorded a 56 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — DE KALB (DKB) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-04-27",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-04-27",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 66 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2026-04-27",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-04-27",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 54 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-17-wind-42.20--88.73",
   "lat": 42.2,
   "lon": -88.73,
   "zip": "",
   "city": "4 S Garden Prairie",
   "date": "2026-04-17",
   "county": "Boone",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Private weather station KILGARDE2 recorded 61 mph gust.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-17-wind-42.18--88.69",
   "lat": 42.18,
   "lon": -88.69,
   "zip": "",
   "city": "5 ENE Herbert",
   "date": "2026-04-17",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "IL DOT station on Harmony Road west of Riley recorded 76 mph wind gust.",
   "sourceDetail": "NWS LOT — Dept of Highways via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-17-wind-41.95--88.17",
   "lat": 41.95,
   "lon": -88.17,
   "zip": "",
   "city": "3 S Bartlett",
   "date": "2026-04-17",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 S Bartlett",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DPA-2026-04-17",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-04-17",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 52 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-15-wind-41.91--88.25",
   "lat": 41.91,
   "lon": -88.25,
   "zip": "",
   "city": "DuPage Airport",
   "date": "2026-04-15",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near DuPage Airport",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DPA-2026-04-15",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-04-15",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 53 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-14-hail-42.25--88.72",
   "lat": 42.25,
   "lon": -88.72,
   "zip": "",
   "city": "Garden Prairie",
   "date": "2026-04-14",
   "county": "Boone",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "relayed social media.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-42.18--88.41",
   "lat": 42.18,
   "lon": -88.41,
   "zip": "",
   "city": "1 NE Huntley",
   "date": "2026-04-14",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Huntley",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.95--88.77",
   "lat": 41.95,
   "lon": -88.77,
   "zip": "",
   "city": "2 NW DeKalb",
   "date": "2026-04-14",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Pea to quarter size hail reported in DeKalb. Time estimated via radar.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.93--88.75",
   "lat": 41.93,
   "lon": -88.75,
   "zip": "",
   "city": "DeKalb",
   "date": "2026-04-14",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Picture shared of 1.0-1.25 inch hail in Dekalb. Time estimated via radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.95--88.74",
   "lat": 41.95,
   "lon": -88.74,
   "zip": "",
   "city": "1 NE DeKalb",
   "date": "2026-04-14",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of hail up to 1.25 inches in diameter.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.95--88.76",
   "lat": 41.95,
   "lon": -88.76,
   "zip": "",
   "city": "1 N DeKalb",
   "date": "2026-04-14",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N DeKalb",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.94--88.73",
   "lat": 41.94,
   "lon": -88.73,
   "zip": "",
   "city": "1 E DeKalb",
   "date": "2026-04-14",
   "county": "De Kalb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-42.09--87.93",
   "lat": 42.09,
   "lon": -87.93,
   "zip": "",
   "city": "1 SW Prospect Heights",
   "date": "2026-04-14",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-42.00--88.33",
   "lat": 42,
   "lon": -88.33,
   "zip": "",
   "city": "2 W South Elgin",
   "date": "2026-04-14",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 W South Elgin",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-42.00--88.11",
   "lat": 42,
   "lon": -88.11,
   "zip": "",
   "city": "2 SW Schaumburg",
   "date": "2026-04-14",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated from radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.95--88.16",
   "lat": 41.95,
   "lon": -88.16,
   "zip": "",
   "city": "3 NW Carol Stream",
   "date": "2026-04-14",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-04-14-hail-41.97--88.14",
   "lat": 41.97,
   "lon": -88.14,
   "zip": "",
   "city": "2 S Hanover Park",
   "date": "2026-04-14",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "asos-bf-ORD-2026-04-14",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-04-14",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-04-12",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-04-12",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 51 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-02-wind-42.25--88.61",
   "lat": 42.25,
   "lon": -88.61,
   "zip": "",
   "city": "Marengo",
   "date": "2026-04-02",
   "county": "McHenry",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Reports of 50-60 mph wind gusts in the Marengo area.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DPA-2026-04-02",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-04-02",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.79--88.26",
   "lat": 41.79,
   "lon": -88.26,
   "zip": "",
   "city": "4 NE Aurora",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated via radar.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.75--88.38",
   "lat": 41.75,
   "lon": -88.38,
   "zip": "",
   "city": "2 NW Montgomery",
   "date": "2026-03-30",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NW Montgomery",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.72--88.41",
   "lat": 41.72,
   "lon": -88.41,
   "zip": "",
   "city": "3 SE Sugar Grove",
   "date": "2026-03-30",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.75--88.13",
   "lat": 41.75,
   "lon": -88.13,
   "zip": "",
   "city": "2 SSE Naperville",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated via radar.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.90--88.32",
   "lat": 41.9,
   "lon": -88.32,
   "zip": "",
   "city": "1 S St. Charles",
   "date": "2026-03-30",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.91--88.21",
   "lat": 41.91,
   "lon": -88.21,
   "zip": "",
   "city": "2 N West Chicago",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Video shared on social media shows hail of quarter to half dollar sized hail near the DuPage Airport. Time estimated via radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.81--88.05",
   "lat": 41.81,
   "lon": -88.05,
   "zip": "",
   "city": "1 ENE Lisle",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shared via office service account showed hail ranging from 1 to 1.25 inches in diameter.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.82--88.02",
   "lat": 41.82,
   "lon": -88.02,
   "zip": "",
   "city": "2 NNW Downers Grove",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNW Downers Grove",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.82--87.95",
   "lat": 41.82,
   "lon": -87.95,
   "zip": "",
   "city": "1 S Oak Brook",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report relayed via EM. Time estimated from radar.",
   "sourceDetail": "NWS LOT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.82--87.96",
   "lat": 41.82,
   "lon": -87.96,
   "zip": "",
   "city": "1 SSW Oak Brook",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated via radar.",
   "sourceDetail": "NWS LOT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-lsr-2026-03-30-hail-41.84--87.97",
   "lat": 41.84,
   "lon": -87.97,
   "zip": "",
   "city": "1 W Oak Brook",
   "date": "2026-03-30",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Time estimated via radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.91--88.25",
   "lat": 41.91,
   "lon": -88.25,
   "zip": "",
   "city": "DuPage Airport",
   "date": "2026-03-13",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak Wind Gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.76--88.31",
   "lat": 41.76,
   "lon": -88.31,
   "zip": "",
   "city": "Aurora",
   "date": "2026-03-13",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak Wind Gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.76--88.31",
   "lat": 41.76,
   "lon": -88.31,
   "zip": "",
   "city": "Aurora Airport",
   "date": "2026-03-13",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak Wind Gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.11--87.90",
   "lat": 42.11,
   "lon": -87.9,
   "zip": "",
   "city": "2 ENE Prospect Heights",
   "date": "2026-03-13",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak Wind Gust at the Chicago Executive Airport.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.98--87.90",
   "lat": 41.98,
   "lon": -87.9,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-03-13",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Peak Wind Gust.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.95--88.17",
   "lat": 41.95,
   "lon": -88.17,
   "zip": "",
   "city": "3 S Bartlett",
   "date": "2026-03-13",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 S Bartlett",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.91--88.60",
   "lat": 41.91,
   "lon": -88.6,
   "zip": "",
   "city": "Maple Park",
   "date": "2026-03-13",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Personal weather station.",
   "sourceDetail": "NWS LOT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.95--88.17",
   "lat": 41.95,
   "lon": -88.17,
   "zip": "",
   "city": "3 S Bartlett",
   "date": "2026-03-13",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 S Bartlett",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-ARR-2026-03-13",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-03-13",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 60 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PWK-2026-03-13",
   "lat": 42.1208,
   "lon": -87.9047,
   "zip": "",
   "city": "PALWAUKEE",
   "date": "2026-03-13",
   "county": "Cook",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "PALWAUKEE (PWK) recorded a 60 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — PALWAUKEE (PWK) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DPA-2026-03-13",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-03-13",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 62 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2026-03-13",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-03-13",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 65 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 65,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-06C-2026-03-13",
   "lat": 41.9913,
   "lon": -88.105,
   "zip": "",
   "city": "Chicago - Schaumburg",
   "date": "2026-03-13",
   "county": "Cook",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago - Schaumburg (06C) recorded a 51 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago - Schaumburg (06C) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.76--88.02",
   "lat": 41.76,
   "lon": -88.02,
   "zip": "",
   "city": "1 E Woodridge",
   "date": "2026-03-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 E Woodridge",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.76--88.04",
   "lat": 41.76,
   "lon": -88.04,
   "zip": "",
   "city": "Woodridge",
   "date": "2026-03-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shared on social media showed hail approximately 1 inch in diameter.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.75--88.04",
   "lat": 41.75,
   "lon": -88.04,
   "zip": "",
   "city": "1 SE Woodridge",
   "date": "2026-03-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Relayed via mping. Time estimated by radar.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.76--88.02",
   "lat": 41.76,
   "lon": -88.02,
   "zip": "",
   "city": "1 E Woodridge",
   "date": "2026-03-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Public report of tennis ball size hail in southwest Downers Grove.",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.5
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.77--88.01",
   "lat": 41.77,
   "lon": -88.01,
   "zip": "",
   "city": "1 S Downers Grove",
   "date": "2026-03-10",
   "county": "Dupage",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo shows multiple large hail stones retrieved from near 63rd Street and Main Street in Downers Grove. Largest hail stone broke into 3 pieces during measurement_ with the largest piece 4 inches in",
   "sourceDetail": "NWS LOT — NWS Employee via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 4
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.74--88.50",
   "lat": 41.74,
   "lon": -88.5,
   "zip": "",
   "city": "3 SE Big Rock",
   "date": "2026-03-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.74--88.50",
   "lat": 41.74,
   "lon": -88.5,
   "zip": "",
   "city": "3 SE Big Rock",
   "date": "2026-03-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Half Dollar (1.25 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-03-10-hail-41.77--88.36",
   "lat": 41.77,
   "lon": -88.36,
   "zip": "",
   "city": "3 W Aurora",
   "date": "2026-03-10",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Report from mPING: Quarter (1.00 in.).",
   "sourceDetail": "NWS LOT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "asos-bf-DPA-2026-02-20",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-02-20",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 51 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-02-18",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-02-18",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 53 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-14-wind-41.77--88.48",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-01-14",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "AWOS station KARR 2 WNW Sugar Grove.",
   "sourceDetail": "NWS LOT — AWOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-01-14",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-01-14",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 56 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-41.77--88.48",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "2 WNW Sugar Grove",
   "date": "2026-01-09",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "AWOS station KARR 2 WNW Sugar Grove.",
   "sourceDetail": "NWS LOT — AWOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-41.98--87.90",
   "lat": 41.98,
   "lon": -87.9,
   "zip": "",
   "city": "Ohare Airport",
   "date": "2026-01-09",
   "county": "Cook",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "ASOS station KORD Chicago OHare.",
   "sourceDetail": "NWS LOT — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2026-01-09",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2026-01-09",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 55 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2026-01-09",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2026-01-09",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 54 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DPA-2026-01-09",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2026-01-09",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DPA-2025-12-29",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2025-12-29",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 55 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2025-12-29",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2025-12-29",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 52 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2025-12-29",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2025-12-29",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 59 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2025-12-28",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2025-12-28",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 52 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-41.85--88.31",
   "lat": 41.85,
   "lon": -88.31,
   "zip": "",
   "city": "Batavia",
   "date": "2025-11-26",
   "county": "Kane",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CO-OP Observer station BATI2 Batavia.",
   "sourceDetail": "NWS LOT — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-DPA-2025-11-26",
   "lat": 41.9078,
   "lon": -88.2486,
   "zip": "",
   "city": "CHICAGO/DUPAGE",
   "date": "2025-11-26",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/DUPAGE (DPA) recorded a 53 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/DUPAGE (DPA) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ORD-2025-11-26",
   "lat": 41.9602,
   "lon": -87.9316,
   "zip": "",
   "city": "Chicago OHare",
   "date": "2025-11-26",
   "county": "Dupage",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Chicago OHare (ORD) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — Chicago OHare (ORD) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARR-2025-11-26",
   "lat": 41.77,
   "lon": -88.48,
   "zip": "",
   "city": "CHICAGO/AURORA",
   "date": "2025-11-26",
   "county": "Kane",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "CHICAGO/AURORA (ARR) recorded a 50 mph gust.",
   "sourceDetail": "IL_ASOS automated observation — CHICAGO/AURORA (ARR) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  }
 ]
}