{
 "dataset": "MI storm events — 12-month window, full state",
 "license": "https://www.stormauditor.com/data-license",
 "provenance": "Consolidated 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-09-07T04:55:16.164+00:00",
 "window_days": 365,
 "schema_version": "2.0.0",
 "event_count": 5139,
 "fields": {
  "id": "stable event identifier (source-derived)",
  "date": "event date (YYYY-MM-DD, local storm day)",
  "county": "county or county-equivalent (may be blank)",
  "city": "place name from the source record (LSR names may carry a distance/direction prefix)",
  "zip": "ZIP code when the source provides one (may be blank)",
  "eventType": "hazard tag: wind | hail | tornado | flood | lightning",
  "severity": "StormAuditor severity bucket (low|moderate|high|severe)",
  "evidenceLevel": "evidence level of the source record (warning|observed|...)",
  "confidence": "StormAuditor confidence score for the record (0-1, may be absent)",
  "windSpeedMph": "reported/estimated wind gust, mph (absent if n/a)",
  "hailSizeInches": "reported/estimated hail size, inches (absent if n/a)",
  "tornadoScale": "EF-scale rating when the source provides one (absent if n/a)",
  "damageTypes": "damage tags from the source narrative (may be absent)",
  "description": "source narrative excerpt (may be absent)",
  "source": "originating public record (NWS warning, LSR, NCEI, ...)",
  "sourceDetail": "issuing office / product detail for the source (may be absent)",
  "originStation": "reporting station identifier when applicable (may be absent)",
  "warningProductKey": "NWS warning product key for warning-derived rows (may be absent)",
  "lat": "event latitude (WGS84, may be blank)",
  "lon": "event longitude (WGS84, may be blank)",
  "rawWindSpeedMph": "source-reported wind value before display screening, mph (may be absent)",
  "windSpeedDisclaimer": "set when the wind value is a warning-projected figure rather than a measurement (may be absent)"
 },
 "events": [
  {
   "id": "nws-alert-b9f358f5e1d904b8.001-Branch-wind",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-05",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Branch. Severe Thunderstorm Warning issued September 5 at 1:11AM EDT until September 5 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-299"
  },
  {
   "id": "iem-ww-IWX-SV-W-299-Branch-hail-2026-09-05",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-05",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Branch on 2026-09-05. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-299"
  },
  {
   "id": "nws-alert-b9f358f5e1d904b8.001-Hillsdal-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-09-05",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Hillsdale. Severe Thunderstorm Warning issued September 5 at 1:11AM EDT until September 5 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-299"
  },
  {
   "id": "iem-ww-IWX-SV-W-299-Hillsdale-hail-2026-09-05",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-09-05",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Hillsdale on 2026-09-05. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-299"
  },
  {
   "id": "nws-alert-cfc1613f1df18608.001-Hillsdal-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-09-05",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Hillsdale. Severe Thunderstorm Warning issued September 5 at 1:42AM EDT until September 5 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-298"
  },
  {
   "id": "iem-ww-IWX-SV-W-298-Hillsdale-hail-2026-09-05",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-09-05",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Hillsdale on 2026-09-05. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-298"
  },
  {
   "id": "iem-ww-IWX-SV-W-300-Branch-wind-2026-09-05",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-05",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Branch on 2026-09-05. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-300"
  },
  {
   "id": "iem-ww-IWX-SV-W-300-Branch-hail-2026-09-05",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-05",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Branch on 2026-09-05. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-300"
  },
  {
   "id": "iem-ww-IWX-SV-W-300-St. Joseph-wind-2026-09-05",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-09-05",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for St. Joseph on 2026-09-05. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-300"
  },
  {
   "id": "iem-ww-IWX-SV-W-300-St. Joseph-hail-2026-09-05",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-09-05",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for St. Joseph on 2026-09-05. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-300"
  },
  {
   "id": "nws-alert-3e8621da7d3f93d0.001-Kalamazo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-09-05",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Kalamazoo. Severe Thunderstorm Warning issued September 5 at 1:57AM EDT until September 5 at 2:45AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-131"
  },
  {
   "id": "iem-ww-GRR-SV-W-131-Kalamazoo-hail-2026-09-05",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-09-05",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Kalamazoo on 2026-09-05. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-131"
  },
  {
   "id": "nws-alert-3e8621da7d3f93d0.001-Van Bure-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-05",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Van Buren. Severe Thunderstorm Warning issued September 5 at 1:57AM EDT until September 5 at 2:45AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-131"
  },
  {
   "id": "iem-ww-GRR-SV-W-131-Van Buren-hail-2026-09-05",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-05",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Van Buren on 2026-09-05. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-131"
  },
  {
   "id": "sps-2026-09-05-kalamazoo-hail",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-09-05",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-05-vanburen-hail",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-05",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-05-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-09-05",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-05-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-05",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-faee94e4ca5f7890.001-Eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-04",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Severe Thunderstorm Warning issued September 4 at 8:24AM EDT until September 4 at 9:15AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-130"
  },
  {
   "id": "iem-ww-GRR-SV-W-130-Eaton-hail-2026-09-04",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-04",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Eaton on 2026-09-04. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-130"
  },
  {
   "id": "sps-2026-09-04-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-04",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-04",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-kalamazoo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-09-04",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-04",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-04",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-09-04",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-09-04",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-jackson-hail",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-04",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Jackson — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-ingham-hail",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-04",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 63,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Ingham — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-barry-hail",
   "zip": "",
   "city": "Barry",
   "date": "2026-09-04",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-eaton-hail",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-04",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Eaton — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-calhoun-hail",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-04",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-ionia-hail",
   "zip": "",
   "city": "Ionia",
   "date": "2026-09-04",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Ionia — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-clinton-hail",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-04",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-montcalm-hail",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-09-04",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-kent-hail",
   "zip": "",
   "city": "Kent",
   "date": "2026-09-04",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-04",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-09-04",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Lenawee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-09-04",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Monroe — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-muskegon-hail",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-09-04",
   "county": "Muskegon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Muskegon — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-ottawa-hail",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-09-04",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-allegan-hail",
   "zip": "",
   "city": "Allegan",
   "date": "2026-09-04",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-04-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-09-04",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Marquette MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-139f5d3f09143364.001-Wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wayne. Severe Thunderstorm Warning issued September 3 at 12:32AM EDT until September 3 at 1:00AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-111"
  },
  {
   "id": "iem-ww-DTX-SV-W-111-Wayne-hail-2026-09-03",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Wayne on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-111"
  },
  {
   "id": "nws-alert-5ec1a049d3611420.001-Macomb-flood",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning for Macomb. Flood Warning issued September 3 at 12:25AM EDT until September 3 at 5:30AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Warning",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-W-1"
  },
  {
   "id": "nws-alert-5ec1a049d3611420.001-Oakland-flood",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning for Oakland. Flood Warning issued September 3 at 12:25AM EDT until September 3 at 5:30AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Warning",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-W-1"
  },
  {
   "id": "nws-alert-5ec1a049d3611420.001-Wayne-flood",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning for Wayne. Flood Warning issued September 3 at 12:25AM EDT until September 3 at 5:30AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Warning",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-W-1"
  },
  {
   "id": "nws-alert-b6dd7497486b52a1.001-Macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Macomb. Severe Thunderstorm Warning issued September 3 at 2:45AM EDT until September 3 at 3:30AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-112"
  },
  {
   "id": "iem-ww-DTX-SV-W-112-Macomb-hail-2026-09-03",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Macomb on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-112"
  },
  {
   "id": "nws-alert-b6dd7497486b52a1.001-Wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wayne. Severe Thunderstorm Warning issued September 3 at 2:45AM EDT until September 3 at 3:30AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-112"
  },
  {
   "id": "iem-ww-DTX-SV-W-112-Wayne-hail-2026-09-03",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Wayne on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-112"
  },
  {
   "id": "nws-alert-f41dd09ee923b5b4.001-Barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-09-03",
   "county": "Barry",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Barry. Severe Thunderstorm Warning issued September 3 at 8:32AM EDT until September 3 at 9:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-122"
  },
  {
   "id": "iem-ww-GRR-SV-W-122-Barry-hail-2026-09-03",
   "zip": "",
   "city": "Barry",
   "date": "2026-09-03",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Barry on 2026-09-03. Storm tag hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-122"
  },
  {
   "id": "nws-alert-f41dd09ee923b5b4.001-Eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Severe Thunderstorm Warning issued September 3 at 8:32AM EDT until September 3 at 9:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-122"
  },
  {
   "id": "iem-ww-GRR-SV-W-122-Eaton-hail-2026-09-03",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Eaton on 2026-09-03. Storm tag hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-122"
  },
  {
   "id": "iem-lsr-2026-09-03-hail-42.38--84.75",
   "lat": 42.38,
   "lon": -84.75,
   "zip": "",
   "city": "2 W Springport",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Small 1-2 inch branches also down. Time estimated from radar.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-ww-DTX-SV-W-115-Oakland-wind-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-115"
  },
  {
   "id": "iem-ww-DTX-SV-W-115-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-115"
  },
  {
   "id": "nws-alert-34689abbd4938a92.001-Oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Oakland. Severe Thunderstorm Warning issued September 3 at 12:12PM EDT until September 3 at 1:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-117"
  },
  {
   "id": "iem-ww-DTX-SV-W-117-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-117"
  },
  {
   "id": "nws-alert-a712afc679d222bc.001-Eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Severe Thunderstorm Warning issued September 3 at 9:35AM EDT until September 3 at 10:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "iem-ww-GRR-SV-W-123-Eaton-hail-2026-09-03",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Eaton on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "nws-alert-e7549e7c333f0a00.002-Clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Clinton. Severe Thunderstorm Warning issued September 3 at 10:02AM EDT until September 3 at 10:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "iem-ww-GRR-SV-W-123-Clinton-hail-2026-09-03",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Clinton on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "nws-alert-e7549e7c333f0a00.002-Ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Ingham. Severe Thunderstorm Warning issued September 3 at 10:02AM EDT until September 3 at 10:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "iem-ww-GRR-SV-W-123-Ingham-hail-2026-09-03",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Ingham on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-123"
  },
  {
   "id": "iem-ww-DTX-SV-W-113-Oakland-wind-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "iem-ww-DTX-SV-W-113-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "nws-alert-6e042f39e0012ea7.001-Shiawass-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Shiawassee. Severe Thunderstorm Warning issued September 3 at 10:39AM EDT until September 3 at 11:45AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "iem-ww-DTX-SV-W-113-Shiawassee-hail-2026-09-03",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Shiawassee on 2026-09-03. Storm tag hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "nws-alert-840f719073b27a1f.002-Genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Genesee. Severe Thunderstorm Warning issued September 3 at 10:51AM EDT until September 3 at 11:45AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "iem-ww-DTX-SV-W-113-Genesee-hail-2026-09-03",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-03. Storm tag hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-113"
  },
  {
   "id": "nws-alert-e8ec805fb3d75596.001-Livingst-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Livingston. Severe Thunderstorm Warning issued September 3 at 10:50AM EDT until September 3 at 11:45AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "iem-ww-DTX-SV-W-114-Livingston-hail-2026-09-03",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Livingston on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "nws-alert-e8ec805fb3d75596.001-Wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wayne. Severe Thunderstorm Warning issued September 3 at 10:50AM EDT until September 3 at 11:45AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "iem-ww-DTX-SV-W-114-Wayne-hail-2026-09-03",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Wayne on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "iem-ww-DTX-SV-W-114-Oakland-wind-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "iem-ww-DTX-SV-W-114-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-114"
  },
  {
   "id": "iem-ww-DTX-SV-W-116-Macomb-wind-2026-09-03",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Macomb on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-116"
  },
  {
   "id": "iem-ww-DTX-SV-W-116-Macomb-hail-2026-09-03",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Macomb on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-116"
  },
  {
   "id": "iem-ww-DTX-SV-W-116-St. Clair-wind-2026-09-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for St. Clair on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-116"
  },
  {
   "id": "iem-ww-DTX-SV-W-116-St. Clair-hail-2026-09-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for St. Clair on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-116"
  },
  {
   "id": "iem-lsr-2026-09-03-hail-42.75--84.43",
   "lat": 42.75,
   "lon": -84.43,
   "zip": "",
   "city": "2 W Haslett",
   "date": "2026-09-03",
   "county": "Ingham",
   "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 GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "asos-LAN-2026-09-03-267085",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN)",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-LAN-2026-09-03-267227",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN)",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-LAN-2026-09-03-267233",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-09-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-ADG-2026-09-03-267495",
   "lat": 41.8677,
   "lon": -84.0773,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-09-03",
   "county": "Fulton",
   "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": "ADRIAN (ADG) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ADRIAN (ADG)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-GRR-SV-W-126-Jackson-wind-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-126"
  },
  {
   "id": "iem-ww-GRR-SV-W-126-Jackson-hail-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-126"
  },
  {
   "id": "iem-ww-GRR-SV-W-126-Calhoun-wind-2026-09-03",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Calhoun on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-126"
  },
  {
   "id": "iem-ww-GRR-SV-W-126-Calhoun-hail-2026-09-03",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Calhoun on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-126"
  },
  {
   "id": "iem-ww-DTX-SV-W-120-Shiawassee-wind-2026-09-03",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Shiawassee on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-120"
  },
  {
   "id": "iem-ww-DTX-SV-W-120-Shiawassee-hail-2026-09-03",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Shiawassee on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-120"
  },
  {
   "id": "nws-alert-32eda86d6e037fcc.001-Calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Calhoun. Severe Thunderstorm Warning issued September 3 at 3:16PM EDT until September 3 at 3:45PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-129"
  },
  {
   "id": "iem-ww-GRR-SV-W-129-Calhoun-hail-2026-09-03",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Calhoun on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-129"
  },
  {
   "id": "iem-ww-GRR-SV-W-129-Jackson-wind-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-129"
  },
  {
   "id": "iem-ww-GRR-SV-W-129-Jackson-hail-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-129"
  },
  {
   "id": "nws-alert-84fd0b0e1956d685.001-St. Jose-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-09-03",
   "county": "St. Joseph",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for St. Joseph. Severe Thunderstorm Warning issued September 3 at 3:14PM EDT until September 3 at 4:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-293"
  },
  {
   "id": "iem-ww-IWX-SV-W-293-St. Joseph-hail-2026-09-03",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-09-03",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for St. Joseph on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-293"
  },
  {
   "id": "nws-alert-6640dac4ef4cde41.002-Branch-wind",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-03",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Branch. Severe Thunderstorm Warning issued September 3 at 3:23PM EDT until September 3 at 4:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-293"
  },
  {
   "id": "iem-ww-IWX-SV-W-293-Branch-hail-2026-09-03",
   "zip": "",
   "city": "Branch",
   "date": "2026-09-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX for Branch on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-293"
  },
  {
   "id": "nws-alert-7ec87840015c6967.001-Washtena-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-03",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Washtenaw. Severe Thunderstorm Warning issued September 3 at 4:06PM EDT until September 3 at 4:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-126"
  },
  {
   "id": "iem-ww-DTX-SV-W-126-Washtenaw-hail-2026-09-03",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-03",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Washtenaw on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-126"
  },
  {
   "id": "iem-ww-DTX-SV-W-119-Genesee-wind-2026-09-03",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-119"
  },
  {
   "id": "iem-ww-DTX-SV-W-119-Genesee-hail-2026-09-03",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-119"
  },
  {
   "id": "nws-alert-a72d33f23d20fd4b.001-Gratiot-wind",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Gratiot. Severe Thunderstorm Warning issued September 3 at 2:14PM EDT until September 3 at 3:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "iem-ww-GRR-SV-W-125-Gratiot-hail-2026-09-03",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Gratiot on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "iem-ww-GRR-SV-W-125-Clinton-wind-2026-09-03",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Clinton on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "iem-ww-GRR-SV-W-125-Clinton-hail-2026-09-03",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Clinton on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-125"
  },
  {
   "id": "iem-ww-DTX-SV-W-125-Oakland-wind-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-125"
  },
  {
   "id": "iem-ww-DTX-SV-W-125-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-125"
  },
  {
   "id": "iem-ww-GRR-SV-W-128-Jackson-wind-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-128"
  },
  {
   "id": "iem-ww-GRR-SV-W-128-Jackson-hail-2026-09-03",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Jackson on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-128"
  },
  {
   "id": "nws-alert-872d2c9b6ff1c355.001-Isabella-wind",
   "zip": "",
   "city": "Isabella",
   "date": "2026-09-03",
   "county": "Isabella",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Isabella. Severe Thunderstorm Warning issued September 3 at 1:31PM EDT until September 3 at 2:15PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-124"
  },
  {
   "id": "iem-ww-GRR-SV-W-124-Isabella-hail-2026-09-03",
   "zip": "",
   "city": "Isabella",
   "date": "2026-09-03",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Isabella on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-124"
  },
  {
   "id": "iem-ww-GRR-SV-W-124-Gratiot-wind-2026-09-03",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Gratiot on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-124"
  },
  {
   "id": "iem-ww-GRR-SV-W-124-Gratiot-hail-2026-09-03",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Gratiot on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-124"
  },
  {
   "id": "nws-alert-4e63500521c4042b.001-Saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-03",
   "county": "Saginaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Saginaw. Severe Thunderstorm Warning issued September 3 at 2:41PM EDT until September 3 at 3:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-122"
  },
  {
   "id": "iem-ww-DTX-SV-W-122-Saginaw-hail-2026-09-03",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-03",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Saginaw on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-122"
  },
  {
   "id": "nws-alert-cdcd5b1194f0d04b.002-Tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-03",
   "county": "Tuscola",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Tuscola. Severe Thunderstorm Warning issued September 3 at 2:49PM EDT until September 3 at 3:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-122"
  },
  {
   "id": "iem-ww-DTX-SV-W-122-Tuscola-hail-2026-09-03",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-03",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-122"
  },
  {
   "id": "iem-ww-DTX-SV-W-123-Oakland-wind-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "iem-ww-DTX-SV-W-123-Oakland-hail-2026-09-03",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "nws-alert-16b130ea081165f4.001-Genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Genesee. Severe Thunderstorm Warning issued September 3 at 3:15PM EDT until September 3 at 3:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "iem-ww-DTX-SV-W-123-Genesee-hail-2026-09-03",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "nws-alert-16b130ea081165f4.001-Livingst-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Livingston. Severe Thunderstorm Warning issued September 3 at 3:15PM EDT until September 3 at 3:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "iem-ww-DTX-SV-W-123-Livingston-hail-2026-09-03",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Livingston on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-123"
  },
  {
   "id": "iem-ww-GRR-SV-W-127-Ingham-wind-2026-09-03",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Ingham on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "iem-ww-GRR-SV-W-127-Ingham-hail-2026-09-03",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Ingham on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "iem-ww-GRR-SV-W-127-Clinton-wind-2026-09-03",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Clinton on 2026-09-03. Storm tag wind: 70 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "iem-ww-GRR-SV-W-127-Clinton-hail-2026-09-03",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Clinton on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "nws-alert-6d0f7d88cdf30c63.001-Eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Eaton. Severe Thunderstorm Warning issued September 3 at 2:46PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "iem-ww-GRR-SV-W-127-Eaton-hail-2026-09-03",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Eaton on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-127"
  },
  {
   "id": "iem-ww-DTX-SV-W-121-Lapeer-wind-2026-09-03",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-03",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Lapeer on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-121"
  },
  {
   "id": "iem-ww-DTX-SV-W-121-Lapeer-hail-2026-09-03",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-03",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Lapeer on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-121"
  },
  {
   "id": "iem-ww-DTX-SV-W-118-Saginaw-wind-2026-09-03",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-03",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Saginaw on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-118"
  },
  {
   "id": "iem-ww-DTX-SV-W-118-Saginaw-hail-2026-09-03",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-03",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Saginaw on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-118"
  },
  {
   "id": "nws-alert-70a619efb5ec0b05.001-Midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-09-03",
   "county": "Midland",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Midland. Severe Thunderstorm Warning issued September 3 at 1:43PM EDT until September 3 at 2:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-118"
  },
  {
   "id": "iem-ww-DTX-SV-W-118-Midland-hail-2026-09-03",
   "zip": "",
   "city": "Midland",
   "date": "2026-09-03",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Midland on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-118"
  },
  {
   "id": "nws-alert-52d466b0f3bddd2f.001-Wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wayne. Severe Thunderstorm Warning issued September 3 at 3:44PM EDT until September 3 at 4:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-127"
  },
  {
   "id": "iem-ww-DTX-SV-W-127-Wayne-hail-2026-09-03",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Wayne on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-127"
  },
  {
   "id": "nws-alert-6dac0c073b21814a.001-Monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-09-03",
   "county": "Monroe",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Monroe. Severe Thunderstorm Warning issued September 3 at 4:02PM EDT until September 3 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-128"
  },
  {
   "id": "iem-ww-DTX-SV-W-128-Monroe-hail-2026-09-03",
   "zip": "",
   "city": "Monroe",
   "date": "2026-09-03",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Monroe on 2026-09-03. Storm tag hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-128"
  },
  {
   "id": "iem-ww-DTX-SV-W-124-Sanilac-wind-2026-09-03",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-03",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Sanilac on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-124"
  },
  {
   "id": "iem-ww-DTX-SV-W-124-Sanilac-hail-2026-09-03",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-03",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Sanilac on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-124"
  },
  {
   "id": "iem-ww-DTX-SV-W-124-St. Clair-wind-2026-09-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for St. Clair on 2026-09-03. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-124"
  },
  {
   "id": "iem-ww-DTX-SV-W-124-St. Clair-hail-2026-09-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for St. Clair on 2026-09-03. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-124"
  },
  {
   "id": "nws-alert-4c68c6f209c0ed6a.001-Washtena-tornado",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-03",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Washtenaw (observed tornado). Tornado Warning issued September 3 at 3:43PM EDT until September 3 at 4:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-21"
  },
  {
   "id": "nws-alert-13c5a76cf58d284c.001-Oakland-tornado",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Oakland (observed tornado). Tornado Warning issued September 3 at 4:12PM EDT until September 3 at 4:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-22"
  },
  {
   "id": "nws-alert-6c45a96274ab99e6.001-Gratiot-tornado",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-03",
   "county": "Gratiot",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Gratiot (observed tornado). Tornado Warning issued September 3 at 1:47PM EDT until September 3 at 2:15PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "GRR-TO-W-22"
  },
  {
   "id": "nws-alert-e9eca8dc8a12c9b3.001-Livingst-tornado",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Livingston (observed tornado). Tornado Warning issued September 3 at 3:44PM EDT until September 3 at 3:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-20"
  },
  {
   "id": "nws-alert-259a178d6d916483.001-Lenawee-tornado",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-09-03",
   "county": "Lenawee",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Lenawee (observed tornado). Tornado Warning issued September 3 at 4:01PM EDT until September 3 at 4:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-24"
  },
  {
   "id": "nws-alert-1b9ed4c821812b2f.001-Macomb-tornado",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Macomb (observed tornado). Tornado Warning issued September 3 at 4:00PM EDT until September 3 at 4:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-25"
  },
  {
   "id": "nws-alert-a84003096edfe3a8.001-Ingham-tornado",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Ingham (observed tornado). Tornado Warning issued September 3 at 3:06PM EDT until September 3 at 3:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "GRR-TO-W-23"
  },
  {
   "id": "nws-alert-ef157465f70c63ae.001-Midland-tornado",
   "zip": "",
   "city": "Midland",
   "date": "2026-09-03",
   "county": "Midland",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Midland (observed tornado). Tornado Warning issued September 3 at 1:48PM EDT until September 3 at 2:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-19"
  },
  {
   "id": "nws-alert-423d26fdea94d1c5.001-Saginaw-tornado",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-03",
   "county": "Saginaw",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Saginaw (observed tornado). Tornado Warning issued September 3 at 2:24PM EDT until September 3 at 2:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-19"
  },
  {
   "id": "nws-alert-ac652c0c9f77eb88.001-Wayne-tornado",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Wayne (observed tornado). Tornado Warning issued September 3 at 4:08PM EDT until September 3 at 4:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-23"
  },
  {
   "id": "nws-alert-b34d6b2d77d14d71.001-Monroe-tornado",
   "zip": "",
   "city": "Monroe",
   "date": "2026-09-03",
   "county": "Monroe",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Monroe (observed tornado). Tornado Warning issued September 3 at 4:12PM EDT until September 3 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-26"
  },
  {
   "id": "spc-2026-09-03-hail-44.30-2",
   "lat": 44.3,
   "lon": -86.02,
   "zip": "",
   "city": "Brethren",
   "date": "2026-09-03",
   "county": "Manistee",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Brethren",
   "sourceDetail": "SPC filtered reports — 2026-09-03",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "spc-2026-09-03-wind-42.53-41",
   "lat": 42.53,
   "lon": -83.78,
   "zip": "",
   "city": "Brighton",
   "date": "2026-09-03",
   "county": "Livingston",
   "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 Brighton",
   "sourceDetail": "SPC filtered reports — 2026-09-03",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-09-03-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "Detroit Metro Intl Airp",
   "date": "2026-09-03",
   "county": "Wayne",
   "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 Detroit Metro Intl Airp",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-VLL-2026-09-03-267907",
   "lat": 42.5429,
   "lon": -83.1779,
   "zip": "",
   "city": "Troy",
   "date": "2026-09-03",
   "county": "Oakland",
   "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": "Troy (VLL) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Troy (VLL)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-09-03-torn-42.24-1",
   "lat": 42.24,
   "lon": -83.18,
   "zip": "",
   "city": "Lincoln Park",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.93,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "tornado reported near Lincoln Park",
   "sourceDetail": "SPC filtered reports — 2026-09-03",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-09-03-torn-42.37-2",
   "lat": 42.37,
   "lon": -83.03,
   "zip": "",
   "city": "2 NE Comerica Park",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.93,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "tornado reported near 2 NE Comerica Park",
   "sourceDetail": "SPC filtered reports — 2026-09-03",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-09-03-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-03",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-03",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Oakland — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-03",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Macomb — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-03",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Wayne — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ingham — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-kent-hail",
   "zip": "",
   "city": "Kent",
   "date": "2026-09-03",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-allegan-hail",
   "zip": "",
   "city": "Allegan",
   "date": "2026-09-03",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-barry-hail",
   "zip": "",
   "city": "Barry",
   "date": "2026-09-03",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Barry — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-vanburen-hail",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-09-03",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-kalamazoo-hail",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-09-03",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-eaton-hail",
   "zip": "",
   "city": "Eaton",
   "date": "2026-09-03",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Eaton — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-calhoun-hail",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-09-03",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-jackson-hail",
   "zip": "",
   "city": "Jackson",
   "date": "2026-09-03",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Jackson — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-lake-wind",
   "zip": "",
   "city": "Lake",
   "date": "2026-09-03",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-osceola-wind",
   "zip": "",
   "city": "Osceola",
   "date": "2026-09-03",
   "county": "Osceola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Osceola — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-09-03",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Newaygo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-mecosta-wind",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-09-03",
   "county": "Mecosta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mecosta — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-ingham-hail",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-03",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Ingham — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-03",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-03",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-03",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Genesee — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-03",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-ionia-hail",
   "zip": "",
   "city": "Ionia",
   "date": "2026-09-03",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-clinton-hail",
   "zip": "",
   "city": "Clinton",
   "date": "2026-09-03",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-mason-hail",
   "zip": "",
   "city": "Mason",
   "date": "2026-09-03",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-lake-hail",
   "zip": "",
   "city": "Lake",
   "date": "2026-09-03",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-osceola-hail",
   "zip": "",
   "city": "Osceola",
   "date": "2026-09-03",
   "county": "Osceola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Osceola — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-clare-hail",
   "zip": "",
   "city": "Clare",
   "date": "2026-09-03",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clare — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-mecosta-hail",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-09-03",
   "county": "Mecosta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mecosta — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-09-03",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-grandtrave-hail",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-09-03",
   "county": "Grand Traverse",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Grand Traverse — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-kalkaska-hail",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-09-03",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-03-isabella-wind",
   "zip": "",
   "city": "Isabella",
   "date": "2026-09-03",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-8e31a905b55cb0cd.001-Genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-02",
   "county": "Genesee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Genesee. Severe Thunderstorm Warning issued September 2 at 6:17AM EDT until September 2 at 7:00AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-103"
  },
  {
   "id": "iem-ww-DTX-SV-W-103-Genesee-hail-2026-09-02",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-02",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-103"
  },
  {
   "id": "iem-ww-DTX-SV-W-105-Tuscola-wind-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "iem-ww-DTX-SV-W-105-Tuscola-hail-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "nws-alert-11cc7301b15d1038.001-Saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-02",
   "county": "Saginaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Saginaw. Severe Thunderstorm Warning issued September 2 at 5:36PM EDT until September 2 at 6:15PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "iem-ww-DTX-SV-W-105-Saginaw-hail-2026-09-02",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-02",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Saginaw on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "iem-ww-DTX-SV-W-105-Genesee-wind-2026-09-02",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-02",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "iem-ww-DTX-SV-W-105-Genesee-hail-2026-09-02",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-02",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Genesee on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-105"
  },
  {
   "id": "nws-alert-2a648901bbacae09.001-Lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-02",
   "county": "Lapeer",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Lapeer. Severe Thunderstorm Warning issued September 2 at 6:04PM EDT until September 2 at 7:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "iem-ww-DTX-SV-W-106-Lapeer-hail-2026-09-02",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-02",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Lapeer on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "nws-alert-2a648901bbacae09.001-Sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Sanilac. Severe Thunderstorm Warning issued September 2 at 6:04PM EDT until September 2 at 7:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "iem-ww-DTX-SV-W-106-Sanilac-hail-2026-09-02",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Sanilac on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "iem-ww-DTX-SV-W-106-Tuscola-wind-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "iem-ww-DTX-SV-W-106-Tuscola-hail-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-106"
  },
  {
   "id": "iem-ww-DTX-SV-W-104-Tuscola-wind-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "iem-ww-DTX-SV-W-104-Tuscola-hail-2026-09-02",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Tuscola on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "nws-alert-7e21e3774876d677.002-Huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-09-02",
   "county": "Huron",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Huron. Severe Thunderstorm Warning issued September 2 at 4:00PM EDT until September 2 at 4:30PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "iem-ww-DTX-SV-W-104-Huron-hail-2026-09-02",
   "zip": "",
   "city": "Huron",
   "date": "2026-09-02",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Huron on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "iem-ww-DTX-SV-W-104-Sanilac-wind-2026-09-02",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Sanilac on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "iem-ww-DTX-SV-W-104-Sanilac-hail-2026-09-02",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Sanilac on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-104"
  },
  {
   "id": "spc-2026-09-02-hail-43.25-2",
   "lat": 43.25,
   "lon": -83.79,
   "zip": "",
   "city": "Birch Run",
   "date": "2026-09-02",
   "county": "Saginaw",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Birch Run",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "spc-2026-09-02-hail-43.21-3",
   "lat": 43.21,
   "lon": -83.46,
   "zip": "",
   "city": "Otter Lake",
   "date": "2026-09-02",
   "county": "Lapeer",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Otter Lake",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "spc-2026-09-02-hail-43.02-7",
   "lat": 43.02,
   "lon": -82.95,
   "zip": "",
   "city": "1 NW Capac",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near 1 NW Capac",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "spc-2026-09-02-hail-42.95-8",
   "lat": 42.95,
   "lon": -82.56,
   "zip": "",
   "city": "Kimball",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Kimball",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-ww-DTX-SV-W-107-Lapeer-wind-2026-09-02",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-02",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Lapeer on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-107"
  },
  {
   "id": "iem-ww-DTX-SV-W-107-Lapeer-hail-2026-09-02",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-09-02",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Lapeer on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-107"
  },
  {
   "id": "nws-alert-f0a07b5bbdf4be1f.002-St. Clai-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for St. Clair. Severe Thunderstorm Warning issued September 2 at 6:52PM EDT until September 2 at 7:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-107"
  },
  {
   "id": "iem-ww-DTX-SV-W-107-St. Clair-hail-2026-09-02",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for St. Clair on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-107"
  },
  {
   "id": "nws-alert-f97c54d659f71be2.001-St. Clai-tornado",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for St. Clair (observed tornado). Tornado Warning issued September 2 at 7:35PM EDT until September 2 at 7:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "DTX-TO-W-18"
  },
  {
   "id": "spc-2026-09-02-hail-42.69-12",
   "lat": 42.69,
   "lon": -84.28,
   "zip": "",
   "city": "Williamston",
   "date": "2026-09-02",
   "county": "Ingham",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near Williamston",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "spc-2026-09-02-wind-42.61-183",
   "lat": 42.61,
   "lon": -83.94,
   "zip": "",
   "city": "Howell",
   "date": "2026-09-02",
   "county": "Livingston",
   "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 Howell",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-OZW-2026-09-02-258858",
   "lat": 42.6294,
   "lon": -83.9822,
   "zip": "",
   "city": "HOWELL",
   "date": "2026-09-02",
   "county": "Livingston",
   "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": "HOWELL (OZW) recorded a 67 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOWELL (OZW)",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-DET-2026-09-02-259045",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-09-02",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DTX-SV-W-108-Livingston-wind-2026-09-02",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-02",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Livingston on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-108"
  },
  {
   "id": "iem-ww-DTX-SV-W-108-Livingston-hail-2026-09-02",
   "zip": "",
   "city": "Livingston",
   "date": "2026-09-02",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Livingston on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-108"
  },
  {
   "id": "iem-ww-DTX-SV-W-108-Oakland-wind-2026-09-02",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-02",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-108"
  },
  {
   "id": "iem-ww-DTX-SV-W-108-Oakland-hail-2026-09-02",
   "zip": "",
   "city": "Oakland",
   "date": "2026-09-02",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Oakland on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-108"
  },
  {
   "id": "nws-alert-0fd58c302a5829a3.001-Ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-02",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Ingham. Severe Thunderstorm Warning issued September 2 at 10:23PM EDT until September 2 at 11:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-121"
  },
  {
   "id": "iem-ww-GRR-SV-W-121-Ingham-hail-2026-09-02",
   "zip": "",
   "city": "Ingham",
   "date": "2026-09-02",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR for Ingham on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-121"
  },
  {
   "id": "iem-ww-DTX-SV-W-110-Macomb-wind-2026-09-02",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-02",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Macomb on 2026-09-02. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-110"
  },
  {
   "id": "iem-ww-DTX-SV-W-110-Macomb-hail-2026-09-02",
   "zip": "",
   "city": "Macomb",
   "date": "2026-09-02",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Macomb on 2026-09-02. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-110"
  },
  {
   "id": "nws-alert-bda495ed06bfb42b.001-Washtena-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-02",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Washtenaw. Severe Thunderstorm Warning issued September 2 at 11:42PM EDT until September 3 at 12:00AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-109"
  },
  {
   "id": "iem-ww-DTX-SV-W-109-Washtenaw-hail-2026-09-02",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-09-02",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Washtenaw on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-109"
  },
  {
   "id": "nws-alert-bda495ed06bfb42b.001-Wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-02",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wayne. Severe Thunderstorm Warning issued September 2 at 11:42PM EDT until September 3 at 12:00AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-109"
  },
  {
   "id": "iem-ww-DTX-SV-W-109-Wayne-hail-2026-09-02",
   "zip": "",
   "city": "Wayne",
   "date": "2026-09-02",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Wayne on 2026-09-02. Storm tag hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-109"
  },
  {
   "id": "spc-2026-09-02-torn-42.92-4",
   "lat": 42.92,
   "lon": -82.47,
   "zip": "",
   "city": "1 NE Marysville",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.93,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "tornado reported near 1 NE Marysville",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-09-02-hail-43.34-6",
   "lat": 43.34,
   "lon": -83.27,
   "zip": "",
   "city": "5 S East Dayton",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.93,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "hail reported near 5 S East Dayton",
   "sourceDetail": "SPC filtered reports — 2026-09-02",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-09-02-oceana-hail",
   "zip": "",
   "city": "Oceana",
   "date": "2026-09-02",
   "county": "Oceana",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oceana — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-newaygo-hail",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-09-02",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Newaygo — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-montcalm-hail",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-09-02",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Montcalm — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-kent-hail",
   "zip": "",
   "city": "Kent",
   "date": "2026-09-02",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Kent — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-09-02",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-09-02",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-09-02",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-gratiot-hail",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-09-02",
   "county": "Gratiot",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gratiot — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-leelanau-wind",
   "zip": "",
   "city": "Leelanau",
   "date": "2026-09-02",
   "county": "Leelanau",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Leelanau — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-antrim-wind",
   "zip": "",
   "city": "Antrim",
   "date": "2026-09-02",
   "county": "Antrim",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Antrim — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-benzie-wind",
   "zip": "",
   "city": "Benzie",
   "date": "2026-09-02",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Benzie — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-grandtrave-wind",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-09-02",
   "county": "Grand Traverse",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Grand Traverse — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-kalkaska-wind",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-09-02",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-manistee-wind",
   "zip": "",
   "city": "Manistee",
   "date": "2026-09-02",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Manistee — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-wexford-wind",
   "zip": "",
   "city": "Wexford",
   "date": "2026-09-02",
   "county": "Wexford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 64,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "3 Special Weather Statements for Wexford — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-missaukee-wind",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-09-02",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Missaukee — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-roscommon-wind",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-09-02",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-09-02",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-09-02",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-09-02",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2026-09-02",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-09-02",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 63,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Sanilac — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-09-02-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-09-02",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-31-wexford-wind",
   "zip": "",
   "city": "Wexford",
   "date": "2026-08-31",
   "county": "Wexford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wexford — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-31-missaukee-wind",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-08-31",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Missaukee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-2202a9ff549564c1.001-Emmet-wind",
   "zip": "",
   "city": "Emmet",
   "date": "2026-08-26",
   "county": "Emmet",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Emmet. Severe Thunderstorm Warning issued August 26 at 3:26PM EDT until August 26 at 4:15PM EDT by NWS Gaylord MI",
   "sourceDetail": "NWS Gaylord MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-95"
  },
  {
   "id": "iem-ww-APX-SV-W-95-Emmet-hail-2026-08-26",
   "zip": "",
   "city": "Emmet",
   "date": "2026-08-26",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX for Emmet on 2026-08-26. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-95"
  },
  {
   "id": "nws-alert-48a5a80bb778d1e5.001-Cheboyga-wind",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-08-26",
   "county": "Cheboygan",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Cheboygan. Severe Thunderstorm Warning issued August 26 at 3:48PM EDT until August 26 at 4:15PM EDT by NWS Gaylord MI",
   "sourceDetail": "NWS Gaylord MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-95"
  },
  {
   "id": "iem-ww-APX-SV-W-95-Cheboygan-hail-2026-08-26",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-08-26",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX for Cheboygan on 2026-08-26. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-95"
  },
  {
   "id": "sps-2026-08-26-muskegon-wind",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-08-26",
   "county": "Muskegon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Muskegon — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-ottawa-wind",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-08-26",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-08-26",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-kalamazoo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-08-26",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Kalamazoo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-08-26",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-cheboygan-hail",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-08-26",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-presqueisl-hail",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-08-26",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Presque Isle — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-08-26",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-mackinac-hail",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-08-26",
   "county": "Mackinac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mackinac — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-ionia-hail",
   "zip": "",
   "city": "Ionia",
   "date": "2026-08-26",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-montmorenc-wind",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-08-26",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Montmorency — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-cheboygan-wind",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-08-26",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-otsego-wind",
   "zip": "",
   "city": "Otsego",
   "date": "2026-08-26",
   "county": "Otsego",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Otsego — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-oscoda-wind",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-08-26",
   "county": "Oscoda",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oscoda — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-08-26",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-gladwin-hail",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-08-26",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-lapeer-hail",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-08-26",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-08-26",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-26-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-26",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-OZW-2026-08-25-263371",
   "lat": 42.6294,
   "lon": -83.9822,
   "zip": "",
   "city": "HOWELL",
   "date": "2026-08-25",
   "county": "Livingston",
   "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": "HOWELL (OZW) recorded a 79 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOWELL (OZW)",
   "windSpeedMph": 79,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-08-22-flood-42.68--84.57",
   "lat": 42.68,
   "lon": -84.57,
   "zip": "",
   "city": "2 SSW Lansing",
   "date": "2026-08-22",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Reports of multiple lanes covered with water on S Martin Luther King Jr Blvd (M-99). Water approaching tops of curbs between West Miller Rd and Cavanaugh Rd.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-08-22-flood-42.58--84.47",
   "lat": 42.58,
   "lon": -84.47,
   "zip": "",
   "city": "1 W Mason",
   "date": "2026-08-22",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water over roads in Sycamore Village.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-08-22-flood-44.93--84.71",
   "lat": 44.93,
   "lon": -84.71,
   "zip": "",
   "city": "Otsego Lake State Park",
   "date": "2026-08-22",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. Significant and deep mud deposited on W Otsego Lake Dr from High Tower Trail due to heavy rain. A number of other dirt roads experienced washouts of varying degrees. Time estimated via radar.",
   "sourceDetail": "NWS APX — NWS Employee via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-08-22-clinton-hail",
   "zip": "",
   "city": "Clinton",
   "date": "2026-08-22",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Clinton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-eaton-hail",
   "zip": "",
   "city": "Eaton",
   "date": "2026-08-22",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-ingham-hail",
   "zip": "",
   "city": "Ingham",
   "date": "2026-08-22",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Ingham — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-08-22",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Ingham — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-08-22",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-08-22",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-08-22",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-22",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-08-22",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-08-22",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-08-22",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-08-22",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-22",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-22",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Monroe — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-08-22",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-08-22",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-mecosta-hail",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-08-22",
   "county": "Mecosta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mecosta — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-08-22",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-montcalm-hail",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-08-22",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-22-iosco-wind",
   "zip": "",
   "city": "Iosco",
   "date": "2026-08-22",
   "county": "Iosco",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Iosco — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-08-21-flood-42.32--85.15",
   "lat": 42.32,
   "lon": -85.15,
   "zip": "",
   "city": "1 WSW Brownlee Park",
   "date": "2026-08-21",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Several reports of flooded roads on northeast side of Battle Creek. Time estimated.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-08-21-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-08-21",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-barry-hail",
   "zip": "",
   "city": "Barry",
   "date": "2026-08-21",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-eaton-hail",
   "zip": "",
   "city": "Eaton",
   "date": "2026-08-21",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-calhoun-hail",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-08-21",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-08-21",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-clare-hail",
   "zip": "",
   "city": "Clare",
   "date": "2026-08-21",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clare — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-08-21",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-21-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-21",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-08-18-hail-45.46--87.56",
   "lat": 45.46,
   "lon": -87.56,
   "zip": "",
   "city": "2 E Daggett",
   "date": "2026-08-18",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "From Facebook messages to the office.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-lsr-2026-08-18-hail-44.93--84.19",
   "lat": 44.93,
   "lon": -84.19,
   "zip": "",
   "city": "5 SSW Atlanta",
   "date": "2026-08-18",
   "county": "Montmorency",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Estimated hail size of dime to nickel for the past few minutes.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "asos-PLN-2026-08-18-267970",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2026-08-18",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-08-18-wind-44.66-48",
   "lat": 44.66,
   "lon": -85.86,
   "zip": "",
   "city": "1 NNW Bendon",
   "date": "2026-08-18",
   "county": "Benzie",
   "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 NNW Bendon",
   "sourceDetail": "SPC filtered reports — 2026-08-18",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-08-18-wind-44.66-49",
   "lat": 44.66,
   "lon": -85.77,
   "zip": "",
   "city": "1 WNW Interlochen",
   "date": "2026-08-18",
   "county": "Grand Traverse",
   "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 WNW Interlochen",
   "sourceDetail": "SPC filtered reports — 2026-08-18",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-ww-APX-SV-W-94-Kalkaska-wind-2026-08-18",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-08-18",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Kalkaska. Max wind tag: 60 mph.",
   "sourceDetail": "NWS APX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-94"
  },
  {
   "id": "iem-ww-APX-SV-W-94-Kalkaska-hail-2026-08-18",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-08-18",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Kalkaska. Max hail tag: 0.75\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-94"
  },
  {
   "id": "iem-ww-APX-SV-W-94-Missaukee-wind-2026-08-18",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-08-18",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Missaukee. Max wind tag: 60 mph.",
   "sourceDetail": "NWS APX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-94"
  },
  {
   "id": "iem-ww-APX-SV-W-94-Missaukee-hail-2026-08-18",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-08-18",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Missaukee. Max hail tag: 0.75\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-94"
  },
  {
   "id": "nws-alert-b93d40b944b1f602.001-Wexford-wind",
   "zip": "",
   "city": "Wexford",
   "date": "2026-08-18",
   "county": "Wexford",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Wexford. Severe Thunderstorm Warning issued August 18 at 8:48PM EDT until August 18 at 9:15PM EDT by NWS Gaylord MI",
   "sourceDetail": "NWS Gaylord MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-92"
  },
  {
   "id": "iem-ww-APX-SV-W-92-Wexford-hail-2026-08-18",
   "zip": "",
   "city": "Wexford",
   "date": "2026-08-18",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Wexford. Max hail tag: 0.88\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-92"
  },
  {
   "id": "nws-alert-b93d40b944b1f602.001-Grand Tr-wind",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-08-18",
   "county": "Grand Traverse",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Grand Traverse. Severe Thunderstorm Warning issued August 18 at 8:48PM EDT until August 18 at 9:15PM EDT by NWS Gaylord MI",
   "sourceDetail": "NWS Gaylord MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-92"
  },
  {
   "id": "iem-ww-APX-SV-W-92-Grand Traverse-hail-2026-08-18",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-08-18",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Grand Traverse. Max hail tag: 0.88\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-92"
  },
  {
   "id": "iem-ww-APX-SV-W-90-Emmet-wind-2026-08-18",
   "zip": "",
   "city": "Emmet",
   "date": "2026-08-18",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Emmet. Max wind tag: 60 mph.",
   "sourceDetail": "NWS APX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-90"
  },
  {
   "id": "iem-ww-APX-SV-W-90-Emmet-hail-2026-08-18",
   "zip": "",
   "city": "Emmet",
   "date": "2026-08-18",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Emmet. Max hail tag: 1\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-90"
  },
  {
   "id": "nws-alert-93480469175572de.001-Otsego-wind",
   "zip": "",
   "city": "Otsego",
   "date": "2026-08-18",
   "county": "Otsego",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Otsego. Severe Thunderstorm Warning issued August 18 at 9:03PM EDT until August 18 at 9:30PM EDT by NWS Gaylord MI",
   "sourceDetail": "NWS Gaylord MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-93"
  },
  {
   "id": "iem-ww-APX-SV-W-93-Otsego-hail-2026-08-18",
   "zip": "",
   "city": "Otsego",
   "date": "2026-08-18",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Otsego. Max hail tag: 0.75\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-93"
  },
  {
   "id": "iem-ww-APX-SV-W-91-Benzie-wind-2026-08-18",
   "zip": "",
   "city": "Benzie",
   "date": "2026-08-18",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Benzie. Max wind tag: 60 mph.",
   "sourceDetail": "NWS APX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-91"
  },
  {
   "id": "iem-ww-APX-SV-W-91-Benzie-hail-2026-08-18",
   "zip": "",
   "city": "Benzie",
   "date": "2026-08-18",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Benzie. Max hail tag: 1\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-91"
  },
  {
   "id": "iem-ww-APX-SV-W-89-Mackinac-wind-2026-08-18",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-08-18",
   "county": "Mackinac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Mackinac. Max wind tag: 60 mph.",
   "sourceDetail": "NWS APX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-89"
  },
  {
   "id": "iem-ww-APX-SV-W-89-Mackinac-hail-2026-08-18",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-08-18",
   "county": "Mackinac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Mackinac. Max hail tag: 1\".",
   "sourceDetail": "NWS APX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-89"
  },
  {
   "id": "nws-alert-fbc76edb8bdba9cd.001-Muskegon-flood",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-08-18",
   "county": "Muskegon",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning for Muskegon. Flood Warning issued August 18 at 8:12PM EDT until August 19 at 2:15AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Flood Warning",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-9"
  },
  {
   "id": "iem-geo-2026-08-18-flood-43.21--86.21",
   "lat": 43.21,
   "lon": -86.21,
   "zip": "",
   "city": "3 SE Muskegon",
   "date": "2026-08-18",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "US-31 closed between Laketon Ave and Sherman Blvd due to several feet of water over the road.",
   "sourceDetail": "NWS GRR — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-08-18-flood-43.20--86.22",
   "lat": 43.2,
   "lon": -86.22,
   "zip": "",
   "city": "2 SE Muskegon",
   "date": "2026-08-18",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Vehicles stuck in deep water near Sherman Blvd and Getty St.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-08-18-mackinac-hail",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-08-18",
   "county": "Mackinac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mackinac — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-08-18",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Menominee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Marquette MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-emmet-hail",
   "zip": "",
   "city": "Emmet",
   "date": "2026-08-18",
   "county": "Emmet",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Emmet — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-cheboygan-hail",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-08-18",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-chippewa-wind",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-08-18",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-mackinac-wind",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-08-18",
   "county": "Mackinac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mackinac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-leelanau-hail",
   "zip": "",
   "city": "Leelanau",
   "date": "2026-08-18",
   "county": "Leelanau",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Leelanau — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-benzie-hail",
   "zip": "",
   "city": "Benzie",
   "date": "2026-08-18",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Benzie — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-08-18",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-18-berrien-wind",
   "zip": "",
   "city": "Berrien",
   "date": "2026-08-18",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-14eb60b4177a519f.001-Huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-08-16",
   "county": "Huron",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Huron. Severe Thunderstorm Warning issued August 16 at 5:46PM EDT until August 16 at 6:45PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-102"
  },
  {
   "id": "iem-ww-DTX-SV-W-102-Huron-hail-2026-08-16",
   "zip": "",
   "city": "Huron",
   "date": "2026-08-16",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Huron. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-102"
  },
  {
   "id": "asos-FNT-2026-08-16-267068",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-08-16",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-08-16-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-08-16",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-08-16",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "3 Special Weather Statements for Tuscola — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-08-16",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2026-08-16",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-08-16",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-08-16",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-08-16",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-16-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-08-16",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-12-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-08-12",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Marquette MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-12-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-08-12",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "3 Special Weather Statements for St. Clair — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-12-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-08-12",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-12-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-08-12",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-12-midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-08-12",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-c5481360d8bdb804.001-Berrien-tornado-2026-08-11",
   "lat": 41.71999999999999,
   "lon": -86.29999999999998,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Berrien (observed tornado). Tornado Warning issued August 11 at 1:00PM EDT until August 11 at 1:30PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "IWX-TO-W-48"
  },
  {
   "id": "nws-alert-c5481360d8bdb804.001-Cass-tornado-2026-08-11",
   "lat": 41.71999999999999,
   "lon": -86.29999999999998,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 88,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Tornado Warning for Cass (observed tornado). Tornado Warning issued August 11 at 1:00PM EDT until August 11 at 1:30PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Tornado Warning",
   "evidenceLevel": "observed",
   "warningProductKey": "IWX-TO-W-48"
  },
  {
   "id": "ww-IWX-SV-W-258-2026-08-11-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 52 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #258 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-258"
  },
  {
   "id": "nws-alert-cf931f9a1c4ec3fa.001-Cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Cass. Severe Thunderstorm Warning issued August 11 at 6:40AM EDT until August 11 at 7:15AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-259"
  },
  {
   "id": "nws-alert-d1e06602de7acc6a.001-Lenawee-wind-2026-08-11",
   "lat": 41.872,
   "lon": -83.954,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Lenawee",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Lenawee. Max wind: 50 mph. Severe Thunderstorm Warning issued August 11 at 4:54AM EDT until August 11 at 5:15AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning Max wind: 50 mph.",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-101"
  },
  {
   "id": "iem-202608110423-hail-41.76--83.75",
   "lat": 41.76,
   "lon": -83.75,
   "zip": "",
   "city": "Ottawa Lake",
   "date": "2026-08-11",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Ottawa Lake, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202608111045-hail-41.83--86.37",
   "lat": 41.83,
   "lon": -86.37,
   "zip": "",
   "city": "Buchanan",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Buchanan, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202608110835-hail-41.90--84.04",
   "lat": 41.9,
   "lon": -84.04,
   "zip": "",
   "city": "Adrian",
   "date": "2026-08-11",
   "county": "Lenawee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Adrian, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-IWX-SV-W-255-2026-08-11-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 29 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #255 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-255"
  },
  {
   "id": "ww-IWX-SV-W-255-2026-08-11-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 29 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #255 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-255"
  },
  {
   "id": "ww-IWX-SV-W-255-2026-08-11-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 29 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #255 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-255"
  },
  {
   "id": "ww-IWX-SV-W-255-2026-08-11-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 29 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #255 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-255"
  },
  {
   "id": "nws-alert-d1e06602de7acc6a.001-Lenawee-hail-2026-08-11",
   "lat": 41.872,
   "lon": -83.954,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Lenawee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Lenawee. Max hail: 1\". Severe Thunderstorm Warning issued August 11 at 4:54AM EDT until August 11 at 5:15AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning Max hail: 1\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "DTX-SV-W-101"
  },
  {
   "id": "ww-IWX-SV-W-258-2026-08-11-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 52 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #258 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-258"
  },
  {
   "id": "ww-IWX-SV-W-259-2026-08-11-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-11. Duration: 35 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 2.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #259 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-259"
  },
  {
   "id": "nws-alert-cf931f9a1c4ec3fa.001-Berrien-hail-2026-08-11",
   "lat": 41.74,
   "lon": -86.24111111111111,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Berrien. Max hail: 2\". Severe Thunderstorm Warning issued August 11 at 6:40AM EDT until August 11 at 7:15AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 2\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 2,
   "warningProductKey": "IWX-SV-W-259"
  },
  {
   "id": "nws-alert-cf931f9a1c4ec3fa.001-Cass-hail-2026-08-11",
   "lat": 41.74,
   "lon": -86.24111111111111,
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Cass. Max hail: 2\". Severe Thunderstorm Warning issued August 11 at 6:40AM EDT until August 11 at 7:15AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 2\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 2,
   "warningProductKey": "IWX-SV-W-259"
  },
  {
   "id": "iem-geo-2026-08-11-flood-41.84--86.30",
   "lat": 41.84,
   "lon": -86.3,
   "zip": "",
   "city": "3 W Niles",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202608110653-hail-41.83--86.37",
   "lat": 41.83,
   "lon": -86.37,
   "zip": "",
   "city": "Buchanan",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Buchanan, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "nws-alert-bad514ff93c8d2b3.003-Branch-wind-2026-08-11",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Branch. Severe Thunderstorm Watch issued August 11 at 1:48PM EDT until August 11 at 5:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-565"
  },
  {
   "id": "nws-alert-bad514ff93c8d2b3.003-Cass-wind-2026-08-11",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Cass. Severe Thunderstorm Watch issued August 11 at 1:48PM EDT until August 11 at 5:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-565"
  },
  {
   "id": "nws-alert-bad514ff93c8d2b3.003-Hillsdal-wind-2026-08-11",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Hillsdale. Severe Thunderstorm Watch issued August 11 at 1:48PM EDT until August 11 at 5:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-565"
  },
  {
   "id": "nws-alert-ea80b570db0908d8.001-Berrien-wind-2026-08-11",
   "zip": "",
   "city": "",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Berrien. Severe Thunderstorm Watch issued August 11 at 11:02AM EDT until August 11 at 5:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-565"
  },
  {
   "id": "sps-2026-08-11-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-11",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Lenawee — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-11",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Monroe — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2026-08-11",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Berrien — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-08-11",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Cass — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-stjoseph-hail",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-08-11",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-08-11",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Hillsdale — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-11-branch-hail",
   "zip": "",
   "city": "Branch",
   "date": "2026-08-11",
   "county": "Branch",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Branch — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "spc-2026-08-10-1-0423",
   "lat": 41.76,
   "lon": -83.75,
   "zip": "",
   "city": "Ottawa Lake",
   "date": "2026-08-10",
   "county": "Monroe",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Various media photos shared from Ottawa Lake with hailstones in excess of one inch. Largest measured just shy of two inches. (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "spc-2026-08-10-2-0653",
   "lat": 41.83,
   "lon": -86.37,
   "zip": "",
   "city": "Buchanan",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Picture shared by Matt Rudkin of hailstones ranging from quarter to nearly Ping Pong Ball size. (IWX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "spc-2026-08-10-3-0835",
   "lat": 41.9,
   "lon": -84.04,
   "zip": "",
   "city": "Adrian",
   "date": "2026-08-10",
   "county": "Lenawee",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "nws-alert-ba7d9d5e7e517f64.001-Jackson-wind-2026-08-10",
   "lat": 42.18833333333333,
   "lon": -84.21666666666665,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Jackson",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Jackson. Severe Thunderstorm Warning issued August 10 at 5:33AM EDT until August 10 at 5:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-120"
  },
  {
   "id": "nws-alert-47932f0f65300812.001-Washtena-wind-2026-08-10",
   "lat": 42.288,
   "lon": -83.864,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Washtenaw. Max wind: 60 mph. Severe Thunderstorm Warning issued August 10 at 5:27AM EDT until August 10 at 6:15AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-100"
  },
  {
   "id": "nws-alert-a5cc70763b7ceb90.001-Allegan-wind-2026-08-10",
   "lat": 42.63,
   "lon": -85.766,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Allegan",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Allegan. Severe Thunderstorm Warning issued August 10 at 3:39AM EDT until August 10 at 3:45AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-119"
  },
  {
   "id": "nws-alert-42b880282bc07086.001-Van Bure-wind-2026-08-10",
   "lat": 42.225,
   "lon": -86.0025,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Van Buren. Severe Thunderstorm Warning issued August 10 at 3:32AM EDT until August 10 at 3:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-118"
  },
  {
   "id": "ww-IWX-SV-W-237-2026-08-10-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-10. Duration: 28 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #237 (28 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-237"
  },
  {
   "id": "ww-IWX-SV-W-236-2026-08-10-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-10. Duration: 29 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #236 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-236"
  },
  {
   "id": "iem-lsr-2026-08-10-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-08-10",
   "county": "Jackson",
   "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": "Corrects previous non-tstm wnd gst report from 3 ENE Sandstone. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-c25ba6facd25c4c8.001-St. Jose-flood",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-08-10",
   "county": "St. Joseph",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for St. Joseph. Flood Watch issued August 9 at 8:27PM EDT until August 10 at 11:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FA-A-6"
  },
  {
   "id": "nws-alert-b266cfb8ba300daa.001-Allegan-hail-2026-08-10",
   "lat": 42.63,
   "lon": -85.766,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Allegan",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Allegan. Max hail: 0.75\". Severe Thunderstorm Warning issued August 10 at 3:15AM EDT until August 10 at 3:45AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-119"
  },
  {
   "id": "nws-alert-47932f0f65300812.001-Washtena-hail-2026-08-10",
   "lat": 42.288,
   "lon": -83.864,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Washtenaw. Max hail: 0.75\". Severe Thunderstorm Warning issued August 10 at 5:27AM EDT until August 10 at 6:15AM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-100"
  },
  {
   "id": "nws-alert-71f328e86c28e559.001-Jackson-hail-2026-08-10",
   "lat": 42.18833333333333,
   "lon": -84.21666666666665,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Jackson",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Jackson. Max hail: 0.75\". Severe Thunderstorm Warning issued August 10 at 5:01AM EDT until August 10 at 5:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-120"
  },
  {
   "id": "nws-alert-576c858dc8ef7b56.001-Berrien-hail-2026-08-10",
   "lat": 42.185,
   "lon": -86.29666666666667,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Berrien. Max hail: 1\". Severe Thunderstorm Warning issued August 10 at 2:47AM EDT until August 10 at 3:15AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 1\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-237"
  },
  {
   "id": "ww-IWX-SV-W-236-2026-08-10-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-10. Duration: 29 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #236 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-236"
  },
  {
   "id": "ww-IWX-SV-W-236-2026-08-10-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-10. Duration: 29 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #236 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-236"
  },
  {
   "id": "nws-alert-89c94ff2797a7299.001-Cass-hail-2026-08-10",
   "lat": 42.07142857142857,
   "lon": -86.17142857142858,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Cass. Max hail: 1\". Severe Thunderstorm Warning issued August 10 at 2:32AM EDT until August 10 at 2:45AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 1\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-236"
  },
  {
   "id": "nws-alert-8dac3ff4ea4f11c5.001-Van Bure-hail-2026-08-10",
   "lat": 42.225,
   "lon": -86.0025,
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Van Buren. Max hail: 0.75\". Severe Thunderstorm Warning issued August 10 at 3:18AM EDT until August 10 at 3:30AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-118"
  },
  {
   "id": "asos-JXN-2026-08-10-257827",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-08-10",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN)",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-18cbe2e4d83c2b25.001-Cass-flood-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Cass. Flood Watch issued August 10 at 4:04AM EDT until August 10 at 11:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FA-A-6"
  },
  {
   "id": "nws-alert-18cbe2e4d83c2b25.001-Branch-flood-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Branch. Flood Watch issued August 10 at 4:04AM EDT until August 10 at 11:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FA-A-6"
  },
  {
   "id": "nws-alert-18cbe2e4d83c2b25.001-Berrien-flood-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Berrien. Flood Watch issued August 10 at 4:04AM EDT until August 10 at 11:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FA-A-6"
  },
  {
   "id": "iem-202608100851-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-08-10",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-JXN-2026-08-10",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-08-10",
   "county": "Jackson",
   "source": "IEM ASOS Station",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "JACKSON/REYNOLDS (JXN): 56 mph gust at M.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) — peak at M",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "nws-alert-9ae9a69d421a3868.001-Berrien-wind-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Berrien. Severe Thunderstorm Watch issued August 10 at 7:22PM EDT until August 11 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-560"
  },
  {
   "id": "nws-alert-9ae9a69d421a3868.001-Branch-wind-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Branch. Severe Thunderstorm Watch issued August 10 at 7:22PM EDT until August 11 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-560"
  },
  {
   "id": "nws-alert-9ae9a69d421a3868.001-Cass-wind-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Cass. Severe Thunderstorm Watch issued August 10 at 7:22PM EDT until August 11 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-560"
  },
  {
   "id": "nws-alert-9ae9a69d421a3868.001-Hillsdal-wind-2026-08-10",
   "zip": "",
   "city": "",
   "date": "2026-08-10",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Hillsdale. Severe Thunderstorm Watch issued August 10 at 7:22PM EDT until August 11 at 2:00AM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-560"
  },
  {
   "id": "sps-2026-08-10-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-10",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-10",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 63,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Lenawee — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-08-10",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Kent — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-ionia-wind",
   "zip": "",
   "city": "Ionia",
   "date": "2026-08-10",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Ionia — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-08-10",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Barry — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-08-10",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Cass — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2026-08-10",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Berrien — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Northern Indiana — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-08-10",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-ottawa-hail",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-08-10",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-kent-hail",
   "zip": "",
   "city": "Kent",
   "date": "2026-08-10",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-ionia-hail",
   "zip": "",
   "city": "Ionia",
   "date": "2026-08-10",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-10-allegan-hail",
   "zip": "",
   "city": "Allegan",
   "date": "2026-08-10",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "spc-2026-08-09-9-0851",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "Sandstone",
   "date": "2026-08-09",
   "county": "Jackson",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Corrects previous non-tstm wnd gst report from 3 ENE Sandstone. ASOS station KJXN Jackson County-Reynolds Field Airport. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "nws-alert-31484cac5dc0d84f.001-Berrien-wind-2026-08-09",
   "lat": 41.768,
   "lon": -86.134,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Berrien. Severe Thunderstorm Warning issued August 9 at 5:35PM EDT until August 9 at 5:45PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-221"
  },
  {
   "id": "ww-IWX-SV-W-221-2026-08-09-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 65 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #221 (65 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-221"
  },
  {
   "id": "nws-alert-74c85e334982c38a.001-St. Jose-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-08-09",
   "county": "St. Joseph",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for St. Joseph. Severe Thunderstorm Warning issued August 9 at 5:34PM EDT until August 9 at 6:15PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-225"
  },
  {
   "id": "nws-alert-a2802adef76b20d6.001-Kalamazo-wind-2026-08-09",
   "lat": 42.279999999999994,
   "lon": -85.458,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Kalamazoo. Severe Thunderstorm Warning issued August 9 at 5:23PM EDT until August 9 at 5:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-117"
  },
  {
   "id": "nws-alert-b47a5f3a9e91e829.001-Van Bure-wind-2026-08-09",
   "lat": 42.21,
   "lon": -85.91,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Van Buren. Severe Thunderstorm Warning issued August 9 at 4:54PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-116"
  },
  {
   "id": "nws-alert-2c6bac472fada361.001-Allegan-wind-2026-08-09",
   "lat": 42.456,
   "lon": -85.81,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Allegan",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Allegan. Severe Thunderstorm Warning issued August 9 at 4:41PM EDT until August 9 at 4:45PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-114"
  },
  {
   "id": "nws-alert-a5bad776ef97e27b.001-Barry-wind-2026-08-09",
   "lat": 42.76285714285715,
   "lon": -85.32142857142857,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Barry",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Barry. Max wind: 60 mph. Severe Thunderstorm Warning issued August 9 at 4:36PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-115"
  },
  {
   "id": "nws-alert-a5bad776ef97e27b.001-Kent-wind-2026-08-09",
   "lat": 42.76285714285715,
   "lon": -85.32142857142857,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Kent",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Kent. Max wind: 60 mph. Severe Thunderstorm Warning issued August 9 at 4:36PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-115"
  },
  {
   "id": "nws-alert-03b1bc9b01c74a00.001-Ottawa-wind-2026-08-09",
   "lat": 42.76111111111111,
   "lon": -85.97777777777777,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Ottawa",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Ottawa. Max wind: 60 mph. Severe Thunderstorm Warning issued August 9 at 3:29PM EDT until August 9 at 4:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-112"
  },
  {
   "id": "nws-alert-03b1bc9b01c74a00.001-Ottawa-hail-2026-08-09",
   "lat": 42.76111111111111,
   "lon": -85.97777777777777,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Ottawa",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Ottawa. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 3:29PM EDT until August 9 at 4:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-112"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-08-09",
   "county": "Barry",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Barry. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-dec3b5b44aeb2d24.003-Calhoun-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Calhoun",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Calhoun. Severe Thunderstorm Watch issued August 9 at 5:13PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Clinton-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Clinton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Clinton. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Eaton-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Eaton. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Ingham-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Ingham. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Ionia-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Ionia",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Ionia. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-dec3b5b44aeb2d24.003-Jackson-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Jackson",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Jackson. Severe Thunderstorm Watch issued August 9 at 5:13PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Kalamazo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-08-09",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Kalamazoo. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-08-09",
   "county": "Kent",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Kent. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Muskegon-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Muskegon",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Muskegon. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-93a8e0fc99b21534.001-Van Bure-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Van Buren. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-547"
  },
  {
   "id": "nws-alert-fc8afbfb4b519387.001-Berrien-wind",
   "zip": "",
   "city": "Berrien",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Berrien. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-547"
  },
  {
   "id": "nws-alert-09ac846c0f491d34.002-Branch-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Branch. Severe Thunderstorm Watch issued August 9 at 6:57PM EDT until August 9 at 9:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-547"
  },
  {
   "id": "nws-alert-f1bc7479a9a73cda.004-Cass-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Cass. Severe Thunderstorm Watch issued August 9 at 5:37PM EDT until August 9 at 8:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-547"
  },
  {
   "id": "nws-alert-09ac846c0f491d34.002-Hillsdal-wind-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Hillsdale. Severe Thunderstorm Watch issued August 9 at 6:57PM EDT until August 9 at 9:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-547"
  },
  {
   "id": "nws-alert-fc8afbfb4b519387.001-St. Jose-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-08-09",
   "county": "St. Joseph",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for St. Joseph. Severe Thunderstorm Watch issued August 9 at 1:03PM EDT until August 9 at 7:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-547"
  },
  {
   "id": "nws-alert-a982189a45a33c2d.001-Berrien-hail-2026-08-09",
   "lat": 41.768,
   "lon": -86.134,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Berrien. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 5:08PM EDT until August 9 at 5:45PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-221"
  },
  {
   "id": "nws-alert-74c85e334982c38a.001-Cass-hail-2026-08-09",
   "lat": 41.660000000000004,
   "lon": -85.788,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Cass. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 5:34PM EDT until August 9 at 6:15PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-225"
  },
  {
   "id": "nws-alert-124217f1e7d3af81.001-Allegan-hail-2026-08-09",
   "lat": 42.456,
   "lon": -85.81,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Allegan",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Allegan. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 4:33PM EDT until August 9 at 4:45PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-114"
  },
  {
   "id": "nws-alert-415757963aeeb5f7.001-Kalamazo-hail-2026-08-09",
   "lat": 42.279999999999994,
   "lon": -85.458,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Kalamazoo. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 5:14PM EDT until August 9 at 5:30PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-117"
  },
  {
   "id": "nws-alert-b4f2e08db861d824.001-Van Bure-hail-2026-08-09",
   "lat": 42.21,
   "lon": -85.91,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Van Buren. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 4:46PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-116"
  },
  {
   "id": "nws-alert-a5bad776ef97e27b.001-Barry-hail-2026-08-09",
   "lat": 42.76285714285715,
   "lon": -85.32142857142857,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Barry",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Barry. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 4:36PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-115"
  },
  {
   "id": "nws-alert-a5bad776ef97e27b.001-Kent-hail-2026-08-09",
   "lat": 42.76285714285715,
   "lon": -85.32142857142857,
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Kent",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Kent. Max hail: 0.75\". Severe Thunderstorm Warning issued August 9 at 4:36PM EDT until August 9 at 5:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-115"
  },
  {
   "id": "nws-alert-dce4347e966a8691.001-Van Bure-flood-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Van Buren. Flood Watch issued August 9 at 8:34PM EDT until August 10 at 11:00AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-A-4"
  },
  {
   "id": "nws-alert-dce4347e966a8691.001-Kalamazo-flood-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Kalamazoo. Flood Watch issued August 9 at 8:34PM EDT until August 10 at 11:00AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-A-4"
  },
  {
   "id": "nws-alert-dce4347e966a8691.001-Calhoun-flood-2026-08-09",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Calhoun",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Calhoun. Flood Watch issued August 9 at 8:34PM EDT until August 10 at 11:00AM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-A-4"
  },
  {
   "id": "ww-GRR-SV-W-112-2026-08-09-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-08-09. Duration: 83 min. Counties: Ottawa, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #112 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-112"
  },
  {
   "id": "ww-GRR-SV-W-112-2026-08-09-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-08-09. Duration: 83 min. Counties: Ottawa, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #112 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-112"
  },
  {
   "id": "ww-IWX-SV-W-221-2026-08-09-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 65 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #221 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-221"
  },
  {
   "id": "ww-IWX-SV-W-225-2026-08-09-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 41 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #225 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-225"
  },
  {
   "id": "ww-IWX-SV-W-220-2026-08-09-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 53 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #220 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-220"
  },
  {
   "id": "ww-IWX-SV-W-220-2026-08-09-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 53 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #220 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-220"
  },
  {
   "id": "ww-GRR-SV-W-113-2026-08-09-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-08-09. Duration: 54 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #113 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-113"
  },
  {
   "id": "ww-GRR-SV-W-113-2026-08-09-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-08-09. Duration: 54 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #113 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-113"
  },
  {
   "id": "ww-IWX-SV-W-219-2026-08-09-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 66 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #219 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-219"
  },
  {
   "id": "ww-IWX-SV-W-219-2026-08-09-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 66 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #219 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-219"
  },
  {
   "id": "ww-IWX-SV-W-219-2026-08-09-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 66 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #219 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-219"
  },
  {
   "id": "ww-IWX-SV-W-219-2026-08-09-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-09",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-08-09. Duration: 66 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #219 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-219"
  },
  {
   "id": "iem-ww-IWX-SV-W-225-St. Joseph-hail-2026-08-09",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-08-09",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-225"
  },
  {
   "id": "sps-2026-08-09-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-09",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-09-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-09",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Detroit/Pontiac MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-63025debd3059647.001-Baraga-wind",
   "zip": "",
   "city": "Baraga",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Baraga. Severe Thunderstorm Warning issued August 7 at 8:04PM EDT until August 7 at 8:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-54"
  },
  {
   "id": "nws-alert-63025debd3059647.001-Marquett-wind",
   "zip": "",
   "city": "Marquette",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Marquette. Severe Thunderstorm Warning issued August 7 at 8:04PM EDT until August 7 at 8:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-54"
  },
  {
   "id": "nws-alert-66ad6d2daee9b049.001-Houghton-wind",
   "zip": "",
   "city": "Houghton",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Houghton. Severe Thunderstorm Warning issued August 7 at 7:27PM EDT until August 7 at 7:45PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "nws-alert-66ad6d2daee9b049.001-Iron-wind",
   "zip": "",
   "city": "Iron",
   "date": "2026-08-07",
   "county": "Iron",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Iron. Severe Thunderstorm Warning issued August 7 at 7:27PM EDT until August 7 at 7:45PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "nws-alert-6c0ed6eb9192ca1c.001-Ontonago-wind-2026-08-07",
   "lat": 46.806000000000004,
   "lon": -88.738,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Ontonagon",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Ontonagon. Max wind: 60 mph. Severe Thunderstorm Warning issued August 7 at 6:34PM EDT until August 7 at 7:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max wind: 60 mph.",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "nws-alert-bed0361a653a074b.001-Gogebic-wind-2026-08-07",
   "lat": 46.620000000000005,
   "lon": -89.73666666666666,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Gogebic",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 88,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning for Gogebic. Max wind: 50 mph. Severe Thunderstorm Warning issued August 7 at 5:44PM EDT until August 7 at 6:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max wind: 50 mph.",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "nws-alert-6c0ed6eb9192ca1c.001-Ontonago-hail-2026-08-07",
   "lat": 46.806000000000004,
   "lon": -88.738,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Ontonagon",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Ontonagon. Max hail: 1.25\". Severe Thunderstorm Warning issued August 7 at 6:34PM EDT until August 7 at 7:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 1.25\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "nws-alert-66ad6d2daee9b049.001-Houghton-hail-2026-08-07",
   "lat": 46.58375000000001,
   "lon": -88.485,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Houghton. Max hail: 0.75\". Severe Thunderstorm Warning issued August 7 at 7:27PM EDT until August 7 at 7:45PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "nws-alert-66ad6d2daee9b049.001-Iron-hail-2026-08-07",
   "lat": 46.58375000000001,
   "lon": -88.485,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Iron",
   "source": "NWS Weather Alert",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Iron. Max hail: 0.75\". Severe Thunderstorm Warning issued August 7 at 7:27PM EDT until August 7 at 7:45PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "nws-alert-63025debd3059647.001-Baraga-hail-2026-08-07",
   "lat": 46.70285714285715,
   "lon": -87.81857142857143,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Baraga. Max hail: 0.75\". Severe Thunderstorm Warning issued August 7 at 8:04PM EDT until August 7 at 8:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-54"
  },
  {
   "id": "nws-alert-63025debd3059647.001-Marquett-hail-2026-08-07",
   "lat": 46.70285714285715,
   "lon": -87.81857142857143,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Marquette. Max hail: 0.75\". Severe Thunderstorm Warning issued August 7 at 8:04PM EDT until August 7 at 8:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 0.75\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-54"
  },
  {
   "id": "nws-alert-91aa47f5b5901e46.003-Alger-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Alger",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Alger. Severe Thunderstorm Watch issued August 7 at 9:13PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-91aa47f5b5901e46.003-Delta-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Delta",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Delta. Severe Thunderstorm Watch issued August 7 at 9:13PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-91aa47f5b5901e46.003-Marquett-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Marquette. Severe Thunderstorm Watch issued August 7 at 9:13PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-91aa47f5b5901e46.003-Menomine-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Menominee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Menominee. Severe Thunderstorm Watch issued August 7 at 9:13PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-91aa47f5b5901e46.003-Schoolcr-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Schoolcraft",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Schoolcraft. Severe Thunderstorm Watch issued August 7 at 9:13PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-8fbb637926eca52c.003-Baraga-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Baraga. Severe Thunderstorm Watch issued August 7 at 8:29PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-8fbb637926eca52c.003-Dickinso-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Dickinson",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Dickinson. Severe Thunderstorm Watch issued August 7 at 8:29PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-8fbb637926eca52c.003-Houghton-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Houghton. Severe Thunderstorm Watch issued August 7 at 8:29PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-8fbb637926eca52c.003-Iron-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Iron",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Iron. Severe Thunderstorm Watch issued August 7 at 8:29PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-8fbb637926eca52c.003-Keweenaw-wind-2026-08-07",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Keweenaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Keweenaw. Severe Thunderstorm Watch issued August 7 at 8:29PM EDT until August 7 at 11:00PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-A-542"
  },
  {
   "id": "nws-alert-bed0361a653a074b.001-Gogebic-hail-2026-08-07",
   "lat": 46.620000000000005,
   "lon": -89.73666666666666,
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Gogebic",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "hail",
   "confidence": 88,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning for Gogebic. Max hail: 1.25\". Severe Thunderstorm Warning issued August 7 at 5:44PM EDT until August 7 at 6:30PM EDT by NWS Marquette MI",
   "sourceDetail": "NWS Marquette MI — Severe Thunderstorm Warning Max hail: 1.25\".",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-50-2026-08-07-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 33 min. Counties: Baraga, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #50 (33 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-50"
  },
  {
   "id": "ww-MQT-SV-W-50-2026-08-07-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 33 min. Counties: Baraga, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #50 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-50"
  },
  {
   "id": "ww-MQT-SV-W-50-2026-08-07-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 33 min. Counties: Baraga, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #50 (33 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-50"
  },
  {
   "id": "ww-MQT-SV-W-50-2026-08-07-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 33 min. Counties: Baraga, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #50 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-50"
  },
  {
   "id": "ww-MQT-SV-W-51-2026-08-07-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #51 (47 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "ww-MQT-SV-W-51-2026-08-07-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #51 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "ww-MQT-SV-W-51-2026-08-07-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #51 (47 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "ww-MQT-SV-W-51-2026-08-07-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #51 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-51"
  },
  {
   "id": "ww-MQT-SV-W-52-2026-08-07-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 56 min. Counties: Baraga, Houghton, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #52 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "ww-MQT-SV-W-52-2026-08-07-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 56 min. Counties: Baraga, Houghton, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #52 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-52"
  },
  {
   "id": "ww-MQT-SV-W-53-2026-08-07-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 62 min. Counties: Baraga, Houghton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #53 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-53"
  },
  {
   "id": "ww-MQT-SV-W-53-2026-08-07-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 62 min. Counties: Baraga, Houghton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #53 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-53"
  },
  {
   "id": "ww-MQT-SV-W-53-2026-08-07-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 62 min. Counties: Baraga, Houghton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #53 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-53"
  },
  {
   "id": "ww-MQT-SV-W-53-2026-08-07-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-08-07",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-08-07. Duration: 62 min. Counties: Baraga, Houghton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #53 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-53"
  },
  {
   "id": "sps-2026-08-07-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-08-07",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Gogebic — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-07-marquette-wind",
   "zip": "",
   "city": "Marquette",
   "date": "2026-08-07",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Marquette — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-07-ontonagon-hail",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-08-07",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Marquette MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-clare-hail",
   "zip": "",
   "city": "Clare",
   "date": "2026-08-05",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Clare — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-roscommon-wind",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-08-05",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Roscommon — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-iosco-wind",
   "zip": "",
   "city": "Iosco",
   "date": "2026-08-05",
   "county": "Iosco",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "4 Special Weather Statements for Iosco — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-alpena-wind",
   "zip": "",
   "city": "Alpena",
   "date": "2026-08-05",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Alpena — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-08-05",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Eaton — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-08-05",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ingham — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Grand Rapids MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-arenac-wind",
   "zip": "",
   "city": "Arenac",
   "date": "2026-08-05",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-presqueisl-wind",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-08-05",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-montmorenc-wind",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-08-05",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montmorency — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-ogemaw-wind",
   "zip": "",
   "city": "Ogemaw",
   "date": "2026-08-05",
   "county": "Ogemaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Ogemaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-08-05-gladwin-wind",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-08-05",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "NWS Gaylord MI — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-St. Clai-flood",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-08-02",
   "county": "St. Clair",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for St. Clair. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Oakland-flood",
   "zip": "",
   "city": "Oakland",
   "date": "2026-08-02",
   "county": "Oakland",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Oakland. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Macomb-flood",
   "zip": "",
   "city": "Macomb",
   "date": "2026-08-02",
   "county": "Macomb",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Macomb. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Washtena-flood",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-08-02",
   "county": "Washtenaw",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Washtenaw. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Wayne-flood",
   "zip": "",
   "city": "Wayne",
   "date": "2026-08-02",
   "county": "Wayne",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Wayne. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Lenawee-flood",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-08-02",
   "county": "Lenawee",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Lenawee. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "nws-alert-45a21d23490feced.001-Monroe-flood",
   "zip": "",
   "city": "Monroe",
   "date": "2026-08-02",
   "county": "Monroe",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "flood",
   "confidence": 72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Watch for Monroe. Flood Watch issued August 2 at 1:57AM EDT until August 2 at 5:00PM EDT by NWS Detroit/Pontiac MI",
   "sourceDetail": "NWS Detroit/Pontiac MI — Flood Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FA-A-5"
  },
  {
   "id": "ww-APX-FF-W-22-2026-07-31-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-07-31",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-31. Duration: 141 min. Counties: Alcona, Alpena. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #22 (141 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-22"
  },
  {
   "id": "ww-APX-FF-W-22-2026-07-31-Alpena",
   "zip": "",
   "city": "",
   "date": "2026-07-31",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-31. Duration: 141 min. Counties: Alcona, Alpena. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #22 (141 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-22"
  },
  {
   "id": "iem-geo-2026-07-30T15:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-07-30",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 56 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-07-30-gogebic-wind",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-07-30",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gogebic — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-30-iron-hail",
   "zip": "",
   "city": "Iron",
   "date": "2026-07-30",
   "county": "Iron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Iron — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-30-luce-hail",
   "zip": "",
   "city": "Luce",
   "date": "2026-07-30",
   "county": "Luce",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Luce — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-30-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-30",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607280458-hail-42.15--84.04",
   "lat": 42.15,
   "lon": -84.04,
   "zip": "",
   "city": "Manchester",
   "date": "2026-07-28",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Manchester, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DTX-SV-W-99-2026-07-28-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-28",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-28. Duration: 42 min. Counties: Washtenaw, Lenawee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #99 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-99"
  },
  {
   "id": "ww-DTX-SV-W-99-2026-07-28-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-28",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-28. Duration: 42 min. Counties: Washtenaw, Lenawee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #99 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-99"
  },
  {
   "id": "ww-DTX-SV-W-99-2026-07-28-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-28",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-28. Duration: 42 min. Counties: Washtenaw, Lenawee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #99 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-99"
  },
  {
   "id": "ww-DTX-SV-W-99-2026-07-28-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-28",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-28. Duration: 42 min. Counties: Washtenaw, Lenawee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #99 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-99"
  },
  {
   "id": "sps-2026-07-28-lapeer-hail",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-07-28",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-28-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-07-28",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607270605-hail-46.23--84.60",
   "lat": 46.23,
   "lon": -84.6,
   "zip": "",
   "city": "Rudyard",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Rudyard, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607270624-hail-46.37--85.04",
   "lat": 46.37,
   "lon": -85.04,
   "zip": "",
   "city": "Eckerman",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Eckerman, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607271206-hail-46.80--89.76",
   "lat": 46.8,
   "lon": -89.76,
   "zip": "",
   "city": "Lake of the Clouds",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Lake of the Clouds, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Park/Forest Srvc via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607271710-hail-44.46--83.46",
   "lat": 44.46,
   "lon": -83.46,
   "zip": "",
   "city": "4 W Wurtsmith Airfield",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Wurtsmith Airfield, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202607271710-hail-44.46--83.49",
   "lat": 44.46,
   "lon": -83.49,
   "zip": "",
   "city": "5 N Wilber",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 N Wilber, MI. Hail size: 2\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202607271715-hail-44.45--83.49",
   "lat": 44.45,
   "lon": -83.49,
   "zip": "",
   "city": "4 N Wilber",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 N Wilber, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202607280058-hail-44.79--85.01",
   "lat": 44.79,
   "lon": -85.01,
   "zip": "",
   "city": "3 NE Darragh",
   "date": "2026-07-27",
   "county": "Kalkaska",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NE Darragh, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202607280115-hail-44.62--84.80",
   "lat": 44.62,
   "lon": -84.8,
   "zip": "",
   "city": "5 WSW Grayling",
   "date": "2026-07-27",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 WSW Grayling, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS APX — Other Federal via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-geo-2026-07-27-flood-44.64--84.77",
   "lat": 44.64,
   "lon": -84.77,
   "zip": "",
   "city": "3 WSW Grayling",
   "date": "2026-07-27",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report of flooding at Camp Grayling.",
   "sourceDetail": "NWS APX — Other Federal via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-27-flood-42.91--85.66",
   "lat": 42.91,
   "lon": -85.66,
   "zip": "",
   "city": "2 NE Wyoming",
   "date": "2026-07-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Three cars stalled out in at least 2 feet of water on 28th Street east of Division Ave.",
   "sourceDetail": "NWS GRR — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-27-flood-42.85--85.66",
   "lat": 42.85,
   "lon": -85.66,
   "zip": "",
   "city": "1 N Cutlerville",
   "date": "2026-07-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water about 1 foot deep over Division Ave south of 60th St.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "nws-alert-4cccbe2929a6d77d.002-Branch-wind",
   "zip": "",
   "city": "Branch",
   "date": "2026-07-27",
   "county": "Branch",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Branch. Severe Thunderstorm Watch issued July 27 at 4:37PM EDT until July 27 at 8:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-520"
  },
  {
   "id": "nws-alert-4cccbe2929a6d77d.002-Cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Cass. Severe Thunderstorm Watch issued July 27 at 4:37PM EDT until July 27 at 8:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-520"
  },
  {
   "id": "nws-alert-4cccbe2929a6d77d.002-Hillsdal-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-07-27",
   "county": "Hillsdale",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Hillsdale. Severe Thunderstorm Watch issued July 27 at 4:37PM EDT until July 27 at 8:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-520"
  },
  {
   "id": "nws-alert-4cccbe2929a6d77d.002-St. Jose-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-27",
   "county": "St. Joseph",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for St. Joseph. Severe Thunderstorm Watch issued July 27 at 4:37PM EDT until July 27 at 8:00PM EDT by NWS Northern Indiana",
   "sourceDetail": "NWS Northern Indiana — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-07-27",
   "county": "Allegan",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Allegan. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-07-27",
   "county": "Barry",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Barry. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-07-27",
   "county": "Calhoun",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Calhoun. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-07-27",
   "county": "Clinton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Clinton. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-07-27",
   "county": "Eaton",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Eaton. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-27",
   "county": "Ingham",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Ingham. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Ionia-wind",
   "zip": "",
   "city": "Ionia",
   "date": "2026-07-27",
   "county": "Ionia",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Ionia. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-07-27",
   "county": "Jackson",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Jackson. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Kalamazo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-07-27",
   "county": "Kalamazoo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Kalamazoo. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-07-27",
   "county": "Kent",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Kent. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Muskegon-wind",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-07-27",
   "county": "Muskegon",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Muskegon. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Ottawa-wind",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-07-27",
   "county": "Ottawa",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Ottawa. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-be615c07a2f9eca4.003-Van Bure-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-07-27",
   "county": "Van Buren",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Van Buren. Severe Thunderstorm Watch issued July 27 at 3:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Gratiot-wind",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-07-27",
   "county": "Gratiot",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Gratiot. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Isabella-wind",
   "zip": "",
   "city": "Isabella",
   "date": "2026-07-27",
   "county": "Isabella",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Isabella. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Mecosta-wind",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-07-27",
   "county": "Mecosta",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Mecosta. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Montcalm-wind",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-07-27",
   "county": "Montcalm",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Montcalm. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-07-27",
   "county": "Newaygo",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Newaygo. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-1824f35064a89dcc.003-Oceana-wind",
   "zip": "",
   "city": "Oceana",
   "date": "2026-07-27",
   "county": "Oceana",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Oceana. Severe Thunderstorm Watch issued July 27 at 2:37PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-10074bc87c6f4f74.001-Clare-wind",
   "zip": "",
   "city": "Clare",
   "date": "2026-07-27",
   "county": "Clare",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Clare. Severe Thunderstorm Watch issued July 27 at 12:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-10074bc87c6f4f74.001-Lake-wind",
   "zip": "",
   "city": "Lake",
   "date": "2026-07-27",
   "county": "Lake",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Lake. Severe Thunderstorm Watch issued July 27 at 12:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "nws-alert-10074bc87c6f4f74.001-Osceola-wind",
   "zip": "",
   "city": "Osceola",
   "date": "2026-07-27",
   "county": "Osceola",
   "source": "NWS Weather Alert",
   "severity": "high",
   "eventType": "wind",
   "confidence": 72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Watch for Osceola. Severe Thunderstorm Watch issued July 27 at 12:42PM EDT until July 27 at 8:00PM EDT by NWS Grand Rapids MI",
   "sourceDetail": "NWS Grand Rapids MI — Severe Thunderstorm Watch",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-A-520"
  },
  {
   "id": "ww-APX-FF-W-21-2026-07-27-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-27. Duration: 115 min. Counties: Crawford, Kalkaska. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #21 (115 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-21"
  },
  {
   "id": "ww-APX-FF-W-21-2026-07-27-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-27. Duration: 115 min. Counties: Crawford, Kalkaska. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #21 (115 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-21"
  },
  {
   "id": "ww-APX-SV-W-87-2026-07-27-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 25 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #87 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-87"
  },
  {
   "id": "ww-APX-SV-W-87-2026-07-27-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 25 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #87 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-87"
  },
  {
   "id": "ww-APX-SV-W-87-2026-07-27-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 25 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #87 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-87"
  },
  {
   "id": "ww-APX-SV-W-87-2026-07-27-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 25 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #87 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-87"
  },
  {
   "id": "ww-APX-SV-W-83-2026-07-27-Chippewa-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 41 min. County: Chippewa. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #83 (41 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-83"
  },
  {
   "id": "ww-APX-SV-W-83-2026-07-27-Chippewa-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 41 min. County: Chippewa. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #83 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-83"
  },
  {
   "id": "ww-MQT-SV-W-43-2026-07-27-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 64 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #43 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-43"
  },
  {
   "id": "ww-MQT-SV-W-43-2026-07-27-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 64 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #43 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-43"
  },
  {
   "id": "ww-MQT-SV-W-43-2026-07-27-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 64 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #43 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-43"
  },
  {
   "id": "ww-MQT-SV-W-43-2026-07-27-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 64 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #43 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-43"
  },
  {
   "id": "ww-APX-SV-W-84-2026-07-27-Chippewa-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 23 min. Counties: Chippewa, Mackinac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #84 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-84"
  },
  {
   "id": "ww-APX-SV-W-84-2026-07-27-Chippewa-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 23 min. Counties: Chippewa, Mackinac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #84 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-84"
  },
  {
   "id": "ww-APX-SV-W-84-2026-07-27-Mackinac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Mackinac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 23 min. Counties: Chippewa, Mackinac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #84 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-84"
  },
  {
   "id": "ww-APX-SV-W-84-2026-07-27-Mackinac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Mackinac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 23 min. Counties: Chippewa, Mackinac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #84 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-84"
  },
  {
   "id": "ww-GRR-SV-W-110-2026-07-27-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 29 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #110 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-110"
  },
  {
   "id": "ww-GRR-SV-W-110-2026-07-27-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 29 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #110 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-110"
  },
  {
   "id": "iem-ww-IWX-SV-W-208-St. Joseph-wind-2026-07-27",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-27",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-208"
  },
  {
   "id": "iem-ww-IWX-SV-W-208-St. Joseph-hail-2026-07-27",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-27",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-208"
  },
  {
   "id": "ww-IWX-SV-W-208-2026-07-27-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 32 min. Counties: St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #208 (32 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-208"
  },
  {
   "id": "ww-IWX-SV-W-208-2026-07-27-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 32 min. Counties: St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #208 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-208"
  },
  {
   "id": "ww-MQT-SV-W-42-2026-07-27-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 54 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.5\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #42 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-42"
  },
  {
   "id": "ww-MQT-SV-W-42-2026-07-27-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 54 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.5\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #42 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-42"
  },
  {
   "id": "ww-MQT-SV-W-42-2026-07-27-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 54 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.5\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #42 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-42"
  },
  {
   "id": "ww-MQT-SV-W-42-2026-07-27-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 54 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.5\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #42 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-86-2026-07-27-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 61 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #86 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-86"
  },
  {
   "id": "ww-APX-SV-W-86-2026-07-27-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 61 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #86 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-86"
  },
  {
   "id": "ww-APX-SV-W-86-2026-07-27-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 61 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #86 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-86"
  },
  {
   "id": "ww-APX-SV-W-86-2026-07-27-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 61 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #86 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-86"
  },
  {
   "id": "ww-IWX-SV-W-212-2026-07-27-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #212 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-212"
  },
  {
   "id": "ww-IWX-SV-W-212-2026-07-27-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #212 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-212"
  },
  {
   "id": "ww-IWX-SV-W-212-2026-07-27-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #212 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-212"
  },
  {
   "id": "ww-IWX-SV-W-212-2026-07-27-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #212 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-212"
  },
  {
   "id": "ww-APX-SV-W-88-2026-07-27-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 24 min. Counties: Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #88 (24 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-88"
  },
  {
   "id": "ww-APX-SV-W-88-2026-07-27-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 24 min. Counties: Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #88 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-88"
  },
  {
   "id": "ww-APX-SV-W-88-2026-07-27-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 24 min. Counties: Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #88 (24 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-88"
  },
  {
   "id": "ww-APX-SV-W-88-2026-07-27-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 24 min. Counties: Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #88 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-88"
  },
  {
   "id": "ww-MQT-SV-W-44-2026-07-27-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 38 min. County: Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #44 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-44"
  },
  {
   "id": "ww-MQT-SV-W-44-2026-07-27-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 38 min. County: Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #44 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-44"
  },
  {
   "id": "ww-MQT-SV-W-46-2026-07-27-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 27 min. County: Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #46 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-46"
  },
  {
   "id": "ww-MQT-SV-W-46-2026-07-27-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 27 min. County: Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #46 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-46"
  },
  {
   "id": "ww-MQT-SV-W-45-2026-07-27-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 30 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #45 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-45"
  },
  {
   "id": "ww-MQT-SV-W-45-2026-07-27-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 30 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #45 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-45"
  },
  {
   "id": "ww-MQT-SV-W-45-2026-07-27-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 30 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #45 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-45"
  },
  {
   "id": "ww-MQT-SV-W-45-2026-07-27-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 30 min. Counties: Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #45 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-45"
  },
  {
   "id": "ww-APX-SV-W-85-2026-07-27-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 31 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #85 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-85"
  },
  {
   "id": "ww-APX-SV-W-85-2026-07-27-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 31 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #85 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-85"
  },
  {
   "id": "ww-APX-SV-W-85-2026-07-27-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 31 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #85 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-85"
  },
  {
   "id": "ww-APX-SV-W-85-2026-07-27-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 31 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #85 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-85"
  },
  {
   "id": "ww-IWX-SV-W-209-2026-07-27-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 50 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #209 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-209"
  },
  {
   "id": "ww-IWX-SV-W-209-2026-07-27-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 50 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #209 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-209"
  },
  {
   "id": "ww-APX-SV-W-82-2026-07-27-Chippewa-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 41 min. County: Chippewa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #82 (41 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-82"
  },
  {
   "id": "ww-APX-SV-W-82-2026-07-27-Chippewa-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-27. Duration: 41 min. County: Chippewa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #82 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-82"
  },
  {
   "id": "ww-IWX-SV-W-210-2026-07-27-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 26 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #210 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-210"
  },
  {
   "id": "ww-IWX-SV-W-210-2026-07-27-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 26 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #210 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-210"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Oceana-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Oceana-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-GRR-SV-W-111-2026-07-27-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-27. Duration: 36 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #111 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-111"
  },
  {
   "id": "ww-IWX-SV-W-217-2026-07-27-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #217 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-217"
  },
  {
   "id": "ww-IWX-SV-W-217-2026-07-27-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-27. Duration: 49 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #217 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-217"
  },
  {
   "id": "ww-MQT-SV-W-47-2026-07-27-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 46 min. County: Gogebic. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #47 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-47"
  },
  {
   "id": "ww-MQT-SV-W-47-2026-07-27-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 46 min. County: Gogebic. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #47 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-47"
  },
  {
   "id": "spc-2026-07-27-14-0458",
   "lat": 42.15,
   "lon": -84.04,
   "zip": "",
   "city": "Manchester",
   "date": "2026-07-27",
   "county": "Washtenaw",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-MQT-SV-W-48-2026-07-27-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 38 min. County: Menominee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #48 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-48"
  },
  {
   "id": "ww-MQT-SV-W-48-2026-07-27-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-27",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-27. Duration: 38 min. County: Menominee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #48 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-48"
  },
  {
   "id": "sps-2026-07-27-luce-hail",
   "zip": "",
   "city": "Luce",
   "date": "2026-07-27",
   "county": "Luce",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Luce — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-07-27",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 65,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "6 Special Weather Statements for Chippewa — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-vanburen-hail",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-07-27",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Van Buren — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-07-27",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-27",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-benzie-wind",
   "zip": "",
   "city": "Benzie",
   "date": "2026-07-27",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Benzie — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-alcona-wind",
   "zip": "",
   "city": "Alcona",
   "date": "2026-07-27",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Alcona — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-alpena-wind",
   "zip": "",
   "city": "Alpena",
   "date": "2026-07-27",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Alpena — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-07-27",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-otsego-wind",
   "zip": "",
   "city": "Otsego",
   "date": "2026-07-27",
   "county": "Otsego",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Otsego — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-oscoda-wind",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-07-27",
   "county": "Oscoda",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oscoda — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-oscoda-hail",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-07-27",
   "county": "Oscoda",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oscoda — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-presqueisl-hail",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-07-27",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-montmorenc-hail",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-07-27",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Montmorency — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-alpena-hail",
   "zip": "",
   "city": "Alpena",
   "date": "2026-07-27",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alpena — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-kalkaska-hail",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-07-27",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-roscommon-hail",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-07-27",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-missaukee-wind",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-07-27",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Missaukee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-gladwin-hail",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-07-27",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2026-07-27",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Bay — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-27-stjoseph-hail",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-27",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607270230-hail-46.63--85.04",
   "lat": 46.63,
   "lon": -85.04,
   "zip": "",
   "city": "Paradise",
   "date": "2026-07-26",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Paradise, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "spc-2026-07-26-15-0605",
   "lat": 46.23,
   "lon": -84.6,
   "zip": "",
   "city": "Rudyard",
   "date": "2026-07-26",
   "county": "Chippewa",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Social media report with picture. Time estimated via radar. (APX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "spc-2026-07-26-16-0624",
   "lat": 46.37,
   "lon": -85.04,
   "zip": "",
   "city": "Eckerman",
   "date": "2026-07-26",
   "county": "Chippewa",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Social media report with picture. (APX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-07-26-keweenaw-hail",
   "zip": "",
   "city": "Keweenaw",
   "date": "2026-07-26",
   "county": "Keweenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Keweenaw — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-23-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-07-23",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.9,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-23T23:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-07-23",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 34 ENE Rock of Ages, MI. Peak gust: 58 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-07-23-keweenaw-wind",
   "zip": "",
   "city": "Keweenaw",
   "date": "2026-07-23",
   "county": "Keweenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Keweenaw — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-21T18:46:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-07-21",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-97-2026-07-21-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 57 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #97 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-97"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "ww-DTX-SV-W-95-2026-07-21-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 66 min. Counties: Lapeer, Sanilac, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #95 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-95"
  },
  {
   "id": "iem-ww-DTX-SV-W-98-St. Clair-wind-2026-07-21",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-21",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-98"
  },
  {
   "id": "iem-ww-DTX-SV-W-98-St. Clair-hail-2026-07-21",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-21",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-98"
  },
  {
   "id": "iem-ww-DTX-SV-W-96-St. Clair-wind-2026-07-21",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-21",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-96"
  },
  {
   "id": "iem-ww-DTX-SV-W-96-St. Clair-hail-2026-07-21",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-21",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-96"
  },
  {
   "id": "ww-DTX-SV-W-96-2026-07-21-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 61 min. Counties: St. Clair, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #96 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-96"
  },
  {
   "id": "ww-DTX-SV-W-96-2026-07-21-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-21. Duration: 61 min. Counties: St. Clair, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #96 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-96"
  },
  {
   "id": "ww-APX-SV-W-81-2026-07-21-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-21. Duration: 27 min. County: Arenac. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #81 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-81"
  },
  {
   "id": "ww-APX-SV-W-81-2026-07-21-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-21. Duration: 27 min. County: Arenac. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #81 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-81"
  },
  {
   "id": "ww-APX-FF-W-20-2026-07-21-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-07-21",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-21. Duration: 210 min. County: Grand Traverse. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #20 (210 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-20"
  },
  {
   "id": "sps-2026-07-21-montmorenc-wind",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-07-21",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montmorency — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-wexford-hail",
   "zip": "",
   "city": "Wexford",
   "date": "2026-07-21",
   "county": "Wexford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Wexford — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-07-21",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-07-21",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-07-21",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-07-21",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-arenac-wind",
   "zip": "",
   "city": "Arenac",
   "date": "2026-07-21",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-07-21",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-lapeer-hail",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-07-21",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Lapeer — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-21",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-21-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-07-21",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607201331-hail-46.54--89.28",
   "lat": 46.54,
   "lon": -89.28,
   "zip": "",
   "city": "Ewen",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Ewen, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607202145-hail-46.53--87.55",
   "lat": 46.53,
   "lon": -87.55,
   "zip": "",
   "city": "4 NE Negaunee",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 NE Negaunee, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS MQT — Official NWS Obs via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202607202216-hail-46.55--87.51",
   "lat": 46.55,
   "lon": -87.51,
   "zip": "",
   "city": "4 W Trowbridge Park",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Trowbridge Park, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607202150-hail-46.52--87.40",
   "lat": 46.52,
   "lon": -87.4,
   "zip": "",
   "city": "2 S Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Marquette, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — NWS Employee via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607202151-hail-46.54--87.41",
   "lat": 46.54,
   "lon": -87.41,
   "zip": "",
   "city": "1 SW Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SW Marquette, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202607202155-hail-46.55--87.39",
   "lat": 46.55,
   "lon": -87.39,
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Marquette, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Cocorahs via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607202204-hail-46.53--87.43",
   "lat": 46.53,
   "lon": -87.43,
   "zip": "",
   "city": "1 S Trowbridge Park",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 S Trowbridge Park, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202607202223-hail-46.07--87.48",
   "lat": 46.07,
   "lon": -87.48,
   "zip": "",
   "city": "2 N Arnold",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 N Arnold, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS MQT — CO-OP Observer via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202607202224-hail-46.05--87.50",
   "lat": 46.05,
   "lon": -87.5,
   "zip": "",
   "city": "Arnold",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Arnold, MI. Hail size: 2.75\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-202607202336-hail-46.06--87.34",
   "lat": 46.06,
   "lon": -87.34,
   "zip": "",
   "city": "5 NE Watson",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 NE Watson, MI. Hail size: 3\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 3
  },
  {
   "id": "iem-202607202254-hail-45.96--87.07",
   "lat": 45.96,
   "lon": -87.07,
   "zip": "",
   "city": "2 S Perkins",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Perkins, MI. Hail size: 2.75\".",
   "sourceDetail": "NWS MQT — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-202607202254-hail-46.14--86.97",
   "lat": 46.14,
   "lon": -86.97,
   "zip": "",
   "city": "4 S Trenary",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 S Trenary, MI. Hail size: 2.75\".",
   "sourceDetail": "NWS MQT — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-202607202323-hail-45.71--87.44",
   "lat": 45.71,
   "lon": -87.44,
   "zip": "",
   "city": "Wilson",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Wilson, MI. Hail size: 2\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202607202325-hail-45.71--87.60",
   "lat": 45.71,
   "lon": -87.6,
   "zip": "",
   "city": "Hermansville",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Hermansville, MI. Hail size: 2.75\".",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-lsr-2026-07-20-wind-46.49--87.19",
   "lat": 46.49,
   "lon": -87.19,
   "zip": "",
   "city": "2 SW Shot Point",
   "date": "2026-07-20",
   "county": "Marquette",
   "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": "Spotter MQT-68 at Shot point beach. Observed NE-NW winds gusting to 49.8 mph. Damage to deck chairs tables broken glass. Delayed report.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-20-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "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 KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-20-flood-46.41--86.66",
   "lat": 46.41,
   "lon": -86.66,
   "zip": "",
   "city": "Munising",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Multiple videos on social media of sanding water, up to approximately 6 inches deep in places, in on Munising roadways. Time estimated by radar.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-20-flood-45.74--87.08",
   "lat": 45.74,
   "lon": -87.08,
   "zip": "",
   "city": "1 SSE Escanaba",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report of standing water on multiple roadways in Escanaba.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-20T22:28:00Z-tornado-46.50--87.17",
   "lat": 46.5,
   "lon": -87.17,
   "zip": "",
   "city": "Shot Point",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near Shot Point, MI. Corrects previous tornado report from Shot Point. Video shows waterspout making landfall on Shot Pt.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-20T23:47:00Z-tornado-45.55--87.36",
   "lat": 45.55,
   "lon": -87.36,
   "zip": "",
   "city": "4 SE Gourley",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 SE Gourley, MI. Drone footage and on ground surveys indicate the storm produced a swath of damage to mostly large white pines of approximately 1 to 3 feet in diameter. The survey team found damage consistent with a brief EF-1 tornado.",
   "sourceDetail": "NWS MQT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-20T23:58:00Z-tornado-45.57--87.25",
   "lat": 45.57,
   "lon": -87.25,
   "zip": "",
   "city": "8 ESE Gourley",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 8 ESE Gourley, MI. Drone footage and on-the-ground storm surveys documented damage path through softwood trees. The storm survey team found damage consistent with an EF-1 tornado with an approximate path length of 0.3 miles.",
   "sourceDetail": "NWS MQT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607202145-hail-46.55--87.51",
   "lat": 46.55,
   "lon": -87.51,
   "zip": "",
   "city": "4 W Trowbridge Park",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Trowbridge Park, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202607202236-hail-46.06--87.34",
   "lat": 46.06,
   "lon": -87.34,
   "zip": "",
   "city": "5 NE Watson",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 NE Watson, MI. Hail size: 3.25\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 3.25
  },
  {
   "id": "iem-202607201315-wind-47.03--88.53",
   "lat": 47.03,
   "lon": -88.53,
   "zip": "",
   "city": "Chassell",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Chassell, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607202240-wind-46.49--87.19",
   "lat": 46.49,
   "lon": -87.19,
   "zip": "",
   "city": "2 SW Shot Point",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SW Shot Point, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607210319-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-20T19:12:00Z-wind-46.30--85.45",
   "lat": 46.3,
   "lon": -85.45,
   "zip": "",
   "city": "5 SE Newberry",
   "date": "2026-07-20",
   "county": "Luce",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 5 SE Newberry, MI. Peak gust: 52 mph. AWOS station KERY Newberry.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-20T13:40:00Z-wind-46.93--88.46",
   "lat": 46.93,
   "lon": -88.46,
   "zip": "",
   "city": "1 ENE Arnheim",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 ENE Arnheim, MI. Peak gust: 54 mph. MDOT RWIS sensor /MC031/ Arnheim. Estimated time of wind gust.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-20T05:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "Mount Ojibwa",
   "date": "2026-07-20",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Mount Ojibwa, MI. Peak gust: 55 mph. RAWS Mesonet station OJIM4 Ojibway - Isle Royale. Delayed report.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-20T22:10:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-MQT-SV-W-39-2026-07-20-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Alger, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #39 (19 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-39"
  },
  {
   "id": "ww-MQT-SV-W-39-2026-07-20-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Alger, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #39 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-39"
  },
  {
   "id": "ww-MQT-SV-W-39-2026-07-20-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Alger, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #39 (19 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-39"
  },
  {
   "id": "ww-MQT-SV-W-39-2026-07-20-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Alger, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #39 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-39"
  },
  {
   "id": "ww-MQT-SV-W-34-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 37 min. Counties: Dickinson, Marquette. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #34 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-34"
  },
  {
   "id": "ww-MQT-SV-W-34-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 37 min. Counties: Dickinson, Marquette. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #34 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-34"
  },
  {
   "id": "ww-MQT-SV-W-34-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 37 min. Counties: Dickinson, Marquette. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #34 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-34"
  },
  {
   "id": "ww-MQT-SV-W-34-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 37 min. Counties: Dickinson, Marquette. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #34 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-34"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-29-2026-07-20-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Iron, Marquette, Ontonagon, Baraga, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #29 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-29"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-36-2026-07-20-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 52 min. Counties: Delta, Marquette, Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #36 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-36"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-30-2026-07-20-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 67 min. Counties: Baraga, Iron, Gogebic, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #30 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-30"
  },
  {
   "id": "ww-MQT-SV-W-40-2026-07-20-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 44 min. County: Menominee. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #40 (44 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-40"
  },
  {
   "id": "ww-MQT-SV-W-40-2026-07-20-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 44 min. County: Menominee. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #40 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-40"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-31-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 55 min. Counties: Alger, Marquette, Baraga, Iron, Dickinson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #31 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-31"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-33-2026-07-20-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 45 min. Counties: Dickinson, Gogebic, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #33 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-33"
  },
  {
   "id": "ww-MQT-SV-W-27-2026-07-20-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #27 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-27"
  },
  {
   "id": "ww-MQT-SV-W-27-2026-07-20-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #27 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-27"
  },
  {
   "id": "ww-MQT-SV-W-27-2026-07-20-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #27 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-27"
  },
  {
   "id": "ww-MQT-SV-W-27-2026-07-20-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #27 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-27"
  },
  {
   "id": "ww-MQT-SV-W-41-2026-07-20-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Delta, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #41 (19 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-41"
  },
  {
   "id": "ww-MQT-SV-W-41-2026-07-20-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Delta, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #41 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-41"
  },
  {
   "id": "ww-MQT-SV-W-41-2026-07-20-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Delta, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #41 (19 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-41"
  },
  {
   "id": "ww-MQT-SV-W-41-2026-07-20-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 19 min. Counties: Delta, Schoolcraft. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #41 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-41"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-37-2026-07-20-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 62 min. Counties: Alger, Marquette, Schoolcraft. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #37 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-37"
  },
  {
   "id": "ww-MQT-SV-W-38-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 49 min. Counties: Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #38 (49 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-38"
  },
  {
   "id": "ww-MQT-SV-W-38-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 49 min. Counties: Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #38 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-38"
  },
  {
   "id": "ww-MQT-SV-W-38-2026-07-20-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 49 min. Counties: Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #38 (49 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-38"
  },
  {
   "id": "ww-MQT-SV-W-38-2026-07-20-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 49 min. Counties: Dickinson, Menominee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #38 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "MQT-SV-W-38"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-APX-SV-W-80-2026-07-20-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 51 min. Counties: Antrim, Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #80 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-80"
  },
  {
   "id": "ww-MQT-SV-W-32-2026-07-20-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Marquette, Baraga. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #32 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-32"
  },
  {
   "id": "ww-MQT-SV-W-32-2026-07-20-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Marquette, Baraga. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #32 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-32"
  },
  {
   "id": "ww-MQT-SV-W-32-2026-07-20-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Marquette, Baraga. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #32 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-32"
  },
  {
   "id": "ww-MQT-SV-W-32-2026-07-20-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 66 min. Counties: Marquette, Baraga. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #32 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-32"
  },
  {
   "id": "ww-MQT-SV-W-28-2026-07-20-Keweenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 56 min. Counties: Keweenaw, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #28 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-28"
  },
  {
   "id": "ww-MQT-SV-W-28-2026-07-20-Keweenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 56 min. Counties: Keweenaw, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #28 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-28"
  },
  {
   "id": "ww-MQT-SV-W-28-2026-07-20-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 56 min. Counties: Keweenaw, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #28 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-28"
  },
  {
   "id": "ww-MQT-SV-W-28-2026-07-20-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 56 min. Counties: Keweenaw, Houghton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #28 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-28"
  },
  {
   "id": "ww-MQT-SV-W-35-2026-07-20-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 36 min. Counties: Dickinson, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #35 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-35"
  },
  {
   "id": "ww-MQT-SV-W-35-2026-07-20-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 36 min. Counties: Dickinson, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #35 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-35"
  },
  {
   "id": "ww-MQT-SV-W-35-2026-07-20-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 36 min. Counties: Dickinson, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #35 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-35"
  },
  {
   "id": "ww-MQT-SV-W-35-2026-07-20-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-20. Duration: 36 min. Counties: Dickinson, Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #35 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-35"
  },
  {
   "id": "ww-APX-SV-W-78-2026-07-20-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 47 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #78 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-78"
  },
  {
   "id": "ww-APX-SV-W-78-2026-07-20-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 47 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #78 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-78"
  },
  {
   "id": "ww-APX-SV-W-78-2026-07-20-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 47 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #78 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-78"
  },
  {
   "id": "ww-APX-SV-W-78-2026-07-20-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 47 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #78 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-78"
  },
  {
   "id": "ww-APX-SV-W-79-2026-07-20-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 49 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #79 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-79"
  },
  {
   "id": "ww-APX-SV-W-79-2026-07-20-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 49 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #79 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-79"
  },
  {
   "id": "ww-APX-SV-W-79-2026-07-20-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 49 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #79 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-79"
  },
  {
   "id": "ww-APX-SV-W-79-2026-07-20-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-20. Duration: 49 min. Counties: Grand Traverse, Leelanau. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #79 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-79"
  },
  {
   "id": "iem-ww-MQT-TO-W-3-Dickinson-tornado-2026-07-20",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Dickinson.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-3"
  },
  {
   "id": "iem-ww-MQT-TO-W-3-Marquette-tornado-2026-07-20",
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Marquette.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-3"
  },
  {
   "id": "iem-ww-MQT-TO-W-5-Dickinson-tornado-2026-07-20",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Dickinson.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-5"
  },
  {
   "id": "iem-ww-MQT-TO-W-5-Marquette-tornado-2026-07-20",
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Marquette.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-5"
  },
  {
   "id": "iem-ww-MQT-TO-W-5-Menominee-tornado-2026-07-20",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Menominee.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-5"
  },
  {
   "id": "iem-ww-MQT-TO-W-5-Delta-tornado-2026-07-20",
   "zip": "",
   "city": "Delta",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Delta.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-5"
  },
  {
   "id": "iem-ww-MQT-TO-W-7-Delta-tornado-2026-07-20",
   "zip": "",
   "city": "Delta",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Delta.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-7"
  },
  {
   "id": "iem-ww-MQT-TO-W-8-Alger-tornado-2026-07-20",
   "zip": "",
   "city": "Alger",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Alger.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-8"
  },
  {
   "id": "iem-ww-MQT-TO-W-6-Alger-tornado-2026-07-20",
   "zip": "",
   "city": "Alger",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Alger.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-6"
  },
  {
   "id": "iem-ww-MQT-TO-W-6-Marquette-tornado-2026-07-20",
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Marquette.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-6"
  },
  {
   "id": "iem-ww-MQT-TO-W-9-Delta-tornado-2026-07-20",
   "zip": "",
   "city": "Delta",
   "date": "2026-07-20",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Delta.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-9"
  },
  {
   "id": "iem-ww-MQT-TO-W-9-Menominee-tornado-2026-07-20",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Menominee.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-9"
  },
  {
   "id": "iem-ww-MQT-TO-W-4-Marquette-tornado-2026-07-20",
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Marquette.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-4"
  },
  {
   "id": "iem-ww-MQT-TO-W-2-Dickinson-tornado-2026-07-20",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-07-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Dickinson.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-2"
  },
  {
   "id": "iem-ww-MQT-TO-W-2-Iron-tornado-2026-07-20",
   "zip": "",
   "city": "Iron",
   "date": "2026-07-20",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Iron.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-2"
  },
  {
   "id": "ww-MQT-FF-W-3-2026-07-20-Alger",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS MQT on 2026-07-20. Duration: 146 min. County: Alger. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flash Flood Warning #3 (146 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FF-W-3"
  },
  {
   "id": "ww-APX-FF-W-19-2026-07-20-Leelanau",
   "zip": "",
   "city": "",
   "date": "2026-07-20",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-07-20. Duration: 237 min. County: Leelanau. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #19 (237 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-19"
  },
  {
   "id": "asos-TVC-2026-07-20-24595",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-07-20",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-07-20-19-1315",
   "lat": 47.03,
   "lon": -88.53,
   "zip": "",
   "city": "Chassell",
   "date": "2026-07-20",
   "county": "Houghton",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Estimated wind gusts to 60mph in Chassell. Pea sized hail was observed. Report via social media. (MQT)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-20-hail-46.55--87.40",
   "lat": 46.55,
   "lon": -87.4,
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-20",
   "county": "Marquette",
   "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 Marquette",
   "sourceDetail": "NWS MQT — NWS Employee via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-07-20-flood-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-07-20",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Social media reports of street flooding in Munising south of the roundabout on M-28 last evening. Delayed report.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-07-20-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-07-20",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-20-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-20",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-20-charlevoix-wind",
   "zip": "",
   "city": "Charlevoix",
   "date": "2026-07-20",
   "county": "Charlevoix",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Charlevoix — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-20-kalkaska-wind",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-07-20",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-18T18:06:00Z-wind-42.96--83.04",
   "lat": 42.96,
   "lon": -83.04,
   "zip": "",
   "city": "3 N Almont",
   "date": "2026-07-18",
   "county": "Lapeer",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near 3 N Almont, MI. Peak gust: 60 mph. Multiple large limbs down across the area. Estimated wind gusts to 60 mph.",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-93-2026-07-18-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 75 min. Counties: Lapeer, Genesee, Tuscola. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #93 (75 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-93"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-92-2026-07-18-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 43 min. Counties: Bay, Saginaw, Tuscola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #92 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-92"
  },
  {
   "id": "ww-DTX-SV-W-94-2026-07-18-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 71 min. Counties: Macomb, Lapeer, St. Clair. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #94 (71 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "ww-DTX-SV-W-94-2026-07-18-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 71 min. Counties: Macomb, Lapeer, St. Clair. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #94 (71 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "ww-DTX-SV-W-94-2026-07-18-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 71 min. Counties: Macomb, Lapeer, St. Clair. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #94 (71 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "ww-DTX-SV-W-94-2026-07-18-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-18. Duration: 71 min. Counties: Macomb, Lapeer, St. Clair. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #94 (71 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "iem-ww-DTX-SV-W-94-St. Clair-wind-2026-07-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "iem-ww-DTX-SV-W-94-St. Clair-hail-2026-07-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1.5\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "DTX-SV-W-94"
  },
  {
   "id": "sps-2026-07-18-cheboygan-hail",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-07-18",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-07-18",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-07-18",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Sanilac — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-07-18",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-18",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-07-18",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-07-18",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-18-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-07-18",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-17T23:40:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-07-17",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 55 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-MQT-SV-W-26-2026-07-17-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-17",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-17. Duration: 67 min. Counties: Alger, Schoolcraft. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #26 (67 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-26"
  },
  {
   "id": "ww-MQT-SV-W-26-2026-07-17-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-17",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-17. Duration: 67 min. Counties: Alger, Schoolcraft. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #26 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-26"
  },
  {
   "id": "ww-MQT-SV-W-26-2026-07-17-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-17",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-17. Duration: 67 min. Counties: Alger, Schoolcraft. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #26 (67 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-26"
  },
  {
   "id": "ww-MQT-SV-W-26-2026-07-17-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-17",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-17. Duration: 67 min. Counties: Alger, Schoolcraft. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #26 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-26"
  },
  {
   "id": "sps-2026-07-17-kalamazoo-hail",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-07-17",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-montcalm-wind",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-07-17",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-hillsdale-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-07-17",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-alger-hail",
   "zip": "",
   "city": "Alger",
   "date": "2026-07-17",
   "county": "Alger",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Alger — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-jackson-hail",
   "zip": "",
   "city": "Jackson",
   "date": "2026-07-17",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-07-17",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-ingham-hail",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-17",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ingham — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-mackinac-hail",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-07-17",
   "county": "Mackinac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Mackinac — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-emmet-hail",
   "zip": "",
   "city": "Emmet",
   "date": "2026-07-17",
   "county": "Emmet",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Emmet — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-luce-hail",
   "zip": "",
   "city": "Luce",
   "date": "2026-07-17",
   "county": "Luce",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Luce — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-07-17",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-17-emmet-wind",
   "zip": "",
   "city": "Emmet",
   "date": "2026-07-17",
   "county": "Emmet",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Emmet — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607152319-hail-42.80--83.62",
   "lat": 42.8,
   "lon": -83.62,
   "zip": "",
   "city": "Holly",
   "date": "2026-07-15",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Holly, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-GRR-SV-W-108-2026-07-15-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 47 min. Counties: Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #108 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-108"
  },
  {
   "id": "ww-GRR-SV-W-108-2026-07-15-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 47 min. Counties: Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #108 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-108"
  },
  {
   "id": "ww-GRR-SV-W-108-2026-07-15-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 47 min. Counties: Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #108 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-108"
  },
  {
   "id": "ww-GRR-SV-W-108-2026-07-15-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 47 min. Counties: Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #108 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-108"
  },
  {
   "id": "ww-DTX-SV-W-91-2026-07-15-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 28 min. County: Shiawassee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #91 (28 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-91"
  },
  {
   "id": "ww-DTX-SV-W-91-2026-07-15-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 28 min. County: Shiawassee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #91 (28 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-91"
  },
  {
   "id": "ww-GRR-SV-W-109-2026-07-15-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 30 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #109 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-109"
  },
  {
   "id": "ww-GRR-SV-W-109-2026-07-15-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-15. Duration: 30 min. County: Ingham. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #109 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-109"
  },
  {
   "id": "ww-DTX-SV-W-90-2026-07-15-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 53 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #90 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-90"
  },
  {
   "id": "ww-DTX-SV-W-90-2026-07-15-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 53 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #90 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-90"
  },
  {
   "id": "ww-DTX-SV-W-90-2026-07-15-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 53 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #90 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-90"
  },
  {
   "id": "ww-DTX-SV-W-90-2026-07-15-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-15",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-15. Duration: 53 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #90 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-90"
  },
  {
   "id": "sps-2026-07-15-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-07-15",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-15-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-07-15",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-15-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-07-15",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-15-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-07-15",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-14T09:21:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-07-14",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 54 mph. Delayed report. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "ww-APX-SV-W-77-2026-07-13-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-13",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-13. Duration: 19 min. Counties: Montmorency, Presque Isle, Cheboygan. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #77 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-77"
  },
  {
   "id": "sps-2026-07-13-presqueisl-hail",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-07-13",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-13-antrim-wind",
   "zip": "",
   "city": "Antrim",
   "date": "2026-07-13",
   "county": "Antrim",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Antrim — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-13-manistee-wind",
   "zip": "",
   "city": "Manistee",
   "date": "2026-07-13",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Manistee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607121200-hail-47.98--88.80",
   "lat": 47.98,
   "lon": -88.8,
   "zip": "",
   "city": "Malone Bay",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Malone Bay, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202607121400-hail-47.25--88.45",
   "lat": 47.25,
   "lon": -88.45,
   "zip": "",
   "city": "Calumet",
   "date": "2026-07-12",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Calumet, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202607121538-hail-46.55--88.17",
   "lat": 46.55,
   "lon": -88.17,
   "zip": "",
   "city": "2 E Three Lakes",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Three Lakes, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202607121624-hail-46.66--88.37",
   "lat": 46.66,
   "lon": -88.37,
   "zip": "",
   "city": "Herman",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Herman, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS MQT — CO-OP Observer via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202607121958-hail-46.49--87.36",
   "lat": 46.49,
   "lon": -87.36,
   "zip": "",
   "city": "Harvey",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Harvey, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-07-12-wind-46.55--87.38",
   "lat": 46.55,
   "lon": -87.38,
   "zip": "",
   "city": "Marquette C.G.",
   "date": "2026-07-12",
   "county": "Marquette",
   "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": "NOS Water Level Observation Network station MCGM4 Marquette C.G._ MI.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607121948-wind-46.55--87.38",
   "lat": 46.55,
   "lon": -87.38,
   "zip": "",
   "city": "Marquette C.G.",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Marquette C.G., MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-25-2026-07-12-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 48 min. Counties: Marquette, Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #25 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-25"
  },
  {
   "id": "ww-MQT-SV-W-18-2026-07-12-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 34 min. County: Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #18 (34 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-18"
  },
  {
   "id": "ww-MQT-SV-W-18-2026-07-12-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 34 min. County: Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #18 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-18"
  },
  {
   "id": "ww-MQT-SV-W-24-2026-07-12-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 31 min. Counties: Dickinson, Marquette. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #24 (31 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-24"
  },
  {
   "id": "ww-MQT-SV-W-24-2026-07-12-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 31 min. Counties: Dickinson, Marquette. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #24 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-24"
  },
  {
   "id": "ww-MQT-SV-W-24-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 31 min. Counties: Dickinson, Marquette. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #24 (31 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-24"
  },
  {
   "id": "ww-MQT-SV-W-24-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 31 min. Counties: Dickinson, Marquette. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #24 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-24"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-19-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 22 min. Counties: Baraga, Iron, Marquette. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #19 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "MQT-SV-W-19"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-23-2026-07-12-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 44 min. Counties: Delta, Marquette, Menominee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #23 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-22-2026-07-12-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 38 min. Counties: Marquette, Delta, Alger. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #22 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-22"
  },
  {
   "id": "ww-MQT-SV-W-21-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 47 min. County: Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #21 (47 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-21"
  },
  {
   "id": "ww-MQT-SV-W-21-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 47 min. County: Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #21 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-21"
  },
  {
   "id": "ww-MQT-SV-W-14-2026-07-12-Keweenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 40 min. County: Keweenaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #14 (40 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-14"
  },
  {
   "id": "ww-MQT-SV-W-14-2026-07-12-Keweenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 40 min. County: Keweenaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #14 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-14"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-17-2026-07-12-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 53 min. Counties: Alger, Marquette, Schoolcraft, Delta. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #17 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-17"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Keweenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-15-2026-07-12-Keweenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 45 min. Counties: Baraga, Houghton, Keweenaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #15 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-15"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Schoolcraft-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Schoolcraft-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Schoolcraft",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-20-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 59 min. Counties: Alger, Schoolcraft, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #20 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-20"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Keweenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Keweenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "ww-MQT-SV-W-16-2026-07-12-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-12",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-07-12. Duration: 62 min. Counties: Baraga, Houghton, Keweenaw, Marquette. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-16"
  },
  {
   "id": "sps-2026-07-12-keweenaw-hail",
   "zip": "",
   "city": "Keweenaw",
   "date": "2026-07-12",
   "county": "Keweenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Keweenaw — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-10-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-07-10",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "spc-2026-07-09-75-1653",
   "lat": 43.02,
   "lon": -84.85,
   "zip": "",
   "city": "Pewamo",
   "date": "2026-07-09",
   "county": "Ionia",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured by Ambient WS-4000. Large walnut tree split. Tree down over road a half mile away from this location. Neighbors outdoor furniture including polywood table thro (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 71,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607091653-wind-43.02--84.85",
   "lat": 43.02,
   "lon": -84.85,
   "zip": "",
   "city": "1 NNW Pewamo",
   "date": "2026-07-09",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NNW Pewamo, MI. Peak gust: 82 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 82,
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-07-09-ionia-wind",
   "zip": "",
   "city": "Ionia",
   "date": "2026-07-09",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 40 mph, possible possible (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-07-09",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, possible possible (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-07-09",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-07-09",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-shiawassee-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-07-09",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-ingham-hail",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-09",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ingham — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-clinton-hail",
   "zip": "",
   "city": "Clinton",
   "date": "2026-07-09",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-oscoda-wind",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-07-09",
   "county": "Oscoda",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oscoda — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-07-09",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-07-09",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-07-09",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-07-09",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-07-09",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2026-07-09",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-07-09",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-montcalm-wind",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-07-09",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-07-09",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-09",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for St. Clair — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-07-09",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-09-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-07-09",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-08-menominee-wind",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-08",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Menominee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-08-alcona-hail",
   "zip": "",
   "city": "Alcona",
   "date": "2026-07-08",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alcona — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-07-05-flood-42.25--84.41",
   "lat": 42.25,
   "lon": -84.41,
   "zip": "",
   "city": "1 NNW Jackson",
   "date": "2026-07-05",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report of flooded road at North Jackson Street and Van Buren Street. Along with other roads in the area.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-05-flood-42.27--84.45",
   "lat": 42.27,
   "lon": -84.45,
   "zip": "",
   "city": "3 NW Jackson",
   "date": "2026-07-05",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Road Closure due to flooding.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-05-flood-42.24--84.27",
   "lat": 42.24,
   "lon": -84.27,
   "zip": "",
   "city": "Leoni",
   "date": "2026-07-05",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Road closure due to flooding.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-04-wind-42.98--83.73",
   "lat": 42.98,
   "lon": -83.73,
   "zip": "",
   "city": "1 NE Flint Bishop Airpo",
   "date": "2026-07-04",
   "county": "Genesee",
   "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 Flint Bishop Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607042011-wind-42.98--83.73",
   "lat": 42.98,
   "lon": -83.73,
   "zip": "",
   "city": "1 NE Flint Bishop Airpo",
   "date": "2026-07-04",
   "county": "Genesee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NE Flint Bishop Airpo, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-89-2026-07-04-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-04. Duration: 40 min. Counties: Lapeer, Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #89 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-89"
  },
  {
   "id": "ww-DTX-SV-W-89-2026-07-04-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-04. Duration: 40 min. Counties: Lapeer, Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #89 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-89"
  },
  {
   "id": "ww-DTX-SV-W-89-2026-07-04-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-04. Duration: 40 min. Counties: Lapeer, Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #89 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-89"
  },
  {
   "id": "ww-DTX-SV-W-89-2026-07-04-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-04",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-04. Duration: 40 min. Counties: Lapeer, Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #89 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-89"
  },
  {
   "id": "asos-bf-FNT-2026-07-04",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-07-04",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-07-04-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-07-04",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-07-04",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-07-04",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Kent — wind gusts up to 55 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-07-04",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-07-04",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-shiawassee-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-07-04",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-07-04",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-07-04",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-07-04",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-04",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-04-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-07-04",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, possible possible (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202607030441-hail-42.42--84.99",
   "lat": 42.42,
   "lon": -84.99,
   "zip": "",
   "city": "2 SE Bellevue",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE Bellevue, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202607032029-hail-42.31--85.39",
   "lat": 42.31,
   "lon": -85.39,
   "zip": "",
   "city": "2 NE Galesburg",
   "date": "2026-07-03",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NE Galesburg, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-07-03",
   "county": "Berrien",
   "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": "Corrects source type of previous report from 1 N Benton Heights. ASOS station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-07-03",
   "county": "Van Buren",
   "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": "Corrects previous non-tstm wnd gst report from 4 SSE South Haven. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.08--86.36",
   "lat": 42.08,
   "lon": -86.36,
   "zip": "",
   "city": "2 WSW Spinks Corners",
   "date": "2026-07-03",
   "county": "Berrien",
   "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": "Mesonet station MISWM 2.0 W Spinks Corners (MAWN).",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-AZO-2026-07-03",
   "lat": 42.2347,
   "lon": -85.5519,
   "zip": "",
   "city": "KALAMAZOO",
   "date": "2026-07-03",
   "county": "Kalamazoo",
   "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": "KALAMAZOO (AZO) recorded a 79 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — KALAMAZOO (AZO) [365d backfill 2026-08]",
   "windSpeedMph": 79,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.17--85.82",
   "lat": 42.17,
   "lon": -85.82,
   "zip": "",
   "city": "1 E Lawton",
   "date": "2026-07-03",
   "county": "Van Buren",
   "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": "Mesonet station EW6899 Lawton.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-07-03",
   "county": "Allegan",
   "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": "Mesonet station AX192 WAYLAND.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-07-03",
   "county": "Kent",
   "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 KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-07-03",
   "county": "Calhoun",
   "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 station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-07-03",
   "county": "Van Buren",
   "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": "Mesonet station MILAW 0.9 SE Lawton (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2026-07-03",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-07-03",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-07-03",
   "county": "Jackson",
   "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 KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-07-03",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-07-03",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "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": "Mesonet station MIMHT East Lansing - 10m.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-07-03",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-07-03",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 63 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-07-03",
   "county": "Oakland",
   "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 Oakland County Intl Air",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.62--82.83",
   "lat": 42.62,
   "lon": -82.83,
   "zip": "",
   "city": "Selfridge ANGB",
   "date": "2026-07-03",
   "county": "Macomb",
   "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 Selfridge ANGB",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607031945-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607031950-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032000-wind-42.08--86.36",
   "lat": 42.08,
   "lon": -86.36,
   "zip": "",
   "city": "2 WSW Spinks Corners",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WSW Spinks Corners, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032005-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-07-03",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 91 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 91,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032020-wind-42.17--85.82",
   "lat": 42.17,
   "lon": -85.82,
   "zip": "",
   "city": "1 E Lawton",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Lawton, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032030-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-07-03",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 E Dorr, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032036-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-07-03",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032041-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-07-03",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032100-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ESE Lawton, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032120-wind-42.05--84.51",
   "lat": 42.05,
   "lon": -84.51,
   "zip": "",
   "city": "Moscow",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Moscow, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607032132-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-07-03",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032133-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032159-wind-42.24--83.53",
   "lat": 42.24,
   "lon": -83.53,
   "zip": "",
   "city": "Willow Run Airport",
   "date": "2026-07-03",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Willow Run Airport, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032200-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Holt, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032226-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "Detroit Metro Intl Airp",
   "date": "2026-07-03",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Detroit Metro Intl Airp, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032236-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-07-03",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Oakland County Intl Air, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607032313-wind-42.66--82.84",
   "lat": 42.66,
   "lon": -82.84,
   "zip": "",
   "city": "Chesterfield",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Chesterfield, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607032318-wind-42.62--82.83",
   "lat": 42.62,
   "lon": -82.83,
   "zip": "",
   "city": "Selfridge ANGB",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Selfridge ANGB, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T21:53:00Z-wind-41.94--83.43",
   "lat": 41.94,
   "lon": -83.43,
   "zip": "",
   "city": "Monroe Custer Airport",
   "date": "2026-07-03",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Monroe Custer Airport, MI. Peak gust: 55 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T21:35:00Z-wind-42.71--84.41",
   "lat": 42.71,
   "lon": -84.41,
   "zip": "",
   "city": "Okemos",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near Okemos, MI. Peak gust: 56 mph. Maple tree down on house. Measured 56 mph gust before power failure.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-03T09:21:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-07-03",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 51 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T21:15:00Z-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-07-03",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 53 mph. AWOS station KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T22:00:00Z-wind-42.71--84.48",
   "lat": 42.71,
   "lon": -84.48,
   "zip": "",
   "city": "2 SSE East Lansing",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE East Lansing, MI. Peak gust: 54 mph. Mesonet station MIHTC 1.8 S East Lansing (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-03T22:15:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 54 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-106-2026-07-03-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 62 min. County: Eaton. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #106 (62 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-106"
  },
  {
   "id": "ww-GRR-SV-W-106-2026-07-03-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 62 min. County: Eaton. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #106 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-106"
  },
  {
   "id": "ww-GRR-SV-W-100-2026-07-03-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #100 (86 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-100"
  },
  {
   "id": "ww-GRR-SV-W-100-2026-07-03-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #100 (86 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-100"
  },
  {
   "id": "ww-GRR-SV-W-100-2026-07-03-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #100 (86 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-100"
  },
  {
   "id": "ww-GRR-SV-W-100-2026-07-03-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #100 (86 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-100"
  },
  {
   "id": "ww-GRR-SV-W-101-2026-07-03-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 73 min. County: Kent. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #101 (73 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-101"
  },
  {
   "id": "ww-GRR-SV-W-101-2026-07-03-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 73 min. County: Kent. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #101 (73 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-101"
  },
  {
   "id": "ww-GRR-SV-W-105-2026-07-03-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 59 min. County: Ionia. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #105 (59 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-105"
  },
  {
   "id": "ww-GRR-SV-W-105-2026-07-03-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 59 min. County: Ionia. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #105 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-105"
  },
  {
   "id": "ww-GRR-SV-W-103-2026-07-03-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 55 min. County: Barry. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #103 (55 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-103"
  },
  {
   "id": "ww-GRR-SV-W-103-2026-07-03-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 55 min. County: Barry. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #103 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-103"
  },
  {
   "id": "ww-DTX-SV-W-87-2026-07-03-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 48 min. County: Lapeer. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #87 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-87"
  },
  {
   "id": "ww-DTX-SV-W-87-2026-07-03-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 48 min. County: Lapeer. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #87 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-87"
  },
  {
   "id": "ww-IWX-SV-W-200-2026-07-03-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 50 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #200 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-200"
  },
  {
   "id": "ww-IWX-SV-W-200-2026-07-03-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 50 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #200 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-200"
  },
  {
   "id": "ww-IWX-SV-W-200-2026-07-03-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 50 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #200 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-200"
  },
  {
   "id": "ww-IWX-SV-W-200-2026-07-03-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 50 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #200 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-200"
  },
  {
   "id": "iem-ww-IWX-SV-W-198-St. Joseph-wind-2026-07-03",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-03",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-198"
  },
  {
   "id": "iem-ww-IWX-SV-W-198-St. Joseph-hail-2026-07-03",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-03",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-198"
  },
  {
   "id": "ww-IWX-SV-W-198-2026-07-03-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 49 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #198 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-198"
  },
  {
   "id": "ww-IWX-SV-W-198-2026-07-03-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 49 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #198 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-198"
  },
  {
   "id": "ww-IWX-SV-W-199-2026-07-03-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 23 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #199 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-199"
  },
  {
   "id": "ww-IWX-SV-W-199-2026-07-03-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 23 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #199 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-199"
  },
  {
   "id": "ww-IWX-SV-W-199-2026-07-03-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 23 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #199 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-199"
  },
  {
   "id": "ww-IWX-SV-W-199-2026-07-03-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 23 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #199 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-199"
  },
  {
   "id": "ww-GRR-SV-W-104-2026-07-03-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. County: Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #104 (86 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-104"
  },
  {
   "id": "ww-GRR-SV-W-104-2026-07-03-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 86 min. County: Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #104 (86 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-104"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-GRR-SV-W-102-2026-07-03-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 93 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #102 (93 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-102"
  },
  {
   "id": "ww-IWX-SV-W-196-2026-07-03-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 63 min. County: Berrien. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #196 (63 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-196"
  },
  {
   "id": "ww-IWX-SV-W-196-2026-07-03-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 63 min. County: Berrien. Storm tags: wind: 70.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #196 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-196"
  },
  {
   "id": "ww-DTX-SV-W-85-2026-07-03-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 63 min. Counties: Oakland, Genesee. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #85 (63 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-85"
  },
  {
   "id": "ww-DTX-SV-W-85-2026-07-03-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 63 min. Counties: Oakland, Genesee. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #85 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-85"
  },
  {
   "id": "ww-DTX-SV-W-85-2026-07-03-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 63 min. Counties: Oakland, Genesee. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #85 (63 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-85"
  },
  {
   "id": "ww-DTX-SV-W-85-2026-07-03-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 63 min. Counties: Oakland, Genesee. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #85 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-85"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "ww-GRR-SV-W-107-2026-07-03-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 68 min. Counties: Clinton, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #107 (68 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-107"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "iem-ww-DTX-SV-W-82-St. Clair-wind-2026-07-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "iem-ww-DTX-SV-W-82-St. Clair-hail-2026-07-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-82-2026-07-03-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 58 min. Counties: Macomb, St. Clair, Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #82 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-82"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "ww-DTX-SV-W-83-2026-07-03-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 46 min. Counties: Oakland, Macomb, Shiawassee, Livingston. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #83 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-83"
  },
  {
   "id": "iem-ww-IWX-SV-W-197-St. Joseph-wind-2026-07-03",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-03",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 70 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-197"
  },
  {
   "id": "iem-ww-IWX-SV-W-197-St. Joseph-hail-2026-07-03",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-07-03",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.88\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-197"
  },
  {
   "id": "ww-IWX-SV-W-197-2026-07-03-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 73 min. Counties: Cass, St. Joseph. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #197 (73 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-197"
  },
  {
   "id": "ww-IWX-SV-W-197-2026-07-03-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-07-03. Duration: 73 min. Counties: Cass, St. Joseph. Storm tags: wind: 70.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #197 (73 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-197"
  },
  {
   "id": "ww-DTX-SV-W-86-2026-07-03-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 62 min. County: Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #86 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-86"
  },
  {
   "id": "ww-DTX-SV-W-86-2026-07-03-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-07-03. Duration: 62 min. County: Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #86 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-86"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "ww-GRR-SV-W-99-2026-07-03-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-03",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-03. Duration: 90 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #99 (90 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-99"
  },
  {
   "id": "iem-ww-DTX-SV-W-88-St. Clair-wind-2026-07-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-88"
  },
  {
   "id": "iem-ww-DTX-SV-W-88-St. Clair-hail-2026-07-03",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-07-03",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-88"
  },
  {
   "id": "iem-ww-GRR-TO-W-21-Ingham-tornado-2026-07-03",
   "zip": "",
   "city": "Ingham",
   "date": "2026-07-03",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ingham.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-21"
  },
  {
   "id": "asos-bf-BTL-2026-07-03",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-07-03",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-07-03",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-07-03",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-07-03",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-07-03",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2026-07-03",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-07-03",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-07-03",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-07-03",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LWA-2026-07-03",
   "lat": 42.3508,
   "lon": -86.2561,
   "zip": "",
   "city": "South Haven",
   "date": "2026-07-03",
   "county": "Van Buren",
   "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": "South Haven (LWA) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — South Haven (LWA) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-07-03-120-2120",
   "lat": 42.05,
   "lon": -84.51,
   "zip": "",
   "city": "Moscow",
   "date": "2026-07-03",
   "county": "Hillsdale",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Spotter estimates 60 mph wind gusts occurring. Small tree limbs down (1 to 2 inches in diameter). (IWX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-03-152-2313",
   "lat": 42.66,
   "lon": -82.84,
   "zip": "",
   "city": "Chesterfield",
   "date": "2026-07-03",
   "county": "Macomb",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured on a handheld anemometer (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-03-147-2239",
   "lat": 42,
   "lon": -83.14,
   "zip": "",
   "city": "Detroit River Light",
   "date": "2026-07-03",
   "county": "Monroe",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at Detroit River Light (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-03-149-2249",
   "lat": 42.43,
   "lon": -82.87,
   "zip": "",
   "city": "Grosse Pointe YC",
   "date": "2026-07-03",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at Grosse Pointe Yacht Club (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-07-03-151-2252",
   "lat": 42.36,
   "lon": -82.91,
   "zip": "",
   "city": "Peche Island Light",
   "date": "2026-07-03",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at Peche Island Light (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 64,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-03-wind-42.67--84.49",
   "lat": 42.67,
   "lon": -84.49,
   "zip": "",
   "city": "3 NE Holt",
   "date": "2026-07-03",
   "county": "Ingham",
   "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": "Mesonet station MIMSU 3.2 NE Holt (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-07-03-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-07-03",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-berrien-wind",
   "zip": "",
   "city": "Berrien",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Berrien — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-07-03",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-07-03",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-07-03",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Chippewa — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-mackinac-hail",
   "zip": "",
   "city": "Mackinac",
   "date": "2026-07-03",
   "county": "Mackinac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Mackinac — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-luce-hail",
   "zip": "",
   "city": "Luce",
   "date": "2026-07-03",
   "county": "Luce",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Luce — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-schoolcraf-hail",
   "zip": "",
   "city": "Schoolcraft",
   "date": "2026-07-03",
   "county": "Schoolcraft",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Schoolcraft — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-07-03",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-03-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2026-07-03",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-44.96--85.20",
   "lat": 44.96,
   "lon": -85.2,
   "zip": "",
   "city": "1 SSE Bellaire",
   "date": "2026-07-02",
   "county": "Antrim",
   "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 1 SSE Bellaire",
   "sourceDetail": "NWS APX — NWS Employee via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-07-02",
   "county": "Otsego",
   "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 KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-44.90--83.45",
   "lat": 44.9,
   "lon": -83.45,
   "zip": "",
   "city": "1 W Ossineke",
   "date": "2026-07-02",
   "county": "Alpena",
   "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 1 W Ossineke",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-02-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-07-02",
   "county": "Allegan",
   "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": "Time estimated by radar. Mesonet station BDLM4 Bradley.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607020631-wind-44.96--85.20",
   "lat": 44.96,
   "lon": -85.2,
   "zip": "",
   "city": "1 SSE Bellaire",
   "date": "2026-07-02",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Bellaire, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — NWS Employee via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607020703-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-07-02",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607020805-wind-44.90--83.45",
   "lat": 44.9,
   "lon": -83.45,
   "zip": "",
   "city": "1 W Ossineke",
   "date": "2026-07-02",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 W Ossineke, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607030354-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-07-02",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-02T07:56:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-07-02",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 53 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-73-2026-07-02-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 60 min. Counties: Benzie, Leelanau, Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #73 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-73"
  },
  {
   "id": "ww-APX-SV-W-74-2026-07-02-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 38 min. County: Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #74 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-74"
  },
  {
   "id": "ww-APX-SV-W-74-2026-07-02-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 38 min. County: Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #74 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-74"
  },
  {
   "id": "ww-APX-SV-W-75-2026-07-02-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 43 min. County: Antrim. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #75 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-75"
  },
  {
   "id": "ww-APX-SV-W-75-2026-07-02-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 43 min. County: Antrim. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #75 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-75"
  },
  {
   "id": "ww-APX-SV-W-76-2026-07-02-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 22 min. County: Alpena. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #76 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-76"
  },
  {
   "id": "ww-APX-SV-W-76-2026-07-02-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-02",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-02. Duration: 22 min. County: Alpena. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #76 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-76"
  },
  {
   "id": "asos-bf-GLR-2026-07-02",
   "lat": 45.0135,
   "lon": -84.7036,
   "zip": "",
   "city": "GAYLORD",
   "date": "2026-07-02",
   "county": "Otsego",
   "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": "GAYLORD (GLR) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GAYLORD (GLR) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-07-02-otsego-wind",
   "zip": "",
   "city": "Otsego",
   "date": "2026-07-02",
   "county": "Otsego",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Otsego — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-02-montmorenc-wind",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-07-02",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montmorency — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-02-muskegon-wind",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-07-02",
   "county": "Muskegon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Muskegon — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-02-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-07-02",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "spc-2026-07-01-185-1623",
   "lat": 45.03,
   "lon": -84.7,
   "zip": "",
   "city": "Gaylord",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Estimated gust of 60-70 mph. (APX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-07-01-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-07-01",
   "county": "Otsego",
   "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 station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-07-01-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-07-01",
   "county": "Roscommon",
   "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 KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607011623-wind-45.03--84.70",
   "lat": 45.03,
   "lon": -84.7,
   "zip": "",
   "city": "2 WSW Gaylord",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WSW Gaylord, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS APX — Amateur Radio via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202607011624-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202607020348-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-01T15:24:00Z-wind-44.86--85.86",
   "lat": 44.86,
   "lon": -85.86,
   "zip": "",
   "city": "1 NE Maple City",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near 1 NE Maple City, MI. Peak gust: 50 mph. Lots of small branches down, BBQ blown off deck. Estimated 50 mph peak gust.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-07-01T15:42:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 56 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-01T16:00:00Z-wind-44.88--85.68",
   "lat": 44.88,
   "lon": -85.68,
   "zip": "",
   "city": "1 NE Bingham",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NE Bingham, MI. Peak gust: 56 mph. Mesonet station MINWM 0.8 NE Bingham (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-01T15:50:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2026-07-01",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 SSW Charlevoix, MI. Peak gust: 52 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-07-01T18:55:00Z-wind-43.94--82.72",
   "lat": 43.94,
   "lon": -82.72,
   "zip": "",
   "city": "Port Hope",
   "date": "2026-07-01",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Port Hope, MI. Peak gust: 53 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-96-2026-07-01-Lake-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 57 min. County: Lake. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #96 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-96"
  },
  {
   "id": "ww-GRR-SV-W-96-2026-07-01-Lake-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 57 min. County: Lake. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #96 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-96"
  },
  {
   "id": "ww-APX-SV-W-68-2026-07-01-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #68 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-68"
  },
  {
   "id": "ww-APX-SV-W-68-2026-07-01-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #68 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-68"
  },
  {
   "id": "ww-APX-SV-W-68-2026-07-01-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #68 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-68"
  },
  {
   "id": "ww-APX-SV-W-68-2026-07-01-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #68 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-68"
  },
  {
   "id": "ww-APX-SV-W-67-2026-07-01-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 36 min. Counties: Antrim, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #67 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-67"
  },
  {
   "id": "ww-APX-SV-W-67-2026-07-01-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 36 min. Counties: Antrim, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #67 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-67"
  },
  {
   "id": "ww-APX-SV-W-67-2026-07-01-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 36 min. Counties: Antrim, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #67 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-67"
  },
  {
   "id": "ww-APX-SV-W-67-2026-07-01-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 36 min. Counties: Antrim, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #67 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-67"
  },
  {
   "id": "ww-GRR-SV-W-98-2026-07-01-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 37 min. County: Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #98 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-98"
  },
  {
   "id": "ww-GRR-SV-W-98-2026-07-01-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 37 min. County: Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #98 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-98"
  },
  {
   "id": "ww-APX-SV-W-70-2026-07-01-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 41 min. Counties: Otsego, Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #70 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-70"
  },
  {
   "id": "ww-APX-SV-W-70-2026-07-01-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 41 min. Counties: Otsego, Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #70 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-70"
  },
  {
   "id": "ww-APX-SV-W-70-2026-07-01-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 41 min. Counties: Otsego, Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #70 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-70"
  },
  {
   "id": "ww-APX-SV-W-70-2026-07-01-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 41 min. Counties: Otsego, Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #70 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-70"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-71-2026-07-01-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #71 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-71"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-57-2026-07-01-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 49 min. Counties: Antrim, Crawford, Oscoda. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #57 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-62-2026-07-01-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Arenac, Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #62 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-62"
  },
  {
   "id": "ww-APX-SV-W-72-2026-07-01-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #72 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-72"
  },
  {
   "id": "ww-APX-SV-W-72-2026-07-01-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #72 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-72"
  },
  {
   "id": "ww-APX-SV-W-72-2026-07-01-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #72 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-72"
  },
  {
   "id": "ww-APX-SV-W-72-2026-07-01-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #72 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-72"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Charlevoix-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Charlevoix-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-58-2026-07-01-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 24 min. Counties: Otsego, Charlevoix, Wexford, Manistee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #58 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-58"
  },
  {
   "id": "ww-APX-SV-W-69-2026-07-01-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 44 min. County: Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #69 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-69"
  },
  {
   "id": "ww-APX-SV-W-69-2026-07-01-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 44 min. County: Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #69 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-69"
  },
  {
   "id": "ww-APX-SV-W-66-2026-07-01-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 23 min. County: Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #66 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-66"
  },
  {
   "id": "ww-APX-SV-W-66-2026-07-01-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 23 min. County: Grand Traverse. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #66 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-66"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-APX-SV-W-60-2026-07-01-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 34 min. Counties: Oscoda, Alcona, Alpena, Montmorency, Presque Isle. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #60 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-60"
  },
  {
   "id": "ww-GRR-SV-W-95-2026-07-01-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 58 min. County: Mason. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #95 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-95"
  },
  {
   "id": "ww-GRR-SV-W-95-2026-07-01-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 58 min. County: Mason. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #95 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-95"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Montmorency, Presque Isle, Alpena, Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-APX-SV-W-55-2026-07-01-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 47 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #55 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-97-2026-07-01-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 39 min. County: Mason. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #97 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-97"
  },
  {
   "id": "ww-GRR-SV-W-97-2026-07-01-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-07-01. Duration: 39 min. County: Mason. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #97 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-97"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-65-2026-07-01-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 52 min. Counties: Arenac, Ogemaw, Gladwin. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #65 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-65"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-53-2026-07-01-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 46 min. Counties: Grand Traverse, Leelanau, Benzie. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #53 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-53"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-64-2026-07-01-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 50 min. Counties: Ogemaw, Arenac, Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #64 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-61-2026-07-01-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 31 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #61 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-61"
  },
  {
   "id": "ww-APX-SV-W-61-2026-07-01-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 31 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #61 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-61"
  },
  {
   "id": "ww-APX-SV-W-61-2026-07-01-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 31 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #61 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-61"
  },
  {
   "id": "ww-APX-SV-W-61-2026-07-01-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 31 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #61 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-61"
  },
  {
   "id": "ww-APX-SV-W-63-2026-07-01-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #63 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-63"
  },
  {
   "id": "ww-APX-SV-W-63-2026-07-01-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #63 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-63"
  },
  {
   "id": "ww-APX-SV-W-63-2026-07-01-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #63 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-63"
  },
  {
   "id": "ww-APX-SV-W-63-2026-07-01-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 39 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #63 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-63"
  },
  {
   "id": "ww-APX-SV-W-54-2026-07-01-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 29 min. County: Leelanau. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #54 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-54"
  },
  {
   "id": "ww-APX-SV-W-54-2026-07-01-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 29 min. County: Leelanau. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #54 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-54"
  },
  {
   "id": "asos-bf-HTL-2026-07-01",
   "lat": 44.3598,
   "lon": -84.6711,
   "zip": "",
   "city": "HOUGHTON LAKE",
   "date": "2026-07-01",
   "county": "Roscommon",
   "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": "HOUGHTON LAKE (HTL) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOUGHTON LAKE (HTL) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2026-07-01",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GLR-2026-07-01",
   "lat": 45.0135,
   "lon": -84.7036,
   "zip": "",
   "city": "GAYLORD",
   "date": "2026-07-01",
   "county": "Otsego",
   "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": "GAYLORD (GLR) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GAYLORD (GLR) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-07-01-198-1753",
   "lat": 44.25,
   "lon": -83.46,
   "zip": "",
   "city": "East Tawas",
   "date": "2026-07-01",
   "county": "Iosco",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Mesonet station XTAW Tawas Point. (APX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Charlevoix-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Charlevoix-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Emmet-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Emmet-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "ww-APX-SV-W-56-2026-07-01-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-07-01",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-07-01. Duration: 48 min. Counties: Antrim, Charlevoix, Leelanau, Kalkaska, Otsego, Grand Traverse, Cheboygan, Emmet, Crawford. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #56 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-56"
  },
  {
   "id": "iem-ww-DTX-SV-W-81-Bay-wind-2026-07-01",
   "zip": "",
   "city": "Bay",
   "date": "2026-07-01",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Bay on 2026-07-01. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-81"
  },
  {
   "id": "iem-ww-DTX-SV-W-81-Bay-hail-2026-07-01",
   "zip": "",
   "city": "Bay",
   "date": "2026-07-01",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Bay on 2026-07-01. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-81"
  },
  {
   "id": "iem-ww-DTX-SV-W-81-Midland-wind-2026-07-01",
   "zip": "",
   "city": "Midland",
   "date": "2026-07-01",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Midland on 2026-07-01. Storm tag wind: 60 mph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-81"
  },
  {
   "id": "iem-ww-DTX-SV-W-81-Midland-hail-2026-07-01",
   "zip": "",
   "city": "Midland",
   "date": "2026-07-01",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX for Midland on 2026-07-01. Storm tag hail: 1\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-81"
  },
  {
   "id": "sps-2026-07-01-lake-hail",
   "zip": "",
   "city": "Lake",
   "date": "2026-07-01",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-osceola-wind",
   "zip": "",
   "city": "Osceola",
   "date": "2026-07-01",
   "county": "Osceola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Osceola — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-clare-wind",
   "zip": "",
   "city": "Clare",
   "date": "2026-07-01",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clare — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-07-01",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-07-01",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-07-01",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-marquette-hail",
   "zip": "",
   "city": "Marquette",
   "date": "2026-07-01",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Marquette — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-kalkaska-wind",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-07-01",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-roscommon-wind",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-07-01",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-07-01-alcona-wind",
   "zip": "",
   "city": "Alcona",
   "date": "2026-07-01",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Alcona — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606302310-hail-46.17--86.97",
   "lat": 46.17,
   "lon": -86.97,
   "zip": "",
   "city": "1 S Trenary",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 S Trenary, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202606302314-hail-46.19--86.97",
   "lat": 46.19,
   "lon": -86.97,
   "zip": "",
   "city": "Trenary",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Trenary, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202606302333-hail-46.43--86.84",
   "lat": 46.43,
   "lon": -86.84,
   "zip": "",
   "city": "Au Train",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Au Train, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-geo-2026-06-30T23:26:00Z-tornado-46.16--86.95",
   "lat": 46.16,
   "lon": -86.95,
   "zip": "",
   "city": "3 SSE Trenary",
   "date": "2026-06-30",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 3 SSE Trenary, MI. NWS Storm Survey confirmed a weak,, short-lived, EF-0 tornado occurred south of Trenary, traveling from Delta into Alger County.",
   "sourceDetail": "NWS MQT — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Delta-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Delta-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-12-2026-06-30-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 60 min. Counties: Alger, Delta, Marquette. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #12 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-12"
  },
  {
   "id": "ww-MQT-SV-W-13-2026-06-30-Alger-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 61 min. County: Alger. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #13 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-13"
  },
  {
   "id": "ww-MQT-SV-W-13-2026-06-30-Alger-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 61 min. County: Alger. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #13 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-13"
  },
  {
   "id": "ww-MQT-SV-W-11-2026-06-30-Dickinson-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 32 min. Counties: Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #11 (32 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-11"
  },
  {
   "id": "ww-MQT-SV-W-11-2026-06-30-Dickinson-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 32 min. Counties: Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #11 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-11"
  },
  {
   "id": "ww-MQT-SV-W-11-2026-06-30-Menominee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 32 min. Counties: Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #11 (32 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-11"
  },
  {
   "id": "ww-MQT-SV-W-11-2026-06-30-Menominee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-30",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-30. Duration: 32 min. Counties: Dickinson, Menominee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #11 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-11"
  },
  {
   "id": "iem-ww-MQT-TO-W-1-Alger-tornado-2026-06-30",
   "zip": "",
   "city": "Alger",
   "date": "2026-06-30",
   "county": "Alger",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Alger.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-1"
  },
  {
   "id": "iem-ww-MQT-TO-W-1-Delta-tornado-2026-06-30",
   "zip": "",
   "city": "Delta",
   "date": "2026-06-30",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Delta.",
   "sourceDetail": "NWS MQT — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-TO-W-1"
  },
  {
   "id": "fema-4925",
   "zip": "",
   "city": "Michigan",
   "date": "2026-06-30",
   "county": "Statewide",
   "source": "FEMA Disaster Declaration",
   "severity": "severe",
   "eventType": "flood",
   "confidence": 100,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal Major Disaster Declaration: SEVERE STORMS, TORNADOES, AND FLOODING. Incident period: 2026-04-10 to 2026-04-21.",
   "sourceDetail": "DR-4925 — SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "sps-2026-06-30-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-06-30",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-06-30",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-delta-hail",
   "zip": "",
   "city": "Delta",
   "date": "2026-06-30",
   "county": "Delta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Delta — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-schoolcraf-hail",
   "zip": "",
   "city": "Schoolcraft",
   "date": "2026-06-30",
   "county": "Schoolcraft",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Schoolcraft — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-manistee-wind",
   "zip": "",
   "city": "Manistee",
   "date": "2026-06-30",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Manistee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-presqueisl-wind",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-06-30",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-30-mason-wind",
   "zip": "",
   "city": "Mason",
   "date": "2026-06-30",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606291540-hail-44.98--84.97",
   "lat": 44.98,
   "lon": -84.97,
   "zip": "",
   "city": "Alba",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Alba, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-06-29-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 NW Pellston",
   "date": "2026-06-29",
   "county": "Emmet",
   "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": "Pellston Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-29-wind-46.48--89.95",
   "lat": 46.48,
   "lon": -89.95,
   "zip": "",
   "city": "1 W Wakefield",
   "date": "2026-06-29",
   "county": "Gogebic",
   "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": "MI-01 Wakefield.",
   "sourceDetail": "NWS MQT — Dept of Highways via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-29-wind-46.87--89.32",
   "lat": 46.87,
   "lon": -89.32,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "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": "63 mph wind gust measured at the Ontonagon NWS GLOS station.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-29-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "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": "Corrects previous tstm wnd gst report from Ontonagon. Two 73 mph wind gusts measured at the Ontonagon MDOT RWIS between 621 pm and 634 pm.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 73,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-29-wind-46.82--87.73",
   "lat": 46.82,
   "lon": -87.73,
   "zip": "",
   "city": "Big Bay",
   "date": "2026-06-29",
   "county": "Marquette",
   "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": "Not much significant wind damage has occurred during the severe thunderstorm_ but there was some minor damage done to trees from what I was able to observe. Estimated wind gusts to 50 mph.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.49--84.71",
   "lat": 45.49,
   "lon": -84.71,
   "zip": "",
   "city": "2 E Brutus",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.07--85.27",
   "lat": 45.07,
   "lon": -85.27,
   "zip": "",
   "city": "Central Lake",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water in basements reported by Emergency Manager.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.13--85.62",
   "lat": 45.13,
   "lon": -85.62,
   "zip": "",
   "city": "Northport",
   "date": "2026-06-29",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "4.81 inches reported along with water over multiple roadways.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.57--85.11",
   "lat": 45.57,
   "lon": -85.11,
   "zip": "",
   "city": "Good Hart",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Picture of flooding up to a house in Good Hart, MI. Reporting water entering the garage and basement.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.53--84.70",
   "lat": 45.53,
   "lon": -84.7,
   "zip": "",
   "city": "4 NE Brutus",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "A portion of W Burt Lake Rd washed out. Other streams and culverts in the area are being monitored. Time estimated.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.54--85.11",
   "lat": 45.54,
   "lon": -85.11,
   "zip": "",
   "city": "2 S Good Hart",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "M-119 (Tunnel of Trees) closed between S Lamkin Rd and N Lamkin Rd due to flooding. Per MDOT.",
   "sourceDetail": "NWS APX — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606291520-hail-44.98--84.97",
   "lat": 44.98,
   "lon": -84.97,
   "zip": "",
   "city": "Alba",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Alba, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202606291756-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 NW Pellston",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NW Pellston, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606292104-wind-46.48--89.95",
   "lat": 46.48,
   "lon": -89.95,
   "zip": "",
   "city": "1 W Wakefield",
   "date": "2026-06-29",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 W Wakefield, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Dept of Highways via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606292210-wind-46.87--89.32",
   "lat": 46.87,
   "lon": -89.32,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Ontonagon, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606292221-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Ontonagon, MI. Peak gust: 84 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 84,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606300139-wind-46.82--87.73",
   "lat": 46.82,
   "lon": -87.73,
   "zip": "",
   "city": "Big Bay",
   "date": "2026-06-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Big Bay, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29T21:19:00Z-wind-46.87--89.32",
   "lat": 46.87,
   "lon": -89.32,
   "zip": "",
   "city": "1 NW Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NW Ontonagon, MI. Peak gust: 52 mph. Public weather station KMIONTON26 measured a 45mph along the Ontonagon River. Delayed report.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29T21:01:00Z-wind-46.52--90.12",
   "lat": 46.52,
   "lon": -90.12,
   "zip": "",
   "city": "4 NW Bessemer",
   "date": "2026-06-29",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 NW Bessemer, MI. Peak gust: 53 mph. AWOS station KIWD Ironwood Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-29T23:18:00Z-wind-46.53--87.55",
   "lat": 46.53,
   "lon": -87.55,
   "zip": "",
   "city": "4 NE Negaunee",
   "date": "2026-06-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 NE Negaunee, MI. Peak gust: 53 mph. Mesonet station CW4331 WFO-Negaunee Township.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-52-2026-06-29-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 24 min. County: Cheboygan. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #52 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-52"
  },
  {
   "id": "ww-APX-SV-W-52-2026-06-29-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 24 min. County: Cheboygan. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #52 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-52"
  },
  {
   "id": "ww-APX-SV-W-50-2026-06-29-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 43 min. Counties: Cheboygan, Emmet. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #50 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-50"
  },
  {
   "id": "ww-APX-SV-W-50-2026-06-29-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 43 min. Counties: Cheboygan, Emmet. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #50 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-50"
  },
  {
   "id": "ww-APX-SV-W-50-2026-06-29-Emmet-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 43 min. Counties: Cheboygan, Emmet. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #50 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-50"
  },
  {
   "id": "ww-APX-SV-W-50-2026-06-29-Emmet-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 43 min. Counties: Cheboygan, Emmet. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #50 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-50"
  },
  {
   "id": "ww-APX-SV-W-51-2026-06-29-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 50 min. Counties: Cheboygan, Emmet. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #51 (50 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-51"
  },
  {
   "id": "ww-APX-SV-W-51-2026-06-29-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 50 min. Counties: Cheboygan, Emmet. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #51 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-51"
  },
  {
   "id": "ww-APX-SV-W-51-2026-06-29-Emmet-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 50 min. Counties: Cheboygan, Emmet. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #51 (50 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-51"
  },
  {
   "id": "ww-APX-SV-W-51-2026-06-29-Emmet-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 50 min. Counties: Cheboygan, Emmet. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #51 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-51"
  },
  {
   "id": "ww-MQT-SV-W-9-2026-06-29-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 45 min. Counties: Baraga, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #9 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-9"
  },
  {
   "id": "ww-MQT-SV-W-9-2026-06-29-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 45 min. Counties: Baraga, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #9 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-9"
  },
  {
   "id": "ww-MQT-SV-W-9-2026-06-29-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 45 min. Counties: Baraga, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #9 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-9"
  },
  {
   "id": "ww-MQT-SV-W-9-2026-06-29-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 45 min. Counties: Baraga, Marquette. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #9 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-9"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Houghton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Houghton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-MQT-SV-W-8-2026-06-29-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 47 min. Counties: Baraga, Houghton, Ontonagon. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #8 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-8"
  },
  {
   "id": "ww-APX-SV-W-49-2026-06-29-Leelanau-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 49 min. County: Leelanau. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #49 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-49"
  },
  {
   "id": "ww-APX-SV-W-49-2026-06-29-Leelanau-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-29. Duration: 49 min. County: Leelanau. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #49 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-10-2026-06-29-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 22 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #10 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-10"
  },
  {
   "id": "ww-MQT-SV-W-10-2026-06-29-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 22 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #10 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-10"
  },
  {
   "id": "ww-MQT-SV-W-10-2026-06-29-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 22 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #10 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-10"
  },
  {
   "id": "ww-MQT-SV-W-10-2026-06-29-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-29. Duration: 22 min. Counties: Gogebic, Ontonagon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #10 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-10"
  },
  {
   "id": "ww-APX-FF-W-16-2026-06-29-Leelanau",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-29. Duration: 119 min. County: Leelanau. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #16 (119 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-16"
  },
  {
   "id": "ww-APX-FF-W-18-2026-06-29-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-29. Duration: 177 min. County: Cheboygan. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #18 (177 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-18"
  },
  {
   "id": "ww-APX-FF-W-15-2026-06-29-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-29. Duration: 112 min. County: Antrim. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #15 (112 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-15"
  },
  {
   "id": "ww-APX-FF-W-17-2026-06-29-Emmet",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-29. Duration: 172 min. County: Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #17 (172 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-17"
  },
  {
   "id": "ww-APX-FA-W-15-2026-06-29-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-06-29. Duration: 1010 min. Counties: Antrim, Charlevoix. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #15 (1010 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-15"
  },
  {
   "id": "ww-APX-FA-W-15-2026-06-29-Charlevoix",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-06-29. Duration: 1010 min. Counties: Antrim, Charlevoix. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #15 (1010 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-15"
  },
  {
   "id": "ww-APX-FA-W-14-2026-06-29-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-06-29. Duration: 364 min. Counties: Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #14 (364 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-14"
  },
  {
   "id": "ww-APX-FA-W-14-2026-06-29-Emmet",
   "zip": "",
   "city": "",
   "date": "2026-06-29",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-06-29. Duration: 364 min. Counties: Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #14 (364 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-14"
  },
  {
   "id": "asos-bf-PLN-2026-06-29",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2026-06-29",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.07--85.26",
   "lat": 45.07,
   "lon": -85.26,
   "zip": "",
   "city": "Central Lake",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooding/ponding water near Herrick St.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-29-flood-45.08--85.26",
   "lat": 45.08,
   "lon": -85.26,
   "zip": "",
   "city": "Central Lake",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Darmon Pl is closed due to flooding.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-06-29-dickinson-hail",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-06-29",
   "county": "Dickinson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Dickinson — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRB — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-06-29",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Menominee — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-schoolcraf-hail",
   "zip": "",
   "city": "Schoolcraft",
   "date": "2026-06-29",
   "county": "Schoolcraft",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Schoolcraft — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-leelanau-hail",
   "zip": "",
   "city": "Leelanau",
   "date": "2026-06-29",
   "county": "Leelanau",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Leelanau — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-antrim-hail",
   "zip": "",
   "city": "Antrim",
   "date": "2026-06-29",
   "county": "Antrim",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Antrim — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-cheboygan-hail",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-06-29",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-ontonagon-wind",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-29",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Ontonagon — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-gogebic-wind",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-06-29",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Gogebic — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-houghton-hail",
   "zip": "",
   "city": "Houghton",
   "date": "2026-06-29",
   "county": "Houghton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Houghton — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-29-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-06-29",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606251909-hail-43.86--83.96",
   "lat": 43.86,
   "lon": -83.96,
   "zip": "",
   "city": "Pinconning",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Pinconning, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-25-hail-42.95--82.56",
   "lat": 42.95,
   "lon": -82.56,
   "zip": "",
   "city": "Kimball",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Kimball",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202606252043-hail-43.52--84.12",
   "lat": 43.52,
   "lon": -84.12,
   "zip": "",
   "city": "Freeland",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Freeland, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606252110-hail-43.14--83.31",
   "lat": 43.14,
   "lon": -83.31,
   "zip": "",
   "city": "4 S Deerfield Township",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 S Deerfield Township, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606252111-hail-43.07--83.06",
   "lat": 43.07,
   "lon": -83.06,
   "zip": "",
   "city": "2 S Goodland",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Goodland, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-lsr-2026-06-25-hail-43.03--82.99",
   "lat": 43.03,
   "lon": -82.99,
   "zip": "",
   "city": "3 W Capac",
   "date": "2026-06-25",
   "county": "St. Clair",
   "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 3 W Capac",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-25-hail-43.01--82.93",
   "lat": 43.01,
   "lon": -82.93,
   "zip": "",
   "city": "Capac",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Many ping pong sided hail stones reported with the largest up to golf ball sized.",
   "sourceDetail": "NWS DTX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-06-25-hail-42.99--82.77",
   "lat": 42.99,
   "lon": -82.77,
   "zip": "",
   "city": "Emmett",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Many ping pong sized hail stones with some golf balls.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. Counties: Genesee, Saginaw, Shiawassee, Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. County: Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-78-2026-06-25-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 39 min. County: Lapeer. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #78 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-78"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Tuscola, Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Tuscola, Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-77-2026-06-25-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 52 min. Counties: Midland, Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #77 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-77"
  },
  {
   "id": "ww-DTX-SV-W-76-2026-06-25-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 30 min. Counties: Lapeer, St. Clair. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #76 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-76"
  },
  {
   "id": "ww-DTX-SV-W-76-2026-06-25-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 30 min. Counties: Lapeer, St. Clair. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #76 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-76"
  },
  {
   "id": "iem-ww-DTX-SV-W-76-St. Clair-wind-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 50 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-76"
  },
  {
   "id": "iem-ww-DTX-SV-W-76-St. Clair-hail-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-76"
  },
  {
   "id": "ww-APX-FF-W-13-2026-06-25-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-25. Duration: 191 min. Counties: Alcona, Alpena. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #13 (191 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-13"
  },
  {
   "id": "ww-APX-FF-W-13-2026-06-25-Alpena",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-25. Duration: 191 min. Counties: Alcona, Alpena. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #13 (191 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-13"
  },
  {
   "id": "ww-APX-FF-W-14-2026-06-25-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-06-25. Duration: 128 min. County: Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #14 (128 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-14"
  },
  {
   "id": "ww-DTX-SV-W-75-2026-06-25-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 31 min. County: Bay. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #75 (31 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-75"
  },
  {
   "id": "ww-DTX-SV-W-75-2026-06-25-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-25. Duration: 31 min. County: Bay. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #75 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-75"
  },
  {
   "id": "iem-ww-DTX-SV-W-79-St. Clair-wind-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 50 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-79"
  },
  {
   "id": "iem-ww-DTX-SV-W-79-St. Clair-hail-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-79"
  },
  {
   "id": "iem-ww-DTX-SV-W-80-Macomb-wind-2026-06-25",
   "zip": "",
   "city": "Macomb",
   "date": "2026-06-25",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Macomb. Max wind tag: 50 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-80"
  },
  {
   "id": "iem-ww-DTX-SV-W-80-Macomb-hail-2026-06-25",
   "zip": "",
   "city": "Macomb",
   "date": "2026-06-25",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Macomb. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-80"
  },
  {
   "id": "iem-ww-DTX-SV-W-80-St. Clair-wind-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 50 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-80"
  },
  {
   "id": "iem-ww-DTX-SV-W-80-St. Clair-hail-2026-06-25",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-80"
  },
  {
   "id": "sps-2026-06-25-oscoda-hail",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-06-25",
   "county": "Oscoda",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oscoda — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-missaukee-hail",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-06-25",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Missaukee — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-wexford-hail",
   "zip": "",
   "city": "Wexford",
   "date": "2026-06-25",
   "county": "Wexford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Wexford — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-crawford-hail",
   "zip": "",
   "city": "Crawford",
   "date": "2026-06-25",
   "county": "Crawford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Crawford — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-25",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for St. Clair — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-06-25",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Bay — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-clare-hail",
   "zip": "",
   "city": "Clare",
   "date": "2026-06-25",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clare — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-roscommon-hail",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-06-25",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-06-25",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-06-25",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-06-25",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-25",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-25-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-25",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606241946-hail-46.41--89.13",
   "lat": 46.41,
   "lon": -89.13,
   "zip": "",
   "city": "2 ENE Paulding",
   "date": "2026-06-24",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 ENE Paulding, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606242125-hail-46.06--88.63",
   "lat": 46.06,
   "lon": -88.63,
   "zip": "",
   "city": "Caspian",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Caspian, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606242130-hail-46.06--88.60",
   "lat": 46.06,
   "lon": -88.6,
   "zip": "",
   "city": "Gaastra",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Gaastra, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606242225-hail-45.79--87.91",
   "lat": 45.79,
   "lon": -87.91,
   "zip": "",
   "city": "Norway",
   "date": "2026-06-24",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Norway, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-geo-2026-06-24-flood-46.76--88.45",
   "lat": 46.76,
   "lon": -88.45,
   "zip": "",
   "city": "L'Anse",
   "date": "2026-06-24",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Image shared on social media of flooded intersection at E Broad and Fourth. Time estimated by radar.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-24-flood-45.79--87.90",
   "lat": 45.79,
   "lon": -87.9,
   "zip": "",
   "city": "Norway",
   "date": "2026-06-24",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Widespread street flooding in downtown Norway.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-MQT-SV-W-6-2026-06-24-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-24. Duration: 50 min. County: Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #6 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-6"
  },
  {
   "id": "ww-MQT-SV-W-6-2026-06-24-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-24. Duration: 50 min. County: Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #6 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-6"
  },
  {
   "id": "ww-MQT-SV-W-7-2026-06-24-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-24. Duration: 54 min. County: Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #7 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-7"
  },
  {
   "id": "ww-MQT-SV-W-7-2026-06-24-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-24. Duration: 54 min. County: Iron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #7 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-7"
  },
  {
   "id": "sps-2026-06-24-ontonagon-hail",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-24",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-24-iron-hail",
   "zip": "",
   "city": "Iron",
   "date": "2026-06-24",
   "county": "Iron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Iron — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-24-dickinson-hail",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-06-24",
   "county": "Dickinson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Dickinson — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606202140-hail-44.03--83.98",
   "lat": 44.03,
   "lon": -83.98,
   "zip": "",
   "city": "2 E Sterling",
   "date": "2026-06-20",
   "county": "Arenac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Sterling, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202606202230-hail-44.01--83.90",
   "lat": 44.01,
   "lon": -83.9,
   "zip": "",
   "city": "3 SW Omer",
   "date": "2026-06-20",
   "county": "Arenac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SW Omer, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "sps-2026-06-20-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-20",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-20-arenac-hail",
   "zip": "",
   "city": "Arenac",
   "date": "2026-06-20",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-18-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-06-18",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-18-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-18",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-DTW-2026-06-17",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-06-17",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-06-17",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-06-17",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-06-17-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-06-17",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606161700-hail-42.61--83.66",
   "lat": 42.61,
   "lon": -83.66,
   "zip": "",
   "city": "3 SW Highland",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SW Highland, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161715-hail-44.49--84.41",
   "lat": 44.49,
   "lon": -84.41,
   "zip": "",
   "city": "9 N Saint Helen",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 9 N Saint Helen, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Law Enforcement via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161750-hail-44.58--84.25",
   "lat": 44.58,
   "lon": -84.25,
   "zip": "",
   "city": "3 SSE Luzerne",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SSE Luzerne, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161758-hail-44.42--84.25",
   "lat": 44.42,
   "lon": -84.25,
   "zip": "",
   "city": "Clear Lake",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Clear Lake, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Law Enforcement via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161801-hail-44.26--84.43",
   "lat": 44.26,
   "lon": -84.43,
   "zip": "",
   "city": "2 NNE Twin Lakes Area",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNE Twin Lakes Area, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161801-hail-44.80--84.05",
   "lat": 44.8,
   "lon": -84.05,
   "zip": "",
   "city": "Comins",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Comins, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161811-hail-43.99--84.61",
   "lat": 43.99,
   "lon": -84.61,
   "zip": "",
   "city": "6 W Gladwin",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 6 W Gladwin, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202606161820-hail-44.77--84.05",
   "lat": 44.77,
   "lon": -84.05,
   "zip": "",
   "city": "2 S Comins",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Comins, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161825-hail-44.13--84.47",
   "lat": 44.13,
   "lon": -84.47,
   "zip": "",
   "city": "4 NW Hockaday",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 NW Hockaday, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Law Enforcement via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161830-hail-44.52--83.78",
   "lat": 44.52,
   "lon": -83.78,
   "zip": "",
   "city": "4 SW Glennie",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 SW Glennie, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Law Enforcement via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161851-hail-45.00--84.11",
   "lat": 45,
   "lon": -84.11,
   "zip": "",
   "city": "2 E Atlanta",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Atlanta, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202606161858-hail-44.39--84.12",
   "lat": 44.39,
   "lon": -84.12,
   "zip": "",
   "city": "3 S Rose City",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 S Rose City, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606161923-hail-45.27--83.93",
   "lat": 45.27,
   "lon": -83.93,
   "zip": "",
   "city": "6 SW Hawks",
   "date": "2026-06-16",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 6 SW Hawks, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202606162008-hail-43.15--85.51",
   "lat": 43.15,
   "lon": -85.51,
   "zip": "",
   "city": "3 NE Rockford",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NE Rockford, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162014-hail-43.17--85.51",
   "lat": 43.17,
   "lon": -85.51,
   "zip": "",
   "city": "4 SSE Cedar Springs",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 SSE Cedar Springs, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162019-hail-43.17--85.35",
   "lat": 43.17,
   "lon": -85.35,
   "zip": "",
   "city": "5 W Greenville",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 W Greenville, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162024-hail-42.51--85.26",
   "lat": 42.51,
   "lon": -85.26,
   "zip": "",
   "city": "1 SSW Dowling",
   "date": "2026-06-16",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SSW Dowling, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202606162050-hail-42.60--85.09",
   "lat": 42.6,
   "lon": -85.09,
   "zip": "",
   "city": "Nashville",
   "date": "2026-06-16",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Nashville, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202606162132-hail-43.21--85.19",
   "lat": 43.21,
   "lon": -85.19,
   "zip": "",
   "city": "4 SW Sidney",
   "date": "2026-06-16",
   "county": "Montcalm",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 SW Sidney, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162136-hail-43.63--84.66",
   "lat": 43.63,
   "lon": -84.66,
   "zip": "",
   "city": "4 W Oil City",
   "date": "2026-06-16",
   "county": "Isabella",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Oil City, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162247-hail-41.93--86.17",
   "lat": 41.93,
   "lon": -86.17,
   "zip": "",
   "city": "1 N Pokagon",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N Pokagon, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202606162206-hail-42.55--83.28",
   "lat": 42.55,
   "lon": -83.28,
   "zip": "",
   "city": "2 NE Franklin",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NE Franklin, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162207-hail-41.95--86.49",
   "lat": 41.95,
   "lon": -86.49,
   "zip": "",
   "city": "Baroda",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Baroda, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162215-hail-42.33--86.31",
   "lat": 42.33,
   "lon": -86.31,
   "zip": "",
   "city": "4 NW Covert",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 NW Covert, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202606162217-hail-42.02--86.49",
   "lat": 42.02,
   "lon": -86.49,
   "zip": "",
   "city": "2 E Stevensville",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Stevensville, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202606162219-hail-41.95--86.34",
   "lat": 41.95,
   "lon": -86.34,
   "zip": "",
   "city": "Berrien Springs",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Berrien Springs, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202606162219-hail-41.93--86.33",
   "lat": 41.93,
   "lon": -86.33,
   "zip": "",
   "city": "1 SE Berrien Springs",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SE Berrien Springs, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162225-hail-42.38--86.25",
   "lat": 42.38,
   "lon": -86.25,
   "zip": "",
   "city": "2 SE South Haven",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE South Haven, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202606162230-hail-41.94--86.29",
   "lat": 41.94,
   "lon": -86.29,
   "zip": "",
   "city": "3 ESE Berrien Springs",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 ESE Berrien Springs, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162235-hail-41.96--86.31",
   "lat": 41.96,
   "lon": -86.31,
   "zip": "",
   "city": "2 E Berrien Springs",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Berrien Springs, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162243-hail-41.92--86.19",
   "lat": 41.92,
   "lon": -86.19,
   "zip": "",
   "city": "1 NW Pokagon",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NW Pokagon, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162259-hail-41.90--86.04",
   "lat": 41.9,
   "lon": -86.04,
   "zip": "",
   "city": "2 SW Cassopolis",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SW Cassopolis, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162300-hail-41.97--85.96",
   "lat": 41.97,
   "lon": -85.96,
   "zip": "",
   "city": "2 NW Penn",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NW Penn, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606162305-hail-41.92--85.92",
   "lat": 41.92,
   "lon": -85.92,
   "zip": "",
   "city": "Vandalia",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Vandalia, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202606162309-hail-41.92--85.91",
   "lat": 41.92,
   "lon": -85.91,
   "zip": "",
   "city": "Vandalia",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Vandalia, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202606162312-hail-41.93--85.90",
   "lat": 41.93,
   "lon": -85.9,
   "zip": "",
   "city": "1 NE Vandalia",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Vandalia, MI. Hail size: 2\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202606170033-hail-42.97--85.07",
   "lat": 42.97,
   "lon": -85.07,
   "zip": "",
   "city": "1 SW Ionia",
   "date": "2026-06-16",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SW Ionia, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "asos-bf-DTW-2026-06-16",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-06-16",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-16-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-06-16",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606162145-hail-41.93--86.17",
   "lat": 41.93,
   "lon": -86.17,
   "zip": "",
   "city": "1 NNE Pokagon",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NNE Pokagon, MI. Hail size: 2\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202606161848-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "Detroit Metro Intl Airp",
   "date": "2026-06-16",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Detroit Metro Intl Airp, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606162345-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-06-16",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-16T21:54:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-06-16",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 52 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-16T20:35:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-06-16",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 53 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-35-2026-06-16-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 43 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #35 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-35"
  },
  {
   "id": "ww-APX-SV-W-35-2026-06-16-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 43 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #35 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-35"
  },
  {
   "id": "ww-APX-SV-W-35-2026-06-16-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 43 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #35 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-35"
  },
  {
   "id": "ww-APX-SV-W-35-2026-06-16-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 43 min. Counties: Alcona, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #35 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-35"
  },
  {
   "id": "ww-GRR-SV-W-85-2026-06-16-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Kent, Montcalm. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #85 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-85"
  },
  {
   "id": "ww-GRR-SV-W-85-2026-06-16-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Kent, Montcalm. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #85 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-85"
  },
  {
   "id": "ww-GRR-SV-W-85-2026-06-16-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Kent, Montcalm. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #85 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-85"
  },
  {
   "id": "ww-GRR-SV-W-85-2026-06-16-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Kent, Montcalm. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #85 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-85"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-39-2026-06-16-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 26 min. Counties: Gladwin, Ogemaw, Roscommon. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #39 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-39"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-36-2026-06-16-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 51 min. Counties: Crawford, Roscommon, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #36 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-36"
  },
  {
   "id": "ww-APX-SV-W-37-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 41 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #37 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-37"
  },
  {
   "id": "ww-APX-SV-W-37-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 41 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #37 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-37"
  },
  {
   "id": "ww-APX-SV-W-37-2026-06-16-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 41 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #37 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-37"
  },
  {
   "id": "ww-APX-SV-W-37-2026-06-16-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 41 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #37 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-89-2026-06-16-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 47 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #89 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-89"
  },
  {
   "id": "ww-GRR-SV-W-89-2026-06-16-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 47 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #89 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-89"
  },
  {
   "id": "ww-GRR-SV-W-89-2026-06-16-Isabella-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 47 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #89 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-89"
  },
  {
   "id": "ww-GRR-SV-W-89-2026-06-16-Isabella-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 47 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #89 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-89"
  },
  {
   "id": "ww-GRR-SV-W-94-2026-06-16-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 27 min. County: Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #94 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-94"
  },
  {
   "id": "ww-GRR-SV-W-94-2026-06-16-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 27 min. County: Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #94 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-94"
  },
  {
   "id": "ww-APX-SV-W-38-2026-06-16-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 64 min. Counties: Montmorency, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #38 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-38"
  },
  {
   "id": "ww-APX-SV-W-38-2026-06-16-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 64 min. Counties: Montmorency, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #38 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-38"
  },
  {
   "id": "ww-APX-SV-W-38-2026-06-16-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 64 min. Counties: Montmorency, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #38 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-38"
  },
  {
   "id": "ww-APX-SV-W-38-2026-06-16-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 64 min. Counties: Montmorency, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #38 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-38"
  },
  {
   "id": "ww-GRR-SV-W-86-2026-06-16-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 39 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #86 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-86"
  },
  {
   "id": "ww-GRR-SV-W-86-2026-06-16-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 39 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #86 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-86"
  },
  {
   "id": "ww-GRR-SV-W-86-2026-06-16-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 39 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #86 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-86"
  },
  {
   "id": "ww-GRR-SV-W-86-2026-06-16-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 39 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #86 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-86"
  },
  {
   "id": "ww-GRR-SV-W-87-2026-06-16-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 31 min. Counties: Gratiot, Clinton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #87 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-87"
  },
  {
   "id": "ww-GRR-SV-W-87-2026-06-16-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 31 min. Counties: Gratiot, Clinton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #87 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-87"
  },
  {
   "id": "ww-GRR-SV-W-87-2026-06-16-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 31 min. Counties: Gratiot, Clinton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #87 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-87"
  },
  {
   "id": "ww-GRR-SV-W-87-2026-06-16-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 31 min. Counties: Gratiot, Clinton. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #87 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-87"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-44-2026-06-16-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 36 min. Counties: Iosco, Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #44 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-44"
  },
  {
   "id": "ww-IWX-SV-W-192-2026-06-16-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-16. Duration: 39 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #192 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-192"
  },
  {
   "id": "ww-IWX-SV-W-192-2026-06-16-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-16. Duration: 39 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #192 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-192"
  },
  {
   "id": "iem-ww-IWX-SV-W-192-St. Joseph-wind-2026-06-16",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-16",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-192"
  },
  {
   "id": "iem-ww-IWX-SV-W-192-St. Joseph-hail-2026-06-16",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-16",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 1\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-192"
  },
  {
   "id": "iem-ww-IWX-SV-W-194-St. Joseph-wind-2026-06-16",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-16",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-194"
  },
  {
   "id": "iem-ww-IWX-SV-W-194-St. Joseph-hail-2026-06-16",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-16",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 1\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-194"
  },
  {
   "id": "ww-APX-SV-W-43-2026-06-16-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 49 min. County: Montmorency. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #43 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-43"
  },
  {
   "id": "ww-APX-SV-W-43-2026-06-16-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 49 min. County: Montmorency. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #43 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "APX-SV-W-43"
  },
  {
   "id": "ww-GRR-SV-W-91-2026-06-16-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 29 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #91 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-91"
  },
  {
   "id": "ww-GRR-SV-W-91-2026-06-16-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 29 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #91 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-91"
  },
  {
   "id": "ww-GRR-SV-W-91-2026-06-16-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 29 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #91 (29 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-91"
  },
  {
   "id": "ww-GRR-SV-W-91-2026-06-16-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 29 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #91 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-91"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-APX-SV-W-42-2026-06-16-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 80 min. Counties: Alcona, Alpena, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #42 (80 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-42"
  },
  {
   "id": "ww-DTX-SV-W-73-2026-06-16-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 51 min. County: Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #73 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-73"
  },
  {
   "id": "ww-DTX-SV-W-73-2026-06-16-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 51 min. County: Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #73 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-73"
  },
  {
   "id": "ww-IWX-SV-W-188-2026-06-16-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-16. Duration: 49 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #188 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-188"
  },
  {
   "id": "ww-IWX-SV-W-188-2026-06-16-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-16. Duration: 49 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #188 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-188"
  },
  {
   "id": "ww-GRR-SV-W-93-2026-06-16-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 35 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #93 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-93"
  },
  {
   "id": "ww-GRR-SV-W-93-2026-06-16-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 35 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #93 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-93"
  },
  {
   "id": "ww-GRR-SV-W-93-2026-06-16-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 35 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #93 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-93"
  },
  {
   "id": "ww-GRR-SV-W-93-2026-06-16-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 35 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #93 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-93"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-41-2026-06-16-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 44 min. Counties: Gladwin, Ogemaw, Roscommon, Arenac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #41 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-40-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 47 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #40 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-40"
  },
  {
   "id": "ww-APX-SV-W-40-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 47 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #40 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-40"
  },
  {
   "id": "ww-APX-SV-W-40-2026-06-16-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 47 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #40 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-40"
  },
  {
   "id": "ww-APX-SV-W-40-2026-06-16-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 47 min. Counties: Ogemaw, Oscoda. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #40 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-40"
  },
  {
   "id": "ww-GRR-SV-W-92-2026-06-16-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 19 min. County: Clare. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #92 (19 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-92"
  },
  {
   "id": "ww-GRR-SV-W-92-2026-06-16-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 19 min. County: Clare. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #92 (19 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-92"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Mecosta-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Mecosta-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-GRR-SV-W-88-2026-06-16-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 42 min. Counties: Mecosta, Montcalm, Kent. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #88 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-88"
  },
  {
   "id": "ww-APX-SV-W-48-2026-06-16-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 48 min. Counties: Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #48 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-48"
  },
  {
   "id": "ww-APX-SV-W-48-2026-06-16-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 48 min. Counties: Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #48 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-48"
  },
  {
   "id": "ww-APX-SV-W-48-2026-06-16-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 48 min. Counties: Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #48 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-48"
  },
  {
   "id": "ww-APX-SV-W-48-2026-06-16-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 48 min. Counties: Grand Traverse, Kalkaska. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #48 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-48"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-90-2026-06-16-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-16. Duration: 21 min. Counties: Clinton, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #90 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-90"
  },
  {
   "id": "ww-APX-SV-W-46-2026-06-16-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 54 min. County: Alcona. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #46 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-46"
  },
  {
   "id": "ww-APX-SV-W-46-2026-06-16-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 54 min. County: Alcona. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #46 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-46"
  },
  {
   "id": "ww-APX-SV-W-45-2026-06-16-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 58 min. Counties: Presque Isle, Montmorency. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #45 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-45"
  },
  {
   "id": "ww-APX-SV-W-45-2026-06-16-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 58 min. Counties: Presque Isle, Montmorency. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #45 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-45"
  },
  {
   "id": "ww-APX-SV-W-45-2026-06-16-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 58 min. Counties: Presque Isle, Montmorency. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #45 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-45"
  },
  {
   "id": "ww-APX-SV-W-45-2026-06-16-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 58 min. Counties: Presque Isle, Montmorency. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #45 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-45"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "ww-APX-SV-W-47-2026-06-16-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-16. Duration: 22 min. Counties: Arenac, Iosco, Ogemaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #47 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-47"
  },
  {
   "id": "iem-ww-IWX-TO-W-38-Cass-tornado-2026-06-16",
   "zip": "",
   "city": "Cass",
   "date": "2026-06-16",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-38"
  },
  {
   "id": "iem-ww-IWX-TO-W-38-Berrien-tornado-2026-06-16",
   "zip": "",
   "city": "Berrien",
   "date": "2026-06-16",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Berrien.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-38"
  },
  {
   "id": "asos-bf-BTL-2026-06-16",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-06-16",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "ww-DTX-SV-W-74-2026-06-16-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-16",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-16. Duration: 56 min. Counties: Midland, Saginaw, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #74 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-74"
  },
  {
   "id": "sps-2026-06-16-alcona-hail",
   "zip": "",
   "city": "Alcona",
   "date": "2026-06-16",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alcona — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Oakland — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-06-16",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-alpena-hail",
   "zip": "",
   "city": "Alpena",
   "date": "2026-06-16",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alpena — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-06-16",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-16",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-06-16",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-jackson-hail",
   "zip": "",
   "city": "Jackson",
   "date": "2026-06-16",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-clare-hail",
   "zip": "",
   "city": "Clare",
   "date": "2026-06-16",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Clare — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-macomb-hail",
   "zip": "",
   "city": "Macomb",
   "date": "2026-06-16",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Macomb — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-16",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-lapeer-hail",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-06-16",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-16",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-06-16",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-kalkaska-hail",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-06-16",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-charlevoix-hail",
   "zip": "",
   "city": "Charlevoix",
   "date": "2026-06-16",
   "county": "Charlevoix",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Charlevoix — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-06-16",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-06-16",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-06-16",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-gladwin-hail",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-06-16",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-shiawassee-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-06-16",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-mecosta-hail",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-06-16",
   "county": "Mecosta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mecosta — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-06-16",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-06-16",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-06-16",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-16-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-06-16",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-15-alger-hail",
   "zip": "",
   "city": "Alger",
   "date": "2026-06-15",
   "county": "Alger",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alger — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-15-marquette-hail",
   "zip": "",
   "city": "Marquette",
   "date": "2026-06-15",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Marquette — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606141645-hail-42.06--83.26",
   "lat": 42.06,
   "lon": -83.26,
   "zip": "",
   "city": "South Rockwood",
   "date": "2026-06-14",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near South Rockwood, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DTX-SV-W-71-2026-06-14-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 74 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #71 (74 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-71"
  },
  {
   "id": "ww-DTX-SV-W-71-2026-06-14-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 74 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #71 (74 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-71"
  },
  {
   "id": "ww-DTX-SV-W-71-2026-06-14-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 74 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #71 (74 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-71"
  },
  {
   "id": "ww-DTX-SV-W-71-2026-06-14-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 74 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #71 (74 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-71"
  },
  {
   "id": "ww-DTX-SV-W-72-2026-06-14-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 51 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #72 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-72"
  },
  {
   "id": "ww-DTX-SV-W-72-2026-06-14-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-14",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-14. Duration: 51 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #72 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-72"
  },
  {
   "id": "asos-bf-TTF-2026-06-14",
   "lat": 41.9399,
   "lon": -83.4347,
   "zip": "",
   "city": "MONROE",
   "date": "2026-06-14",
   "county": "Monroe",
   "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": "MONROE (TTF) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MONROE (TTF) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-06-14-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-06-14",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-14-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-06-14",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-14-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-06-14",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-14-wayne-hail",
   "zip": "",
   "city": "Wayne",
   "date": "2026-06-14",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-14-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-06-14",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606131758-hail-44.60--83.50",
   "lat": 44.6,
   "lon": -83.5,
   "zip": "",
   "city": "5 WNW Mikado",
   "date": "2026-06-13",
   "county": "Alcona",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 WNW Mikado, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606131805-hail-45.07--83.43",
   "lat": 45.07,
   "lon": -83.43,
   "zip": "",
   "city": "Alpena",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Alpena, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606131810-hail-45.00--83.86",
   "lat": 45,
   "lon": -83.86,
   "zip": "",
   "city": "2 NE Fletcher Pond",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NE Fletcher Pond, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202606131820-hail-44.97--83.65",
   "lat": 44.97,
   "lon": -83.65,
   "zip": "",
   "city": "6 ESE Spratt",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 6 ESE Spratt, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606131830-hail-44.95--83.45",
   "lat": 44.95,
   "lon": -83.45,
   "zip": "",
   "city": "3 NNW Ossineke",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 NNW Ossineke, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-06-13-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-06-13",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606131339-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-06-13",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-13T19:54:00Z-wind-44.45--83.40",
   "lat": 44.45,
   "lon": -83.4,
   "zip": "",
   "city": "1 SW Wurtsmith Airfield",
   "date": "2026-06-13",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SW Wurtsmith Airfield, MI. Peak gust: 52 mph. AWOS station KOSC Oscoda - Wurtsmith AFB.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-13T21:26:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-06-13",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-33-2026-06-13-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 27 min. Counties: Presque Isle, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #33 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-33"
  },
  {
   "id": "ww-APX-SV-W-33-2026-06-13-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 27 min. Counties: Presque Isle, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #33 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-33"
  },
  {
   "id": "ww-APX-SV-W-33-2026-06-13-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 27 min. Counties: Presque Isle, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #33 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-33"
  },
  {
   "id": "ww-APX-SV-W-33-2026-06-13-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 27 min. Counties: Presque Isle, Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #33 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-33"
  },
  {
   "id": "ww-APX-SV-W-32-2026-06-13-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 31 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #32 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-32"
  },
  {
   "id": "ww-APX-SV-W-32-2026-06-13-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 31 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #32 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-32"
  },
  {
   "id": "ww-APX-SV-W-32-2026-06-13-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 31 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #32 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-32"
  },
  {
   "id": "ww-APX-SV-W-32-2026-06-13-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 31 min. Counties: Alpena, Presque Isle. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #32 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-32"
  },
  {
   "id": "ww-APX-SV-W-34-2026-06-13-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 21 min. County: Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #34 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-34"
  },
  {
   "id": "ww-APX-SV-W-34-2026-06-13-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-13. Duration: 21 min. County: Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #34 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-34"
  },
  {
   "id": "asos-bf-CMX-2026-06-13",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-06-13",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-06-13-cheboygan-wind",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-06-13",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-13-presqueisl-wind",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-06-13",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-13-montmorenc-hail",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-06-13",
   "county": "Montmorency",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Montmorency — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-13-alpena-hail",
   "zip": "",
   "city": "Alpena",
   "date": "2026-06-13",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alpena — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-13-alcona-hail",
   "zip": "",
   "city": "Alcona",
   "date": "2026-06-13",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Alcona — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-13-chippewa-hail",
   "zip": "",
   "city": "Chippewa",
   "date": "2026-06-13",
   "county": "Chippewa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Chippewa — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-06-12T05:15:00Z-wind-42.10--83.16",
   "lat": 42.1,
   "lon": -83.16,
   "zip": "",
   "city": "Grosse Ile Airport",
   "date": "2026-06-12",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Grosse Ile Airport, MI. Peak gust: 52 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-70-2026-06-12-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-12",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-12. Duration: 52 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #70 (52 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-70"
  },
  {
   "id": "ww-DTX-SV-W-70-2026-06-12-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-12",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-12. Duration: 52 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #70 (52 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-70"
  },
  {
   "id": "asos-bf-DET-2026-06-12",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-06-12",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-06-12-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-06-12",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-12-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-06-12",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-LAN-2026-06-11",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-06-11",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-11-wind-42.99--84.14",
   "lat": 42.99,
   "lon": -84.14,
   "zip": "",
   "city": "Owosso Community Airpor",
   "date": "2026-06-11",
   "county": "Shiawassee",
   "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 Owosso Community Airpor",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IRS-2026-06-11",
   "lat": 41.8133,
   "lon": -85.4389,
   "zip": "",
   "city": "STURGIS/KIRSCH",
   "date": "2026-06-11",
   "county": "St. Joseph",
   "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": "STURGIS/KIRSCH (IRS) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — STURGIS/KIRSCH (IRS) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-11-flood-42.32--85.20",
   "lat": 42.32,
   "lon": -85.2,
   "zip": "",
   "city": "1 W Battle Creek",
   "date": "2026-06-11",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Stalled vehicle in water under bridge.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-11-flood-42.26--85.19",
   "lat": 42.26,
   "lon": -85.19,
   "zip": "",
   "city": "4 S Battle Creek",
   "date": "2026-06-11",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Road flooded.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-12T01:31:00Z-tornado-42.78--85.47",
   "lat": 42.78,
   "lon": -85.47,
   "zip": "",
   "city": "2 ESE Caledonia",
   "date": "2026-06-11",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 ESE Caledonia, MI. This EF-0 tornado had maximum estimated winds of 85 mph and a path of around 4.25 miles. Extensive tree damage occurred along this path with the Saskatoon Golf Club seeing the most significant tree damage.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-12T01:31:00Z-tornado-42.66--85.44",
   "lat": 42.66,
   "lon": -85.44,
   "zip": "",
   "city": "2 SSW Irving",
   "date": "2026-06-11",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 SSW Irving, MI. This EF-0 tornado had maximum estimated winds of 75 mph and a path of around 2.9 miles. Extensive tree damage occurred along this tornado path in Barry County.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606120221-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-06-11",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606120255-wind-42.99--84.14",
   "lat": 42.99,
   "lon": -84.14,
   "zip": "",
   "city": "Owosso Community Airpor",
   "date": "2026-06-11",
   "county": "Shiawassee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Owosso Community Airpor, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T02:55:00Z-wind-44.98--85.20",
   "lat": 44.98,
   "lon": -85.2,
   "zip": "",
   "city": "1 NNE Bellaire",
   "date": "2026-06-11",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNE Bellaire, MI. Peak gust: 51 mph. Wake low. AWOS station KACB Bellarie - Antrim County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T01:58:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-06-11",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 51 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T02:49:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-06-11",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 51 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T00:58:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-06-11",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 52 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T01:48:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-06-11",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 53 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-12T00:48:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-06-11",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Macatawa, MI. Peak gust: 56 mph. Mesonet station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-82-2026-06-11-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 45 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #82 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-82"
  },
  {
   "id": "ww-GRR-SV-W-82-2026-06-11-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 45 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #82 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-82"
  },
  {
   "id": "ww-GRR-SV-W-80-2026-06-11-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 39 min. County: Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #80 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-80"
  },
  {
   "id": "ww-GRR-SV-W-80-2026-06-11-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 39 min. County: Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #80 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-80"
  },
  {
   "id": "ww-GRR-SV-W-84-2026-06-11-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 50 min. County: Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #84 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-84"
  },
  {
   "id": "ww-GRR-SV-W-84-2026-06-11-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 50 min. County: Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #84 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-84"
  },
  {
   "id": "ww-DTX-SV-W-69-2026-06-11-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 56 min. County: Lenawee. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #69 (56 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-69"
  },
  {
   "id": "ww-DTX-SV-W-69-2026-06-11-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 56 min. County: Lenawee. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #69 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-69"
  },
  {
   "id": "ww-DTX-SV-W-68-2026-06-11-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 39 min. County: Genesee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #68 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-68"
  },
  {
   "id": "ww-DTX-SV-W-68-2026-06-11-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 39 min. County: Genesee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #68 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-68"
  },
  {
   "id": "ww-IWX-SV-W-176-2026-06-11-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 42 min. County: Branch. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #176 (42 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-176"
  },
  {
   "id": "ww-IWX-SV-W-176-2026-06-11-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 42 min. County: Branch. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #176 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-176"
  },
  {
   "id": "ww-GRR-SV-W-78-2026-06-11-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 55 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #78 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-78"
  },
  {
   "id": "ww-GRR-SV-W-78-2026-06-11-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 55 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #78 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-78"
  },
  {
   "id": "ww-GRR-SV-W-81-2026-06-11-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 67 min. Counties: Eaton, Ionia. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #81 (67 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-81"
  },
  {
   "id": "ww-GRR-SV-W-81-2026-06-11-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 67 min. Counties: Eaton, Ionia. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #81 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-81"
  },
  {
   "id": "ww-GRR-SV-W-81-2026-06-11-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 67 min. Counties: Eaton, Ionia. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #81 (67 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-81"
  },
  {
   "id": "ww-GRR-SV-W-81-2026-06-11-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 67 min. Counties: Eaton, Ionia. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #81 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-81"
  },
  {
   "id": "ww-GRR-SV-W-79-2026-06-11-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 62 min. Counties: Barry, Kent. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #79 (62 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-79"
  },
  {
   "id": "ww-GRR-SV-W-79-2026-06-11-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 62 min. Counties: Barry, Kent. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #79 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-79"
  },
  {
   "id": "ww-GRR-SV-W-79-2026-06-11-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 62 min. Counties: Barry, Kent. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #79 (62 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-79"
  },
  {
   "id": "ww-GRR-SV-W-79-2026-06-11-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 62 min. Counties: Barry, Kent. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #79 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-79"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "ww-GRR-SV-W-83-2026-06-11-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 60 min. Counties: Ingham, Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #83 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-83"
  },
  {
   "id": "ww-IWX-SV-W-179-2026-06-11-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 58 min. County: Hillsdale. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #179 (58 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-179"
  },
  {
   "id": "ww-IWX-SV-W-179-2026-06-11-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 58 min. County: Hillsdale. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #179 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-179"
  },
  {
   "id": "ww-DTX-SV-W-67-2026-06-11-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 53 min. Counties: Livingston, Shiawassee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #67 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-67"
  },
  {
   "id": "ww-DTX-SV-W-67-2026-06-11-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 53 min. Counties: Livingston, Shiawassee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #67 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-67"
  },
  {
   "id": "ww-DTX-SV-W-67-2026-06-11-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 53 min. Counties: Livingston, Shiawassee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #67 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-67"
  },
  {
   "id": "ww-DTX-SV-W-67-2026-06-11-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-11. Duration: 53 min. Counties: Livingston, Shiawassee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #67 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-67"
  },
  {
   "id": "ww-IWX-SV-W-169-2026-06-11-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #169 (45 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-169"
  },
  {
   "id": "ww-IWX-SV-W-169-2026-06-11-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #169 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-169"
  },
  {
   "id": "ww-IWX-SV-W-169-2026-06-11-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #169 (45 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-169"
  },
  {
   "id": "ww-IWX-SV-W-169-2026-06-11-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-11. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #169 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-169"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "ww-GRR-SV-W-77-2026-06-11-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-11",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-11. Duration: 94 min. Counties: Muskegon, Allegan, Ottawa. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #77 (94 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-77"
  },
  {
   "id": "iem-ww-IWX-TO-W-28-Berrien-tornado-2026-06-11",
   "zip": "",
   "city": "Berrien",
   "date": "2026-06-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Berrien.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-28"
  },
  {
   "id": "iem-ww-GRR-TO-W-19-Barry-tornado-2026-06-11",
   "zip": "",
   "city": "Barry",
   "date": "2026-06-11",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Barry.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-19"
  },
  {
   "id": "iem-ww-GRR-TO-W-19-Kent-tornado-2026-06-11",
   "zip": "",
   "city": "Kent",
   "date": "2026-06-11",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kent.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-19"
  },
  {
   "id": "iem-ww-GRR-TO-W-19-Ionia-tornado-2026-06-11",
   "zip": "",
   "city": "Ionia",
   "date": "2026-06-11",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ionia.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-19"
  },
  {
   "id": "iem-ww-IWX-TO-W-31-Cass-tornado-2026-06-11",
   "zip": "",
   "city": "Cass",
   "date": "2026-06-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-31"
  },
  {
   "id": "iem-ww-GRR-TO-W-18-Kent-tornado-2026-06-11",
   "zip": "",
   "city": "Kent",
   "date": "2026-06-11",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kent.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-18"
  },
  {
   "id": "iem-ww-IWX-TO-W-34-St. Joseph-tornado-2026-06-11",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-11",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-34"
  },
  {
   "id": "iem-ww-IWX-TO-W-34-Cass-tornado-2026-06-11",
   "zip": "",
   "city": "Cass",
   "date": "2026-06-11",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-34"
  },
  {
   "id": "iem-ww-GRR-TO-W-17-Ottawa-tornado-2026-06-11",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-06-11",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ottawa.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-17"
  },
  {
   "id": "iem-ww-GRR-TO-W-20-Clinton-tornado-2026-06-11",
   "zip": "",
   "city": "Clinton",
   "date": "2026-06-11",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Clinton.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-20"
  },
  {
   "id": "iem-ww-GRR-TO-W-20-Eaton-tornado-2026-06-11",
   "zip": "",
   "city": "Eaton",
   "date": "2026-06-11",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Eaton.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-20"
  },
  {
   "id": "iem-ww-GRR-TO-W-20-Ionia-tornado-2026-06-11",
   "zip": "",
   "city": "Ionia",
   "date": "2026-06-11",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ionia.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-20"
  },
  {
   "id": "iem-ww-IWX-TO-W-26-Berrien-tornado-2026-06-11",
   "zip": "",
   "city": "Berrien",
   "date": "2026-06-11",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Berrien.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-26"
  },
  {
   "id": "spc-2026-06-11-299-0516",
   "lat": 42,
   "lon": -83.14,
   "zip": "",
   "city": "Detroit River Light",
   "date": "2026-06-11",
   "county": "Monroe",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-06-11-300-0519",
   "lat": 42.43,
   "lon": -82.87,
   "zip": "",
   "city": "Grosse Pointe YC",
   "date": "2026-06-11",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-06-11-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-06-11",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606102240-hail-42.31--83.21",
   "lat": 42.31,
   "lon": -83.21,
   "zip": "",
   "city": "Dearborn",
   "date": "2026-06-10",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Dearborn, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202606102241-hail-42.34--83.27",
   "lat": 42.34,
   "lon": -83.27,
   "zip": "",
   "city": "Dearborn Heights",
   "date": "2026-06-10",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Dearborn Heights, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.13--86.43",
   "lat": 42.13,
   "lon": -86.43,
   "zip": "",
   "city": "1 NW Benton Heights",
   "date": "2026-06-10",
   "county": "Berrien",
   "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 NW Benton Heights",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-06-10",
   "county": "Muskegon",
   "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 station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-06-10",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-06-10",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-06-10",
   "county": "Allegan",
   "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": "Mesonet station BDLM4 Plainwell. Time estimated based on radar.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-06-10",
   "county": "Kent",
   "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": "Time estimated.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-06-10",
   "county": "Kent",
   "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 KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-06-10",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-06-10",
   "county": "Ionia",
   "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 KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-43.32--84.68",
   "lat": 43.32,
   "lon": -84.68,
   "zip": "",
   "city": "4 WNW Ithaca",
   "date": "2026-06-10",
   "county": "Gratiot",
   "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 KAMN Alma.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-06-10-341-0003",
   "lat": 42.96,
   "lon": -84.58,
   "zip": "",
   "city": "Saint Johns",
   "date": "2026-06-10",
   "county": "Clinton",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured on a personal weather station. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 62,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-LAN-2026-06-10",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-06-10",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-06-10-wind-43.91--83.36",
   "lat": 43.91,
   "lon": -83.36,
   "zip": "",
   "city": "Sand Point",
   "date": "2026-06-10",
   "county": "Huron",
   "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 Sand Point",
   "sourceDetail": "NWS DTX — C-Man Station via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606102203-wind-42.13--86.43",
   "lat": 42.13,
   "lon": -86.43,
   "zip": "",
   "city": "1 NW Benton Heights",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NW Benton Heights, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102213-wind-42.19--86.26",
   "lat": 42.19,
   "lon": -86.26,
   "zip": "",
   "city": "Watervliet",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Watervliet, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606102225-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-06-10",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102228-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102256-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102258-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-06-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near East Grand Rapids, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606102304-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-06-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102321-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-06-10",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606102336-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-06-10",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606110002-wind-43.32--84.68",
   "lat": 43.32,
   "lon": -84.68,
   "zip": "",
   "city": "4 WNW Ithaca",
   "date": "2026-06-10",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 WNW Ithaca, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606110003-wind-42.96--84.58",
   "lat": 42.96,
   "lon": -84.58,
   "zip": "",
   "city": "3 SSW Saint Johns",
   "date": "2026-06-10",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 SSW Saint Johns, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202606110105-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-06-10",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202606110130-wind-43.91--83.36",
   "lat": 43.91,
   "lon": -83.36,
   "zip": "",
   "city": "Sand Point",
   "date": "2026-06-10",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Sand Point, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS DTX — C-Man Station via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-10T23:47:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2026-06-10",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 51 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-11T00:38:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-06-10",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 53 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-11T00:16:00Z-wind-44.68--84.73",
   "lat": 44.68,
   "lon": -84.73,
   "zip": "",
   "city": "2 NNW Grayling",
   "date": "2026-06-10",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 NNW Grayling, MI. Peak gust: 54 mph. AWOS station KGOV Grayling - Army Airfield.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T23:16:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-06-10",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 55 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T23:26:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-06-10",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 56 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T23:00:00Z-wind-42.35--85.59",
   "lat": 42.35,
   "lon": -85.59,
   "zip": "",
   "city": "2 SE Cooper",
   "date": "2026-06-10",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SE Cooper, MI. Peak gust: 51 mph. Mesonet station MIKZO 2.0 SE Cooper (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T23:15:00Z-wind-43.72--85.50",
   "lat": 43.72,
   "lon": -85.5,
   "zip": "",
   "city": "1 NW Big Rapids",
   "date": "2026-06-10",
   "county": "Mecosta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NW Big Rapids, MI. Peak gust: 53 mph. AWOS station KRQB Big Rapids Roben-Hood Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T22:12:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-06-10",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 55 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T23:01:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-06-10",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 55 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-06-10T22:05:00Z-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "16 W Keeler",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 16 W Keeler, MI. Peak gust: 54 mph. Mesonet station DVI11762 Saint Joseph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-73-2026-06-10-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 18 min. County: Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #73 (18 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-73"
  },
  {
   "id": "ww-GRR-SV-W-73-2026-06-10-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 18 min. County: Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #73 (18 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-73"
  },
  {
   "id": "ww-GRR-SV-W-71-2026-06-10-Lake-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 55 min. Counties: Lake, Newaygo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #71 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-71"
  },
  {
   "id": "ww-GRR-SV-W-71-2026-06-10-Lake-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 55 min. Counties: Lake, Newaygo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #71 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-71"
  },
  {
   "id": "ww-GRR-SV-W-71-2026-06-10-Newaygo-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 55 min. Counties: Lake, Newaygo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #71 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-71"
  },
  {
   "id": "ww-GRR-SV-W-71-2026-06-10-Newaygo-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 55 min. Counties: Lake, Newaygo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #71 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-71"
  },
  {
   "id": "ww-IWX-SV-W-162-2026-06-10-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 25 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #162 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-162"
  },
  {
   "id": "ww-IWX-SV-W-162-2026-06-10-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 25 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #162 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-162"
  },
  {
   "id": "iem-ww-IWX-SV-W-162-St. Joseph-wind-2026-06-10",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-10",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-162"
  },
  {
   "id": "iem-ww-IWX-SV-W-162-St. Joseph-hail-2026-06-10",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-10",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-162"
  },
  {
   "id": "ww-DTX-SV-W-62-2026-06-10-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 57 min. County: Livingston. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #62 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-62"
  },
  {
   "id": "ww-DTX-SV-W-62-2026-06-10-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 57 min. County: Livingston. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #62 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-62"
  },
  {
   "id": "ww-IWX-SV-W-163-2026-06-10-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 34 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #163 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-163"
  },
  {
   "id": "ww-IWX-SV-W-163-2026-06-10-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 34 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #163 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-163"
  },
  {
   "id": "ww-DTX-SV-W-60-2026-06-10-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 63 min. County: Shiawassee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #60 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-60"
  },
  {
   "id": "ww-DTX-SV-W-60-2026-06-10-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 63 min. County: Shiawassee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #60 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-60"
  },
  {
   "id": "ww-GRR-SV-W-72-2026-06-10-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 37 min. County: Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #72 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-72"
  },
  {
   "id": "ww-GRR-SV-W-72-2026-06-10-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 37 min. County: Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #72 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-72"
  },
  {
   "id": "ww-APX-SV-W-31-2026-06-10-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 42 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #31 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-31"
  },
  {
   "id": "ww-APX-SV-W-31-2026-06-10-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 42 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #31 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-31"
  },
  {
   "id": "ww-APX-SV-W-31-2026-06-10-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 42 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #31 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-31"
  },
  {
   "id": "ww-APX-SV-W-31-2026-06-10-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 42 min. Counties: Montmorency, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #31 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-31"
  },
  {
   "id": "ww-DTX-SV-W-58-2026-06-10-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 61 min. Counties: Oakland, Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #58 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-58"
  },
  {
   "id": "ww-DTX-SV-W-58-2026-06-10-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 61 min. Counties: Oakland, Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #58 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-58"
  },
  {
   "id": "ww-DTX-SV-W-58-2026-06-10-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 61 min. Counties: Oakland, Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #58 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-58"
  },
  {
   "id": "ww-DTX-SV-W-58-2026-06-10-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 61 min. Counties: Oakland, Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #58 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-58"
  },
  {
   "id": "ww-IWX-SV-W-161-2026-06-10-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 37 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #161 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "ww-IWX-SV-W-161-2026-06-10-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 37 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #161 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "ww-IWX-SV-W-161-2026-06-10-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 37 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #161 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "ww-IWX-SV-W-161-2026-06-10-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 37 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #161 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "iem-ww-IWX-SV-W-161-St. Joseph-wind-2026-06-10",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-10",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "iem-ww-IWX-SV-W-161-St. Joseph-hail-2026-06-10",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-06-10",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-161"
  },
  {
   "id": "ww-DTX-SV-W-65-2026-06-10-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 58 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #65 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-65"
  },
  {
   "id": "ww-DTX-SV-W-65-2026-06-10-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 58 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #65 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-65"
  },
  {
   "id": "ww-DTX-SV-W-65-2026-06-10-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 58 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #65 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-65"
  },
  {
   "id": "ww-DTX-SV-W-65-2026-06-10-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 58 min. Counties: Genesee, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #65 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-65"
  },
  {
   "id": "ww-DTX-SV-W-63-2026-06-10-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 48 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #63 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-63"
  },
  {
   "id": "ww-DTX-SV-W-63-2026-06-10-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 48 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #63 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-63"
  },
  {
   "id": "ww-DTX-SV-W-63-2026-06-10-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 48 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #63 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-63"
  },
  {
   "id": "ww-DTX-SV-W-63-2026-06-10-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 48 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #63 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Mecosta-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Mecosta-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Osceola-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-GRR-SV-W-74-2026-06-10-Osceola-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 53 min. Counties: Mecosta, Montcalm, Osceola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #74 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-74"
  },
  {
   "id": "ww-MQT-SV-W-5-2026-06-10-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-10. Duration: 40 min. County: Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #5 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-5"
  },
  {
   "id": "ww-MQT-SV-W-5-2026-06-10-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-06-10. Duration: 40 min. County: Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #5 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-5"
  },
  {
   "id": "ww-DTX-SV-W-57-2026-06-10-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 56 min. County: Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #57 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-57"
  },
  {
   "id": "ww-DTX-SV-W-57-2026-06-10-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 56 min. County: Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #57 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-57"
  },
  {
   "id": "ww-APX-SV-W-30-2026-06-10-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 74 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #30 (74 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-30"
  },
  {
   "id": "ww-APX-SV-W-30-2026-06-10-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 74 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #30 (74 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-30"
  },
  {
   "id": "ww-APX-SV-W-30-2026-06-10-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 74 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #30 (74 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-30"
  },
  {
   "id": "ww-APX-SV-W-30-2026-06-10-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-06-10. Duration: 74 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #30 (74 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-30"
  },
  {
   "id": "ww-IWX-SV-W-160-2026-06-10-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 62 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #160 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-160"
  },
  {
   "id": "ww-IWX-SV-W-160-2026-06-10-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 62 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #160 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-160"
  },
  {
   "id": "ww-IWX-SV-W-160-2026-06-10-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 62 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #160 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-160"
  },
  {
   "id": "ww-IWX-SV-W-160-2026-06-10-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-06-10. Duration: 62 min. Counties: Cass, Berrien. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #160 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-160"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-GRR-SV-W-75-2026-06-10-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 63 min. Counties: Ionia, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #75 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-75"
  },
  {
   "id": "ww-DTX-SV-W-64-2026-06-10-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 62 min. County: Tuscola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #64 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-64"
  },
  {
   "id": "ww-DTX-SV-W-64-2026-06-10-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 62 min. County: Tuscola. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #64 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-70-2026-06-10-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Barry, Kalamazoo, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #70 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-70"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Oceana-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Oceana-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-68-2026-06-10-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 56 min. Counties: Mason, Muskegon, Oceana. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #68 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-68"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Isabella-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-GRR-SV-W-76-2026-06-10-Isabella-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 66 min. Counties: Jackson, Gratiot, Isabella, Clinton, Ingham. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #76 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-76"
  },
  {
   "id": "ww-DTX-SV-W-59-2026-06-10-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 73 min. Counties: Saginaw, Midland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #59 (73 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-59"
  },
  {
   "id": "ww-DTX-SV-W-59-2026-06-10-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 73 min. Counties: Saginaw, Midland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #59 (73 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-59"
  },
  {
   "id": "ww-DTX-SV-W-59-2026-06-10-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 73 min. Counties: Saginaw, Midland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #59 (73 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-59"
  },
  {
   "id": "ww-DTX-SV-W-59-2026-06-10-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 73 min. Counties: Saginaw, Midland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #59 (73 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-GRR-SV-W-69-2026-06-10-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-06-10. Duration: 58 min. Counties: Allegan, Ottawa, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #69 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-69"
  },
  {
   "id": "ww-DTX-SV-W-61-2026-06-10-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 54 min. County: Bay. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #61 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-61"
  },
  {
   "id": "ww-DTX-SV-W-61-2026-06-10-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 54 min. County: Bay. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #61 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-61"
  },
  {
   "id": "ww-DTX-SV-W-66-2026-06-10-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 64 min. County: Huron. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #66 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-66"
  },
  {
   "id": "ww-DTX-SV-W-66-2026-06-10-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-10",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-10. Duration: 64 min. County: Huron. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #66 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-66"
  },
  {
   "id": "iem-ww-APX-TO-W-2-Alcona-tornado-2026-06-10",
   "zip": "",
   "city": "Alcona",
   "date": "2026-06-10",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Alcona.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-2"
  },
  {
   "id": "iem-ww-APX-TO-W-2-Oscoda-tornado-2026-06-10",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-06-10",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Oscoda.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-2"
  },
  {
   "id": "iem-ww-DTX-TO-W-17-Bay-tornado-2026-06-10",
   "zip": "",
   "city": "Bay",
   "date": "2026-06-10",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Bay.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-17"
  },
  {
   "id": "iem-ww-DTX-TO-W-17-Tuscola-tornado-2026-06-10",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-06-10",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Tuscola.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-17"
  },
  {
   "id": "asos-bf-TVC-2026-06-10",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-06-10",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-AMN-2026-06-10",
   "lat": 43.3221,
   "lon": -84.6879,
   "zip": "",
   "city": "Alma",
   "date": "2026-06-10",
   "county": "Gratiot",
   "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": "Alma (AMN) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Alma (AMN) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IKW-2026-06-10",
   "lat": 43.6629,
   "lon": -84.2613,
   "zip": "",
   "city": "Midland",
   "date": "2026-06-10",
   "county": "Midland",
   "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": "Midland (IKW) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Midland (IKW) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-06-10",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-06-10",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HYX-2026-06-10",
   "lat": 43.4334,
   "lon": -83.8623,
   "zip": "",
   "city": "SAGINAW/BROWNE",
   "date": "2026-06-10",
   "county": "Saginaw",
   "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": "SAGINAW/BROWNE (HYX) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW/BROWNE (HYX) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-06-10",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-06-10",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-Y70-2026-06-10",
   "lat": 42.938,
   "lon": -85.0606,
   "zip": "",
   "city": "Ionia",
   "date": "2026-06-10",
   "county": "Ionia",
   "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": "Ionia (Y70) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Ionia (Y70) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FKS-2026-06-10",
   "lat": 44.6252,
   "lon": -86.2008,
   "zip": "",
   "city": "Frankfort",
   "date": "2026-06-10",
   "county": "Benzie",
   "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": "Frankfort (FKS) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Frankfort (FKS) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-06-10",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-06-10",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 64 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-06-10",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-06-10",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-06-10",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-06-10",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-06-10-307-2213",
   "lat": 42.19,
   "lon": -86.26,
   "zip": "",
   "city": "Watervliet",
   "date": "2026-06-10",
   "county": "Berrien",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(IWX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-06-10-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-06-10",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Gogebic — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-ontonagon-hail",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-10",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-06-10",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-menominee-wind",
   "zip": "",
   "city": "Menominee",
   "date": "2026-06-10",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-benzie-wind",
   "zip": "",
   "city": "Benzie",
   "date": "2026-06-10",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Benzie — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-shiawassee-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-06-10",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-06-10",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Genesee — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Oakland — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-06-10",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-grandtrave-wind",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-06-10",
   "county": "Grand Traverse",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Grand Traverse — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-06-10",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-antrim-wind",
   "zip": "",
   "city": "Antrim",
   "date": "2026-06-10",
   "county": "Antrim",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Antrim — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-10",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-emmet-wind",
   "zip": "",
   "city": "Emmet",
   "date": "2026-06-10",
   "county": "Emmet",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Emmet — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-roscommon-wind",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-06-10",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-alpena-wind",
   "zip": "",
   "city": "Alpena",
   "date": "2026-06-10",
   "county": "Alpena",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Alpena — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-06-10",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-10",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-06-10",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-10-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-06-10",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-06-09T17:14:00Z-tornado-43.54--84.12",
   "lat": 43.54,
   "lon": -84.12,
   "zip": "",
   "city": "1 N Freeland",
   "date": "2026-06-09",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 N Freeland, MI. Reports of 30 to 40 homes with damage- roof and siding damage as well as a number of campers overturned in the Freeland area.",
   "sourceDetail": "NWS DTX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-09T17:19:00Z-tornado-43.21--83.85",
   "lat": 43.21,
   "lon": -83.85,
   "zip": "",
   "city": "3 NE Montrose",
   "date": "2026-06-09",
   "county": "Genesee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 3 NE Montrose, MI. Spotter relayed video of a brief small tornado in a farm field near Lake and Marshall roads.",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-06-09T14:30:00Z-tornado-42.73--84.78",
   "lat": 42.73,
   "lon": -84.78,
   "zip": "",
   "city": "2 SW Grand Ledge",
   "date": "2026-06-09",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 SW Grand Ledge, MI. This EF-0 tornado had maximum estimated winds of 75 mph and a path length of around 3.2 miles. One outbuilding was destroyed. Otherwise mostly tree damage or minor property damage due to fallen trees occurred along the path.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DTX-SV-W-56-2026-06-09-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-06-09",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-09. Duration: 42 min. County: Sanilac. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #56 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-56"
  },
  {
   "id": "ww-DTX-SV-W-56-2026-06-09-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-06-09",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-06-09. Duration: 42 min. County: Sanilac. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #56 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-56"
  },
  {
   "id": "iem-ww-DTX-TO-W-14-Saginaw-tornado-2026-06-09",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-06-09",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Saginaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-14"
  },
  {
   "id": "iem-ww-DTX-TO-W-14-Shiawassee-tornado-2026-06-09",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-06-09",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Shiawassee.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-14"
  },
  {
   "id": "iem-ww-DTX-TO-W-12-Saginaw-tornado-2026-06-09",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-06-09",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Saginaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-12"
  },
  {
   "id": "iem-ww-DTX-TO-W-12-Shiawassee-tornado-2026-06-09",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-06-09",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Shiawassee.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-12"
  },
  {
   "id": "iem-ww-DTX-TO-W-15-Genesee-tornado-2026-06-09",
   "zip": "",
   "city": "Genesee",
   "date": "2026-06-09",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Genesee.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-15"
  },
  {
   "id": "iem-ww-DTX-TO-W-13-Saginaw-tornado-2026-06-09",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-06-09",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Saginaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-13"
  },
  {
   "id": "iem-ww-DTX-TO-W-16-Wayne-tornado-2026-06-09",
   "zip": "",
   "city": "Wayne",
   "date": "2026-06-09",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Wayne.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-16"
  },
  {
   "id": "sps-2026-06-09-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-06-09",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-09-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-06-09",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-09-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-06-09",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-09-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-06-09",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, observed possible (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-08-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-06-08",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Newaygo — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-06-06T04:44:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-06-06",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 55 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-06-06-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-06-06",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-06-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-06-06",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-06-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-06-06",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-06-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-06-06",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-06-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-06-06",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202606052145-hail-46.37--87.59",
   "lat": 46.37,
   "lon": -87.59,
   "zip": "",
   "city": "5 S Palmer",
   "date": "2026-06-05",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 5 S Palmer, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-MQT-FF-W-2-2026-06-05-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-06-05",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS MQT on 2026-06-05. Duration: 113 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flash Flood Warning #2 (113 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FF-W-2"
  },
  {
   "id": "sps-2026-06-05-marquette-hail",
   "zip": "",
   "city": "Marquette",
   "date": "2026-06-05",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 64,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "4 Special Weather Statements for Marquette — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-alger-hail",
   "zip": "",
   "city": "Alger",
   "date": "2026-06-05",
   "county": "Alger",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Alger — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-06-05",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Gogebic — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-dickinson-hail",
   "zip": "",
   "city": "Dickinson",
   "date": "2026-06-05",
   "county": "Dickinson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Dickinson — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-baraga-hail",
   "zip": "",
   "city": "Baraga",
   "date": "2026-06-05",
   "county": "Baraga",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Baraga — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-ontonagon-hail",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-06-05",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-delta-hail",
   "zip": "",
   "city": "Delta",
   "date": "2026-06-05",
   "county": "Delta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Delta — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-iron-hail",
   "zip": "",
   "city": "Iron",
   "date": "2026-06-05",
   "county": "Iron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Iron — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-06-05",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-06-05-mason-wind",
   "zip": "",
   "city": "Mason",
   "date": "2026-06-05",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-05-25-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-05-25",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605260124-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-05-25",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-05-25-marquette-hail",
   "zip": "",
   "city": "Marquette",
   "date": "2026-05-25",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Marquette — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-25-delta-hail",
   "zip": "",
   "city": "Delta",
   "date": "2026-05-25",
   "county": "Delta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Delta — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-25-alger-hail",
   "zip": "",
   "city": "Alger",
   "date": "2026-05-25",
   "county": "Alger",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Alger — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-25-schoolcraf-hail",
   "zip": "",
   "city": "Schoolcraft",
   "date": "2026-05-25",
   "county": "Schoolcraft",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Schoolcraft — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-05-23T20:54:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2026-05-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 53 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-23T22:48:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2026-05-23",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 54 mph. GLOS Weather Station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605192018-hail-42.43--83.18",
   "lat": 42.43,
   "lon": -83.18,
   "zip": "",
   "city": "2 S Oak Park",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Oak Park, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "spc-2026-05-19-385-2023",
   "lat": 42.38,
   "lon": -83.37,
   "zip": "",
   "city": "Livonia",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Estimated 60 mph thunderstorm wind gust and pea size hail. (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-05-19-wind-42.41--83.01",
   "lat": 42.41,
   "lon": -83.01,
   "zip": "",
   "city": "Detroit City Airport",
   "date": "2026-05-19",
   "county": "Wayne",
   "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 KDET - Detroit City Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TTF-2026-05-19",
   "lat": 41.9399,
   "lon": -83.4347,
   "zip": "",
   "city": "MONROE",
   "date": "2026-05-19",
   "county": "Monroe",
   "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": "MONROE (TTF) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MONROE (TTF) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605192023-wind-42.38--83.37",
   "lat": 42.38,
   "lon": -83.37,
   "zip": "",
   "city": "1 S Livonia",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 S Livonia, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS DTX — Amateur Radio via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605192045-wind-42.41--83.01",
   "lat": 42.41,
   "lon": -83.01,
   "zip": "",
   "city": "Detroit City Airport",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Detroit City Airport, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605192048-wind-41.94--83.43",
   "lat": 41.94,
   "lon": -83.43,
   "zip": "",
   "city": "Monroe Custer Airport",
   "date": "2026-05-19",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Monroe Custer Airport, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-19T18:55:00Z-wind-42.68--83.19",
   "lat": 42.68,
   "lon": -83.19,
   "zip": "",
   "city": "2 E Auburn Hills",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 E Auburn Hills, MI. Peak gust: 55 mph. Measured via anemometer",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-05-19T19:29:00Z-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Oakland County Intl Air, MI. Peak gust: 56 mph. Measured at KPTK Pontiac Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-51-2026-05-19-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 58 min. County: Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #51 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-51"
  },
  {
   "id": "ww-DTX-SV-W-51-2026-05-19-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 58 min. County: Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #51 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-51"
  },
  {
   "id": "ww-DTX-SV-W-46-2026-05-19-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 65 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #46 (65 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-46"
  },
  {
   "id": "ww-DTX-SV-W-46-2026-05-19-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 65 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #46 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-46"
  },
  {
   "id": "ww-DTX-SV-W-46-2026-05-19-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 65 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #46 (65 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-46"
  },
  {
   "id": "ww-DTX-SV-W-46-2026-05-19-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 65 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #46 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-46"
  },
  {
   "id": "ww-DTX-SV-W-52-2026-05-19-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 64 min. County: Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #52 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-52"
  },
  {
   "id": "ww-DTX-SV-W-52-2026-05-19-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 64 min. County: Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #52 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-52"
  },
  {
   "id": "ww-DTX-SV-W-50-2026-05-19-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #50 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-50"
  },
  {
   "id": "ww-DTX-SV-W-50-2026-05-19-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #50 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-50"
  },
  {
   "id": "ww-DTX-SV-W-47-2026-05-19-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. Counties: Washtenaw, Livingston. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #47 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-47"
  },
  {
   "id": "ww-DTX-SV-W-47-2026-05-19-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. Counties: Washtenaw, Livingston. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #47 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-47"
  },
  {
   "id": "ww-DTX-SV-W-47-2026-05-19-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. Counties: Washtenaw, Livingston. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #47 (59 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-47"
  },
  {
   "id": "ww-DTX-SV-W-47-2026-05-19-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 59 min. Counties: Washtenaw, Livingston. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #47 (59 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-47"
  },
  {
   "id": "ww-DTX-SV-W-55-2026-05-19-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 53 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #55 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-55"
  },
  {
   "id": "ww-DTX-SV-W-55-2026-05-19-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 53 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #55 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-55"
  },
  {
   "id": "ww-DTX-SV-W-55-2026-05-19-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 53 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #55 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-55"
  },
  {
   "id": "ww-DTX-SV-W-55-2026-05-19-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 53 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #55 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-55"
  },
  {
   "id": "ww-DTX-SV-W-53-2026-05-19-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 43 min. County: Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #53 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-53"
  },
  {
   "id": "ww-DTX-SV-W-53-2026-05-19-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 43 min. County: Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #53 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-53"
  },
  {
   "id": "ww-DTX-SV-W-48-2026-05-19-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 63 min. County: Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #48 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-48"
  },
  {
   "id": "ww-DTX-SV-W-48-2026-05-19-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-19. Duration: 63 min. County: Macomb. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #48 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-48"
  },
  {
   "id": "iem-ww-DTX-SV-W-54-St. Clair-wind-2026-05-19",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-54"
  },
  {
   "id": "iem-ww-DTX-SV-W-54-St. Clair-hail-2026-05-19",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-54"
  },
  {
   "id": "iem-ww-DTX-SV-W-49-St. Clair-wind-2026-05-19",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-49"
  },
  {
   "id": "iem-ww-DTX-SV-W-49-St. Clair-hail-2026-05-19",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-49"
  },
  {
   "id": "spc-2026-05-19-388-2059",
   "lat": 42.43,
   "lon": -82.87,
   "zip": "",
   "city": "Grosse Pointe YC",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 76,
   "evidenceLevel": "reported"
  },
  {
   "id": "ncei-1339396-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "PETTYSVILLE",
   "date": "2026-05-19",
   "county": "Livingston",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Trees and wires reported down by dispatch.",
   "sourceDetail": "Verified by 911 Call Center — NCEI Event #1339396",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339403-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "MT VERNON",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Multiple trees were reported down at Stony Creek Metropark.",
   "sourceDetail": "Verified by Amateur Radio — NCEI Event #1339403",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339399-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "ROMEO",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Trees and power lines were reported down across portions of northern and northwestern Macomb County.",
   "sourceDetail": "Verified by 911 Call Center — NCEI Event #1339399",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339402-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "ADAIR",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Tree reported down,  along with large tree limbs.",
   "sourceDetail": "Verified by Public — NCEI Event #1339402",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339393-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "HIGHLAND PARK",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Several cooridors of strong to severe thunderstorms developed along a pre-frontal trough, and migrated across portions of southeast Michigan during the afternoon and early evening hours on Tuesday, May 19th.  These storms brought strong and damaging winds, which resulted in numerous areas sustaining microburst and straight-line wind damage.  Several gusts in excess of 55 mph were recorded along with wind damage leading to numerous downed trees and large limbs, in addition to powerlines.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1339393",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1339405-2026-05-19",
   "lon": 213740,
   "zip": "",
   "city": "FRASER",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "A few large tree limbs and power lines were reported down.",
   "sourceDetail": "Verified by Public — NCEI Event #1339405",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "sps-2026-05-19-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-05-19",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gogebic — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-ontonagon-wind",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-05-19",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-05-19",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-05-19",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Jackson — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-macomb-hail",
   "zip": "",
   "city": "Macomb",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-19",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-19",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-05-19",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-19-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-05-19",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202605181815-hail-45.14--84.66",
   "lat": 45.14,
   "lon": -84.66,
   "zip": "",
   "city": "Vanderbilt",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Vanderbilt, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202605181843-hail-44.95--84.62",
   "lat": 44.95,
   "lon": -84.62,
   "zip": "",
   "city": "4 ENE Otsego Lake State",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 ENE Otsego Lake State, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-05-18",
   "county": "Berrien",
   "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 station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.40--86.28",
   "lat": 42.4,
   "lon": -86.28,
   "zip": "",
   "city": "1 WNW South Haven",
   "date": "2026-05-18",
   "county": "Van Buren",
   "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": "South Haven GLERL.",
   "sourceDetail": "NWS GRR — Other Federal via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-05-18-395-1741",
   "lat": 42.41,
   "lon": -86.25,
   "zip": "",
   "city": "South Haven",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MDOT station MC099 at South Haven. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-AZO-2026-05-18",
   "lat": 42.2347,
   "lon": -85.5519,
   "zip": "",
   "city": "KALAMAZOO",
   "date": "2026-05-18",
   "county": "Kalamazoo",
   "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": "KALAMAZOO (AZO) recorded a 61 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — KALAMAZOO (AZO) [365d backfill 2026-08]",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-05-18-413-1820",
   "lat": 42.73,
   "lon": -85.72,
   "zip": "",
   "city": "Dorr",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Reporter also notes numerous downed tree limbs. Time estimated via radar. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 64,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2026-05-18",
   "county": "Ottawa",
   "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": "Mesonet station GW5392 ALLENDALE.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-05-18",
   "county": "Allegan",
   "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": "Mesonet station AX192 WAYLAND.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.83--85.47",
   "lat": 42.83,
   "lon": -85.47,
   "zip": "",
   "city": "Alaska",
   "date": "2026-05-18",
   "county": "Kent",
   "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": "Mesonet station AV527 Caledonia.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-05-18",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-05-18",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 75 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 75,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-05-18",
   "county": "Otsego",
   "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 KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.31--85.24",
   "lat": 42.31,
   "lon": -85.24,
   "zip": "",
   "city": "1 SSW Springfield",
   "date": "2026-05-18",
   "county": "Calhoun",
   "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": "Battle Creek ASOS.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.88--85.61",
   "lat": 42.88,
   "lon": -85.61,
   "zip": "",
   "city": "1 W Kentwood",
   "date": "2026-05-18",
   "county": "Kent",
   "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": "Mesonet recorded gust.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 81,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-05-18-427-1850",
   "lat": 42.73,
   "lon": -85.12,
   "zip": "",
   "city": "Woodland",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 59,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-Y70-2026-05-18",
   "lat": 42.938,
   "lon": -85.0606,
   "zip": "",
   "city": "Ionia",
   "date": "2026-05-18",
   "county": "Ionia",
   "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": "Ionia (Y70) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Ionia (Y70) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-05-18-437-1901",
   "lat": 42.75,
   "lon": -85.05,
   "zip": "",
   "city": "Woodbury",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Roof mounted weather station peak gust. Heavy damage to trees. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 90,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.97--84.99",
   "lat": 42.97,
   "lon": -84.99,
   "zip": "",
   "city": "2 WSW Lyons",
   "date": "2026-05-18",
   "county": "Ionia",
   "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": "Mesonet station GW7271 LYONS.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-41.80--85.00",
   "lat": 41.8,
   "lon": -85,
   "zip": "",
   "city": "Kinderhook",
   "date": "2026-05-18",
   "county": "Branch",
   "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 Kinderhook",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.78--84.60",
   "lat": 42.78,
   "lon": -84.6,
   "zip": "",
   "city": "2 N Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "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 station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-05-18-451-1930",
   "lat": 43.27,
   "lon": -84.71,
   "zip": "",
   "city": "Ithaca",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured by personal weather station. Sustained 61 gust 81 mph from approx 190 degree direction. Scattered power outages in the area. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 81,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-AMN-2026-05-18",
   "lat": 43.3221,
   "lon": -84.6879,
   "zip": "",
   "city": "Alma",
   "date": "2026-05-18",
   "county": "Gratiot",
   "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": "Alma (AMN) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Alma (AMN) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-45.06--83.43",
   "lat": 45.06,
   "lon": -83.43,
   "zip": "",
   "city": "1 SSE Alpena",
   "date": "2026-05-18",
   "county": "Alpena",
   "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": "Buoy station LPNM4 Alpena_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-43.41--84.61",
   "lat": 43.41,
   "lon": -84.61,
   "zip": "",
   "city": "Saint Louis",
   "date": "2026-05-18",
   "county": "Gratiot",
   "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": "Mesonet station GW2123 St Louis.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-43.53--84.08",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "Tri Cities Intl Airport",
   "date": "2026-05-18",
   "county": "Saginaw",
   "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 at KMBS - MBS International Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HYX-2026-05-18",
   "lat": 43.4334,
   "lon": -83.8623,
   "zip": "",
   "city": "SAGINAW/BROWNE",
   "date": "2026-05-18",
   "county": "Saginaw",
   "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": "SAGINAW/BROWNE (HYX) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW/BROWNE (HYX) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-05-18",
   "county": "Oakland",
   "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 at KPTK Pontiac Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-46.55--87.38",
   "lat": 46.55,
   "lon": -87.38,
   "zip": "",
   "city": "Marquette C.G.",
   "date": "2026-05-18",
   "county": "Marquette",
   "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": "NOS Water Level Observation Network station MCGM4 Marquette C.G._ MI.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "2 WNW Benton Harbor",
   "date": "2026-05-18",
   "county": "Berrien",
   "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": "Mesonet station DVI11762 Saint Joseph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18-wind-43.91--83.38",
   "lat": 43.91,
   "lon": -83.38,
   "zip": "",
   "city": "1 W Sand Point",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.9,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 W Sand Point",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181725-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181736-wind-42.40--86.28",
   "lat": 42.4,
   "lon": -86.28,
   "zip": "",
   "city": "1 WNW South Haven",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 WNW South Haven, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Other Federal via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181741-wind-42.41--86.25",
   "lat": 42.41,
   "lon": -86.25,
   "zip": "",
   "city": "1 ENE South Haven",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE South Haven, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — Dept of Highways via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181820-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-05-18",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181820-wind-42.73--85.72",
   "lat": 42.73,
   "lon": -85.72,
   "zip": "",
   "city": "1 N Dorr",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 N Dorr, MI. Peak gust: 74 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181830-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2026-05-18",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 WSW Grand Valley, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181830-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 E Dorr, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181840-wind-42.83--85.47",
   "lat": 42.83,
   "lon": -85.47,
   "zip": "",
   "city": "Alaska",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Alaska, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181842-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 86 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 86,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181843-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181844-wind-42.31--85.24",
   "lat": 42.31,
   "lon": -85.24,
   "zip": "",
   "city": "1 SSW Springfield",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Springfield, MI. Peak gust: 85 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 85,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181845-wind-42.88--85.61",
   "lat": 42.88,
   "lon": -85.61,
   "zip": "",
   "city": "1 W Kentwood",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 W Kentwood, MI. Peak gust: 93 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 93,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181850-wind-42.73--85.12",
   "lat": 42.73,
   "lon": -85.12,
   "zip": "",
   "city": "1 ENE Woodland",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Woodland, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181900-wind-42.94--85.06",
   "lat": 42.94,
   "lon": -85.06,
   "zip": "",
   "city": "3 S Ionia",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 S Ionia, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181901-wind-42.75--85.05",
   "lat": 42.75,
   "lon": -85.05,
   "zip": "",
   "city": "1 E Woodbury",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Woodbury, MI. Peak gust: 104 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 104,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181909-wind-42.97--84.99",
   "lat": 42.97,
   "lon": -84.99,
   "zip": "",
   "city": "2 WSW Lyons",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WSW Lyons, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181912-wind-41.80--85.00",
   "lat": 41.8,
   "lon": -85,
   "zip": "",
   "city": "Kinderhook",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Kinderhook, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181925-wind-42.78--84.60",
   "lat": 42.78,
   "lon": -84.6,
   "zip": "",
   "city": "2 N Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 N Edgemont Park, MI. Peak gust: 78 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 78,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181930-wind-43.27--84.71",
   "lat": 43.27,
   "lon": -84.71,
   "zip": "",
   "city": "5 WSW Ithaca",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 5 WSW Ithaca, MI. Peak gust: 93 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 93,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605181933-wind-43.32--84.69",
   "lat": 43.32,
   "lon": -84.69,
   "zip": "",
   "city": "4 SSW Alma",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 SSW Alma, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181948-wind-45.06--83.43",
   "lat": 45.06,
   "lon": -83.43,
   "zip": "",
   "city": "1 SSE Alpena",
   "date": "2026-05-18",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Alpena, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181950-wind-43.41--84.61",
   "lat": 43.41,
   "lon": -84.61,
   "zip": "",
   "city": "Saint Louis",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Saint Louis, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605182000-wind-43.53--84.08",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "Tri Cities Intl Airport",
   "date": "2026-05-18",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Tri Cities Intl Airport, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605182012-wind-43.53--84.08",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "Tri Cities Intl Airport",
   "date": "2026-05-18",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Tri Cities Intl Airport, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605182016-wind-43.43--83.86",
   "lat": 43.43,
   "lon": -83.86,
   "zip": "",
   "city": "Saginaw Harry Browne Ai",
   "date": "2026-05-18",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Saginaw Harry Browne Ai, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605182017-wind-41.96--83.66",
   "lat": 41.96,
   "lon": -83.66,
   "zip": "",
   "city": "Dundee",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Dundee, MI. Peak gust: 93 mph.",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 93,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605182045-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-05-18",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Oakland County Intl Air, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181000-wind-46.55--87.38",
   "lat": 46.55,
   "lon": -87.38,
   "zip": "",
   "city": "Marquette C.G.",
   "date": "2026-05-18",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Marquette C.G., MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605181715-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "2 WNW Benton Harbor",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Benton Harbor, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:45:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-05-18",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 51 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T20:14:00Z-wind-42.63--83.98",
   "lat": 42.63,
   "lon": -83.98,
   "zip": "",
   "city": "Livingston County Airpo",
   "date": "2026-05-18",
   "county": "Livingston",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Livingston County Airpo, MI. Peak gust: 52 mph. Measured at KONZ - Livingston County Airport",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T20:57:00Z-wind-42.22--83.74",
   "lat": 42.22,
   "lon": -83.74,
   "zip": "",
   "city": "Ann Arbor Municipal Air",
   "date": "2026-05-18",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Ann Arbor Municipal Air, MI. Peak gust: 56 mph. Measured at KARB",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T21:33:00Z-wind-42.62--82.83",
   "lat": 42.62,
   "lon": -82.83,
   "zip": "",
   "city": "Selfridge ANGB",
   "date": "2026-05-18",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Selfridge ANGB, MI. Peak gust: 56 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T20:55:00Z-wind-43.91--83.38",
   "lat": 43.91,
   "lon": -83.38,
   "zip": "",
   "city": "1 W Sand Point",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 W Sand Point, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:00:00Z-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ESE Lawton, MI. Peak gust: 51 mph. Mesonet station MILAW 0.9 SE Lawton (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:05:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 51 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:36:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-05-18",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 51 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T17:35:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 52 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:50:00Z-wind-43.32--84.49",
   "lat": 43.32,
   "lon": -84.49,
   "zip": "",
   "city": "6 ENE Ithaca",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 6 ENE Ithaca, MI. Peak gust: 52 mph. Mesonet station MIITH 6.4 S Breckenridge (MAWN). Time approximated by radar.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:56:00Z-wind-43.20--85.59",
   "lat": 43.2,
   "lon": -85.59,
   "zip": "",
   "city": "3 SW Cedar Springs",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 SW Cedar Springs, MI. Peak gust: 53 mph. Mesonet station AV534 Cedar Springs.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:20:00Z-wind-42.65--85.76",
   "lat": 42.65,
   "lon": -85.76,
   "zip": "",
   "city": "2 N Hopkins",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 N Hopkins, MI. Peak gust: 54 mph. Mesonet station AX249 HOPKINS.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:01:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 55 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:20:00Z-wind-42.64--85.68",
   "lat": 42.64,
   "lon": -85.68,
   "zip": "",
   "city": "2 WNW Bradley",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WNW Bradley, MI. Peak gust: 55 mph. Mesonet station CW5467 Hopkins.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:23:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 55 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T18:15:00Z-wind-42.53--85.83",
   "lat": 42.53,
   "lon": -85.83,
   "zip": "",
   "city": "1 ENE Allegan",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Allegan, MI. Peak gust: 56 mph. Mesonet station EW9318 Allegan.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-18T19:05:00Z-wind-41.92--85.03",
   "lat": 41.92,
   "lon": -85.03,
   "zip": "",
   "city": "2 SW Coldwater",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Coldwater, MI. Peak gust: 56 mph. AWOS station KOEB Coldwater.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-67-2026-05-18-Isabella-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 30 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #67 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-67"
  },
  {
   "id": "ww-GRR-SV-W-67-2026-05-18-Isabella-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 30 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #67 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-67"
  },
  {
   "id": "ww-GRR-SV-W-67-2026-05-18-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 30 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #67 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-67"
  },
  {
   "id": "ww-GRR-SV-W-67-2026-05-18-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 30 min. Counties: Isabella, Clare. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #67 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-67"
  },
  {
   "id": "ww-APX-SV-W-27-2026-05-18-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 25 min. County: Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #27 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-27"
  },
  {
   "id": "ww-APX-SV-W-27-2026-05-18-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 25 min. County: Montmorency. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #27 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-27"
  },
  {
   "id": "ww-APX-SV-W-25-2026-05-18-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 55 min. Counties: Otsego, Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #25 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-25"
  },
  {
   "id": "ww-APX-SV-W-25-2026-05-18-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 55 min. Counties: Otsego, Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #25 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-25"
  },
  {
   "id": "ww-APX-SV-W-25-2026-05-18-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 55 min. Counties: Otsego, Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #25 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-25"
  },
  {
   "id": "ww-APX-SV-W-25-2026-05-18-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 55 min. Counties: Otsego, Crawford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #25 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-30-2026-05-18-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #30 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-30"
  },
  {
   "id": "ww-DTX-SV-W-30-2026-05-18-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #30 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-30"
  },
  {
   "id": "ww-DTX-SV-W-30-2026-05-18-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #30 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-30"
  },
  {
   "id": "ww-DTX-SV-W-30-2026-05-18-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. Counties: Wayne, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #30 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-30"
  },
  {
   "id": "ww-DTX-SV-W-39-2026-05-18-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 60 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #39 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-39"
  },
  {
   "id": "ww-DTX-SV-W-39-2026-05-18-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 60 min. County: Washtenaw. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #39 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-39"
  },
  {
   "id": "ww-DTX-SV-W-31-2026-05-18-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 80 min. County: Lenawee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #31 (80 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-31"
  },
  {
   "id": "ww-DTX-SV-W-31-2026-05-18-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 80 min. County: Lenawee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #31 (80 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-31"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Charlevoix-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Charlevoix-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-23-2026-05-18-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 49 min. Counties: Antrim, Charlevoix, Otsego. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #23 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-23"
  },
  {
   "id": "ww-MQT-SV-W-3-2026-05-18-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 35 min. Counties: Baraga, Iron. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #3 (35 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-3"
  },
  {
   "id": "ww-MQT-SV-W-3-2026-05-18-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 35 min. Counties: Baraga, Iron. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #3 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-3"
  },
  {
   "id": "ww-MQT-SV-W-3-2026-05-18-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 35 min. Counties: Baraga, Iron. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #3 (35 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-3"
  },
  {
   "id": "ww-MQT-SV-W-3-2026-05-18-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 35 min. Counties: Baraga, Iron. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #3 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-3"
  },
  {
   "id": "iem-ww-IWX-SV-W-143-St. Joseph-wind-2026-05-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-05-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-143"
  },
  {
   "id": "iem-ww-IWX-SV-W-143-St. Joseph-hail-2026-05-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-05-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-143"
  },
  {
   "id": "ww-IWX-SV-W-143-2026-05-18-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 46 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #143 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-143"
  },
  {
   "id": "ww-IWX-SV-W-143-2026-05-18-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 46 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #143 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-143"
  },
  {
   "id": "ww-DTX-SV-W-35-2026-05-18-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 78 min. County: Livingston. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #35 (78 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-35"
  },
  {
   "id": "ww-DTX-SV-W-35-2026-05-18-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 78 min. County: Livingston. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #35 (78 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-35"
  },
  {
   "id": "ww-DTX-SV-W-32-2026-05-18-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. County: Shiawassee. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #32 (63 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-32"
  },
  {
   "id": "ww-DTX-SV-W-32-2026-05-18-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 63 min. County: Shiawassee. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #32 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-66-2026-05-18-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 35 min. Counties: Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #66 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-66"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-GRR-SV-W-64-2026-05-18-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 46 min. Counties: Clinton, Eaton, Ingham, Ionia. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #64 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-64"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-24-2026-05-18-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 45 min. Counties: Grand Traverse, Antrim, Kalkaska. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #24 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-24"
  },
  {
   "id": "ww-DTX-SV-W-36-2026-05-18-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 67 min. County: Genesee. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #36 (67 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-36"
  },
  {
   "id": "ww-DTX-SV-W-36-2026-05-18-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 67 min. County: Genesee. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #36 (67 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-36"
  },
  {
   "id": "ww-DTX-SV-W-34-2026-05-18-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 34 min. County: Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #34 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-34"
  },
  {
   "id": "ww-DTX-SV-W-34-2026-05-18-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 34 min. County: Macomb. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #34 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-34"
  },
  {
   "id": "ww-IWX-SV-W-140-2026-05-18-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 46 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #140 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-140"
  },
  {
   "id": "ww-IWX-SV-W-140-2026-05-18-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 46 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #140 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-140"
  },
  {
   "id": "iem-ww-IWX-SV-W-140-St. Joseph-wind-2026-05-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-05-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-140"
  },
  {
   "id": "iem-ww-IWX-SV-W-140-St. Joseph-hail-2026-05-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-05-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-140"
  },
  {
   "id": "ww-APX-SV-W-26-2026-05-18-Presque Isle-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 51 min. Counties: Presque Isle, Cheboygan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #26 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-26"
  },
  {
   "id": "ww-APX-SV-W-26-2026-05-18-Presque Isle-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 51 min. Counties: Presque Isle, Cheboygan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #26 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-26"
  },
  {
   "id": "ww-APX-SV-W-26-2026-05-18-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 51 min. Counties: Presque Isle, Cheboygan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #26 (51 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-26"
  },
  {
   "id": "ww-APX-SV-W-26-2026-05-18-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 51 min. Counties: Presque Isle, Cheboygan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #26 (51 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-26"
  },
  {
   "id": "iem-ww-DTX-SV-W-37-St. Clair-wind-2026-05-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-37"
  },
  {
   "id": "iem-ww-DTX-SV-W-37-St. Clair-hail-2026-05-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-37"
  },
  {
   "id": "ww-IWX-SV-W-151-2026-05-18-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 22 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #151 (22 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-151"
  },
  {
   "id": "ww-IWX-SV-W-151-2026-05-18-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 22 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #151 (22 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-151"
  },
  {
   "id": "ww-IWX-SV-W-146-2026-05-18-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 41 min. County: Branch. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #146 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-146"
  },
  {
   "id": "ww-IWX-SV-W-146-2026-05-18-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 41 min. County: Branch. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #146 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "IWX-SV-W-146"
  },
  {
   "id": "ww-APX-SV-W-29-2026-05-18-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 13 min. County: Alcona. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #29 (13 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-29"
  },
  {
   "id": "ww-APX-SV-W-29-2026-05-18-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 13 min. County: Alcona. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #29 (13 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "windSpeedMph": 80,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-62-2026-05-18-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 36 min. Counties: Allegan, Barry, Kent. Storm tags: wind: 80.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #62 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-62"
  },
  {
   "id": "ww-GRR-SV-W-60-2026-05-18-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 55 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #60 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-60"
  },
  {
   "id": "ww-GRR-SV-W-60-2026-05-18-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 55 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #60 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-60"
  },
  {
   "id": "ww-GRR-SV-W-60-2026-05-18-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 55 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #60 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-60"
  },
  {
   "id": "ww-GRR-SV-W-60-2026-05-18-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 55 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #60 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-60"
  },
  {
   "id": "ww-DTX-SV-W-42-2026-05-18-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 66 min. County: Lapeer. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #42 (66 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-42"
  },
  {
   "id": "ww-DTX-SV-W-42-2026-05-18-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 66 min. County: Lapeer. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #42 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-42"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-GRR-SV-W-61-2026-05-18-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 79 min. Counties: Kalamazoo, Ottawa, Barry, Allegan, Calhoun, Kent. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #61 (79 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-61"
  },
  {
   "id": "ww-IWX-SV-W-137-2026-05-18-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #137 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-137"
  },
  {
   "id": "ww-IWX-SV-W-137-2026-05-18-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #137 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-137"
  },
  {
   "id": "ww-IWX-SV-W-137-2026-05-18-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #137 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-137"
  },
  {
   "id": "ww-IWX-SV-W-137-2026-05-18-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 45 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #137 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-137"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-GRR-SV-W-63-2026-05-18-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 70 min. Counties: Eaton, Calhoun, Ionia, Montcalm. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #63 (70 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-63"
  },
  {
   "id": "ww-APX-SV-W-28-2026-05-18-Alpena-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 27 min. County: Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #28 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-28"
  },
  {
   "id": "ww-APX-SV-W-28-2026-05-18-Alpena-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-18. Duration: 27 min. County: Alpena. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #28 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-28"
  },
  {
   "id": "ww-MQT-SV-W-4-2026-05-18-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 29 min. Counties: Marquette, Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #4 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-4"
  },
  {
   "id": "ww-MQT-SV-W-4-2026-05-18-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 29 min. Counties: Marquette, Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #4 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-4"
  },
  {
   "id": "ww-MQT-SV-W-4-2026-05-18-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 29 min. Counties: Marquette, Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #4 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-4"
  },
  {
   "id": "ww-MQT-SV-W-4-2026-05-18-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-05-18. Duration: 29 min. Counties: Marquette, Baraga. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #4 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "MQT-SV-W-4"
  },
  {
   "id": "ww-DTX-SV-W-44-2026-05-18-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 81 min. County: Sanilac. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #44 (81 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-44"
  },
  {
   "id": "ww-DTX-SV-W-44-2026-05-18-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 81 min. County: Sanilac. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #44 (81 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-44"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Isabella-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Isabella-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-GRR-SV-W-65-2026-05-18-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-18. Duration: 53 min. Counties: Clinton, Isabella, Jackson, Gratiot, Ingham. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #65 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-65"
  },
  {
   "id": "ww-DTX-SV-W-40-2026-05-18-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 68 min. County: Tuscola. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #40 (68 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-40"
  },
  {
   "id": "ww-DTX-SV-W-40-2026-05-18-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 68 min. County: Tuscola. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #40 (68 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-40"
  },
  {
   "id": "ww-DTX-SV-W-43-2026-05-18-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 62 min. County: Huron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #43 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-43"
  },
  {
   "id": "ww-DTX-SV-W-43-2026-05-18-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 62 min. County: Huron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #43 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-43"
  },
  {
   "id": "ww-IWX-SV-W-147-2026-05-18-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 43 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #147 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-147"
  },
  {
   "id": "ww-IWX-SV-W-147-2026-05-18-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 43 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #147 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-147"
  },
  {
   "id": "ww-IWX-SV-W-147-2026-05-18-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 43 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #147 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-147"
  },
  {
   "id": "ww-IWX-SV-W-147-2026-05-18-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 43 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #147 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-147"
  },
  {
   "id": "ww-DTX-SV-W-45-2026-05-18-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 75 min. Counties: Macomb, St. Clair. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #45 (75 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-45"
  },
  {
   "id": "ww-DTX-SV-W-45-2026-05-18-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 75 min. Counties: Macomb, St. Clair. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #45 (75 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-45"
  },
  {
   "id": "iem-ww-DTX-SV-W-45-St. Clair-wind-2026-05-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-45"
  },
  {
   "id": "iem-ww-DTX-SV-W-45-St. Clair-hail-2026-05-18",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-18",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 0.75\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-45"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-DTX-SV-W-33-2026-05-18-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 57 min. Counties: Bay, Saginaw, Midland. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #33 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-33"
  },
  {
   "id": "ww-IWX-SV-W-134-2026-05-18-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 53 min. County: Berrien. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #134 (53 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-134"
  },
  {
   "id": "ww-IWX-SV-W-134-2026-05-18-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-18. Duration: 53 min. County: Berrien. Storm tags: wind: 70.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #134 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-134"
  },
  {
   "id": "ww-DTX-SV-W-38-2026-05-18-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 75 min. County: Monroe. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #38 (75 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-38"
  },
  {
   "id": "ww-DTX-SV-W-38-2026-05-18-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 75 min. County: Monroe. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #38 (75 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-38"
  },
  {
   "id": "ww-DTX-SV-W-41-2026-05-18-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 72 min. Counties: Wayne, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #41 (72 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-41"
  },
  {
   "id": "ww-DTX-SV-W-41-2026-05-18-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 72 min. Counties: Wayne, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #41 (72 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-41"
  },
  {
   "id": "ww-DTX-SV-W-41-2026-05-18-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 72 min. Counties: Wayne, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #41 (72 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-41"
  },
  {
   "id": "ww-DTX-SV-W-41-2026-05-18-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-18",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-18. Duration: 72 min. Counties: Wayne, Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #41 (72 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-41"
  },
  {
   "id": "asos-bf-ADG-2026-05-18",
   "lat": 41.8677,
   "lon": -84.0773,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-05-18",
   "county": "Fulton",
   "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": "ADRIAN (ADG) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ADRIAN (ADG) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GLR-2026-05-18",
   "lat": 45.0135,
   "lon": -84.7036,
   "zip": "",
   "city": "GAYLORD",
   "date": "2026-05-18",
   "county": "Otsego",
   "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": "GAYLORD (GLR) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GAYLORD (GLR) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2026-05-18",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-05-18",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-05-18",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-05-18",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 63 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-05-18",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-05-18",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-05-18",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-05-18",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2026-05-18",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-05-18",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 68 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-05-18",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-05-18",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 73 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 73,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-05-18-466-2017",
   "lat": 41.96,
   "lon": -83.66,
   "zip": "",
   "city": "Dundee",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured on a handheld anemometer (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 81,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-05-18-481-2100",
   "lat": 43.95,
   "lon": -83.29,
   "zip": "",
   "city": "Caseville Light",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 59,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-43.53--84.08",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "Tri Cities Intl Airport",
   "date": "2026-05-18",
   "county": "Saginaw",
   "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 KMBS - MBS International Airport",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1334273-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "EDWARDSBURG",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Irrigation pivot flipped over.",
   "sourceDetail": "Verified by Public — NCEI Event #1334273",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334274-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "ADAMSVILLE",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree downed onto Eagle Lake Road.",
   "sourceDetail": "Verified by Public — NCEI Event #1334274",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334277-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "VANDALIA",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large trees downed in Vandalia area.",
   "sourceDetail": "Verified by Public — NCEI Event #1334277",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334278-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "JONES",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Reports of trees downed.",
   "sourceDetail": "Verified by Public — NCEI Event #1334278",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334279-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "MARCELLUS",
   "date": "2026-05-18",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Reports of trees downed.",
   "sourceDetail": "Verified by Public — NCEI Event #1334279",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334280-2026-05-18",
   "lon": 213146,
   "zip": "",
   "city": "THREE RIVERS",
   "date": "2026-05-18",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree branches down near Corey Lake.",
   "sourceDetail": "Verified by Public — NCEI Event #1334280",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342552-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "DOSTER",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree limbs down near Pine Lake and Gun Lake.",
   "sourceDetail": "Verified by Public — NCEI Event #1342552",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342555-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "MIDDLEVILLE",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Tree on a house.",
   "sourceDetail": "Verified by Public — NCEI Event #1342555",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342556-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "HASTINGS",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "County dispatch reports numerous trees and wires down across the county.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342556",
   "windSpeedMph": 65,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342559-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "WOODLAND",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Damage to a roof at a learning center.",
   "sourceDetail": "Verified by County Official — NCEI Event #1342559",
   "windSpeedMph": 65,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342593-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "WOODLAND",
   "date": "2026-05-18",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured gust.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1342593",
   "windSpeedMph": 51,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342565-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "CERESCO",
   "date": "2026-05-18",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dispatch reports numerous trees and wires down across Calhoun County including a tree on a house in Marshall.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342565",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342595-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "WOODBURY",
   "date": "2026-05-18",
   "county": "Eaton",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Roof mounted weather station measured gust. Heavy damage to trees.",
   "sourceDetail": "Verified by Public — NCEI Event #1342595",
   "windSpeedMph": 78,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342572-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "PACKARD",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dozen or more trees with trunks or limbs snapped in a wooded area.",
   "sourceDetail": "Verified by Public — NCEI Event #1342572",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342573-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "STANTON",
   "date": "2026-05-18",
   "county": "Montcalm",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dispatch reports numerous trees and wires down across the county.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342573",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342574-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "EAST LANSING",
   "date": "2026-05-18",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dispatch reports numerous trees and wires down across the county. Multiple trees on houses.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342574",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338334-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-05-18",
   "county": "Lenawee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Sporadic trees were reported down across the county, with the highest concentration in and around Adrian.",
   "sourceDetail": "Verified by Law Enforcement — NCEI Event #1338334",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342584-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "SHEPHERD",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Dispatch reports numerous trees and wires down across southern part of the county.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342584",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342585-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "MT PLEASANT ARPT",
   "date": "2026-05-18",
   "county": "Isabella",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Multiple trees on power lines by River Rd and Shepherd Rd.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1342585",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338336-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "BYRON",
   "date": "2026-05-18",
   "county": "Shiawassee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Photo: Healthy 1-foot-diameter tree down across road.",
   "sourceDetail": "Verified by Public — NCEI Event #1338336",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338338-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "DUNDEE",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured on a handheld anemometer.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1338338",
   "windSpeedMph": 70,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1342586-2026-05-18",
   "lon": 214247,
   "zip": "",
   "city": "CLARE MUNI ARPT",
   "date": "2026-05-18",
   "county": "Clare",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Several large trees down.",
   "sourceDetail": "Verified by State Official — NCEI Event #1342586",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339241-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "MT MORRIS",
   "date": "2026-05-18",
   "county": "Genesee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree limbs blown down on powerlines.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1339241",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339239-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "FLINT",
   "date": "2026-05-18",
   "county": "Genesee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Mulitple large tree limbs and powerlines down.",
   "sourceDetail": "Verified by Public — NCEI Event #1339239",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338341-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "ESSEXVILLE",
   "date": "2026-05-18",
   "county": "Bay",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree limbs (10-12 inches in diameter) reported down.",
   "sourceDetail": "Verified by Amateur Radio — NCEI Event #1338341",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338352-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "CARLETON",
   "date": "2026-05-18",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Multiple trees and power lines were reported down countywide, with the highest concentration across northern sections.",
   "sourceDetail": "Verified by Law Enforcement — NCEI Event #1338352",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339240-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "FENTON",
   "date": "2026-05-18",
   "county": "Genesee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree limb observed down.",
   "sourceDetail": "Verified by NWS Employee — NCEI Event #1339240",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338344-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "NORTH LAKE",
   "date": "2026-05-18",
   "county": "Lapeer",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large pine tree (3-foot diameter) reported down.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1338344",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338364-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "DEFORD",
   "date": "2026-05-18",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "A heathly tree was snapped.",
   "sourceDetail": "Verified by Public — NCEI Event #1338364",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1339242-2026-05-18",
   "lon": 213580,
   "zip": "",
   "city": "JUHL",
   "date": "2026-05-18",
   "county": "Sanilac",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Large tree limb and power lines down.",
   "sourceDetail": "Verified by Public — NCEI Event #1339242",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-05-18-wind-42.72--85.65",
   "lat": 42.72,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-05-18",
   "county": "Allegan",
   "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 4 E Dorr",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-05-18-ontonagon-hail",
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-05-18",
   "county": "Ontonagon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Ontonagon — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-05-18",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Gogebic — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-iron-hail",
   "zip": "",
   "city": "Iron",
   "date": "2026-05-18",
   "county": "Iron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Iron — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-05-18",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-manistee-hail",
   "zip": "",
   "city": "Manistee",
   "date": "2026-05-18",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Manistee — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-leelanau-wind",
   "zip": "",
   "city": "Leelanau",
   "date": "2026-05-18",
   "county": "Leelanau",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Leelanau — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-lake-wind",
   "zip": "",
   "city": "Lake",
   "date": "2026-05-18",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-antrim-wind",
   "zip": "",
   "city": "Antrim",
   "date": "2026-05-18",
   "county": "Antrim",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Antrim — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-grandtrave-wind",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-05-18",
   "county": "Grand Traverse",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Grand Traverse — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-18",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-presqueisl-hail",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-05-18",
   "county": "Presque Isle",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Presque Isle — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-18",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-iosco-wind",
   "zip": "",
   "city": "Iosco",
   "date": "2026-05-18",
   "county": "Iosco",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Iosco — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-18-alcona-wind",
   "zip": "",
   "city": "Alcona",
   "date": "2026-05-18",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Alcona — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202605172101-hail-43.50--84.09",
   "lat": 43.5,
   "lon": -84.09,
   "zip": "",
   "city": "2 SE Freeland",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE Freeland, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202605172108-hail-43.51--84.05",
   "lat": 43.51,
   "lon": -84.05,
   "zip": "",
   "city": "2 SE Tri Cities Intl Ai",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE Tri Cities Intl Ai, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605172131-hail-43.56--83.95",
   "lat": 43.56,
   "lon": -83.95,
   "zip": "",
   "city": "1 W Portsmouth Charter",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Portsmouth Charter, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS DTX — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202605172213-hail-43.65--83.47",
   "lat": 43.65,
   "lon": -83.47,
   "zip": "",
   "city": "Unionville",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Unionville, MI. Hail size: 2\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202605172216-hail-43.63--83.45",
   "lat": 43.63,
   "lon": -83.45,
   "zip": "",
   "city": "2 SE Unionville",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 SE Unionville, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605172306-hail-43.70--82.93",
   "lat": 43.7,
   "lon": -82.93,
   "zip": "",
   "city": "1 S Ubly",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 S Ubly, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605172326-hail-43.72--82.74",
   "lat": 43.72,
   "lon": -82.74,
   "zip": "",
   "city": "Ruth",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Ruth, MI. Hail size: 2.5\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.5
  },
  {
   "id": "iem-202605172122-hail-43.56--83.95",
   "lat": 43.56,
   "lon": -83.95,
   "zip": "",
   "city": "1 W Portsmouth Charter",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Portsmouth Charter, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Amateur Radio via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-05-17-hail-43.72--82.74",
   "lat": 43.72,
   "lon": -82.74,
   "zip": "",
   "city": "Ruth",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Media relayed a public report of golf ball sized hail in Ruth.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "ww-DTX-SV-W-29-2026-05-17-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Huron, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #29 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-29"
  },
  {
   "id": "ww-DTX-SV-W-29-2026-05-17-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Huron, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #29 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-29"
  },
  {
   "id": "ww-DTX-SV-W-29-2026-05-17-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Huron, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #29 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-29"
  },
  {
   "id": "ww-DTX-SV-W-29-2026-05-17-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Huron, Sanilac. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #29 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-29"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-APX-SV-W-22-2026-05-17-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 49 min. Counties: Benzie, Manistee, Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #22 (49 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-22"
  },
  {
   "id": "ww-DTX-SV-W-28-2026-05-17-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 58 min. County: Huron. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #28 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-28"
  },
  {
   "id": "ww-DTX-SV-W-28-2026-05-17-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 58 min. County: Huron. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #28 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-28"
  },
  {
   "id": "ww-DTX-SV-W-24-2026-05-17-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 64 min. County: Midland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #24 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-24"
  },
  {
   "id": "ww-DTX-SV-W-24-2026-05-17-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 64 min. County: Midland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #24 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-24"
  },
  {
   "id": "ww-APX-SV-W-21-2026-05-17-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 58 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #21 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-21"
  },
  {
   "id": "ww-APX-SV-W-21-2026-05-17-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 58 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #21 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-21"
  },
  {
   "id": "ww-APX-SV-W-21-2026-05-17-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 58 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #21 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-21"
  },
  {
   "id": "ww-APX-SV-W-21-2026-05-17-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-05-17. Duration: 58 min. Counties: Benzie, Manistee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #21 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-21"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-25-2026-05-17-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 53 min. Counties: Bay, Midland, Saginaw. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #25 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-25"
  },
  {
   "id": "ww-DTX-SV-W-26-2026-05-17-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 48 min. Counties: Bay, Saginaw. Storm tags: wind: 60.0, hail: 2.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #26 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-26"
  },
  {
   "id": "ww-DTX-SV-W-26-2026-05-17-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 48 min. Counties: Bay, Saginaw. Storm tags: wind: 60.0, hail: 2.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #26 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 2.75,
   "warningProductKey": "DTX-SV-W-26"
  },
  {
   "id": "ww-DTX-SV-W-26-2026-05-17-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 48 min. Counties: Bay, Saginaw. Storm tags: wind: 60.0, hail: 2.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #26 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-26"
  },
  {
   "id": "ww-DTX-SV-W-26-2026-05-17-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 48 min. Counties: Bay, Saginaw. Storm tags: wind: 60.0, hail: 2.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #26 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 2.75,
   "warningProductKey": "DTX-SV-W-26"
  },
  {
   "id": "ww-DTX-SV-W-27-2026-05-17-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Tuscola, Huron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #27 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-27"
  },
  {
   "id": "ww-DTX-SV-W-27-2026-05-17-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Tuscola, Huron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #27 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-27"
  },
  {
   "id": "ww-DTX-SV-W-27-2026-05-17-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Tuscola, Huron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #27 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-27"
  },
  {
   "id": "ww-DTX-SV-W-27-2026-05-17-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-17. Duration: 54 min. Counties: Tuscola, Huron. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #27 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-27"
  },
  {
   "id": "iem-ww-DTX-TO-W-10-Huron-tornado-2026-05-17",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Huron.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-10"
  },
  {
   "id": "iem-ww-DTX-TO-W-10-Tuscola-tornado-2026-05-17",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Tuscola.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-10"
  },
  {
   "id": "iem-ww-DTX-TO-W-11-Midland-tornado-2026-05-17",
   "zip": "",
   "city": "Midland",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Midland.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-11"
  },
  {
   "id": "iem-ww-DTX-TO-W-11-Bay-tornado-2026-05-17",
   "zip": "",
   "city": "Bay",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Bay.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-11"
  },
  {
   "id": "iem-ww-DTX-TO-W-11-Huron-tornado-2026-05-17",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Huron.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-11"
  },
  {
   "id": "iem-ww-DTX-TO-W-11-Sanilac-tornado-2026-05-17",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-05-17",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Sanilac.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-11"
  },
  {
   "id": "ncei-1338322-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "(MBS)TRI CITY APT SA",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1338322",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1338323-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "BAY CITY MUNI ARPT",
   "date": "2026-05-17",
   "county": "Bay",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Amateur Radio — NCEI Event #1338323",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1338328-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "BAY PARK",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Damage reports include a pole barn losing parts of its roof, one large tree split, and several other trees with broken branches.",
   "sourceDetail": "Verified by Public — NCEI Event #1338328",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1338325-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "COLUMBIA CORNERS",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1338325",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1338326-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "ULBY",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1338326",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1338321-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "FREELAND",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1338321",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1338324-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "UNIONVILLE",
   "date": "2026-05-17",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1338324",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 2
  },
  {
   "id": "ncei-1338327-2026-05-17",
   "lon": 213477,
   "zip": "",
   "city": "RUTH",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe thunderstorms north of M-46 produced over half a dozen reports of large hail.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1338327",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 2.5
  },
  {
   "id": "sps-2026-05-17-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-05-17",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-17-isabella-hail",
   "zip": "",
   "city": "Isabella",
   "date": "2026-05-17",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-17-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-05-17",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Sanilac — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-17-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-17",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-17-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-05-17",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-17-kalkaska-wind",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-05-17",
   "county": "Kalkaska",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalkaska — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202605161030-hail-42.78--84.05",
   "lat": 42.78,
   "lon": -84.05,
   "zip": "",
   "city": "4 SW Union Plains",
   "date": "2026-05-16",
   "county": "Shiawassee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 SW Union Plains, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-05-16T21:07:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-05-16",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 55 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "ww-GRR-SV-W-59-2026-05-16-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-16",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-05-16. Duration: 30 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #59 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-59"
  },
  {
   "id": "sps-2026-05-16-oceana-wind",
   "zip": "",
   "city": "Oceana",
   "date": "2026-05-16",
   "county": "Oceana",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oceana — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-16-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-05-16",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-16-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-05-16",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-16-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-05-16",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-16-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-16",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-16-macomb-hail",
   "zip": "",
   "city": "Macomb",
   "date": "2026-05-16",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "spc-2026-05-15-500-1030",
   "lat": 42.78,
   "lon": -84.05,
   "zip": "",
   "city": "Union Plains",
   "date": "2026-05-15",
   "county": "Shiawassee",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Estimated quarter size (1 inch) hail reported via public photo. (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-05-15-iron-wind",
   "zip": "",
   "city": "Iron",
   "date": "2026-05-15",
   "county": "Iron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 64,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "4 Special Weather Statements for Iron — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-13-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-05-13",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-13-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-05-13",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-13-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-13",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-13-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-13",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-05-12-wind-43.03--85.69",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "1 SW Comstock Park",
   "date": "2026-05-12",
   "county": "Kent",
   "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 1 SW Comstock Park",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202605130322-wind-43.03--85.69",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "1 SW Comstock Park",
   "date": "2026-05-12",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Comstock Park, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-05-13T02:09:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-05-12",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 56 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-13T03:34:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-05-12",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 52 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-13T02:44:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-05-12",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HTL-2026-05-12",
   "lat": 44.3598,
   "lon": -84.6711,
   "zip": "",
   "city": "HOUGHTON LAKE",
   "date": "2026-05-12",
   "county": "Roscommon",
   "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": "HOUGHTON LAKE (HTL) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOUGHTON LAKE (HTL) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-05-12-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-05-12",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Newaygo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-12-ottawa-wind",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-05-12",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-12-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-05-12",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202605091827-hail-42.73--83.38",
   "lat": 42.73,
   "lon": -83.38,
   "zip": "",
   "city": "2 E Clarkston",
   "date": "2026-05-09",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Clarkston, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-05-09T17:43:00Z-wind-44.45--83.40",
   "lat": 44.45,
   "lon": -83.4,
   "zip": "",
   "city": "1 SW Wurtsmith Airfield",
   "date": "2026-05-09",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SW Wurtsmith Airfield, MI. Peak gust: 53 mph. AWOS station KOSC Oscoda - Wurtsmith AFB.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-23-2026-05-09-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-09",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-09. Duration: 41 min. County: Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #23 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-23"
  },
  {
   "id": "ww-DTX-SV-W-23-2026-05-09-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-09",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-09. Duration: 41 min. County: Oakland. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #23 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-23"
  },
  {
   "id": "ncei-1338319-2026-05-09",
   "lon": 213476,
   "zip": "",
   "city": "CLARKSTON",
   "date": "2026-05-09",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A thunderstorm over northern Oakland county produced 1 inch hail.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1338319",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-05-09-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-05-09",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-09-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-05-09",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-09-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-09",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-YIP-2026-05-05",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-05-05",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-05-05-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-05",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-05-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-05-05",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-05-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-05",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-05-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-05-05",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-05-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-05",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-05-04-hail-41.80--85.42",
   "lat": 41.8,
   "lon": -85.42,
   "zip": "",
   "city": "Sturgis",
   "date": "2026-05-04",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo on Facebook of penny size hail in Sturgis. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1334267-2026-05-04",
   "lon": 213145,
   "zip": "",
   "city": "THREE RIVERS",
   "date": "2026-05-04",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Media relayed picture of hail in Three Rivers around nickel size.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1334267",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202605042200-hail-42.14--84.64",
   "lat": 42.14,
   "lon": -84.64,
   "zip": "",
   "city": "2 S Concord",
   "date": "2026-05-04",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 S Concord, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202605042305-hail-42.01--86.53",
   "lat": 42.01,
   "lon": -86.53,
   "zip": "",
   "city": "Stevensville",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Stevensville, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605042312-hail-42.06--86.44",
   "lat": 42.06,
   "lon": -86.44,
   "zip": "",
   "city": "1 SSE Fair Plain",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SSE Fair Plain, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202605042315-hail-42.08--86.42",
   "lat": 42.08,
   "lon": -86.42,
   "zip": "",
   "city": "2 E Fair Plain",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Fair Plain, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605042316-hail-42.05--86.37",
   "lat": 42.05,
   "lon": -86.37,
   "zip": "",
   "city": "Sodus",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Sodus, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202605042322-hail-42.12--86.34",
   "lat": 42.12,
   "lon": -86.34,
   "zip": "",
   "city": "Millburg",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Millburg, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202605042333-hail-42.12--86.19",
   "lat": 42.12,
   "lon": -86.19,
   "zip": "",
   "city": "1 W Keeler",
   "date": "2026-05-04",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Keeler, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202605042340-hail-42.46--83.06",
   "lat": 42.46,
   "lon": -83.06,
   "zip": "",
   "city": "2 E Hazel Park",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 E Hazel Park, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202605050009-hail-42.27--85.75",
   "lat": 42.27,
   "lon": -85.75,
   "zip": "",
   "city": "4 W Oshtemo",
   "date": "2026-05-04",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Oshtemo, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-05-04-wind-42.43--82.87",
   "lat": 42.43,
   "lon": -82.87,
   "zip": "",
   "city": "Grosse Pointe YC",
   "date": "2026-05-04",
   "county": "Wayne",
   "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 Grosse Pointe YC",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-wind-42.57--82.80",
   "lat": 42.57,
   "lon": -82.8,
   "zip": "",
   "city": "Lake St. Clair Metropar",
   "date": "2026-05-04",
   "county": "Macomb",
   "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 Lake St. Clair Metropar",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-05-04",
   "county": "Otsego",
   "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 KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-05-04",
   "county": "Grand Traverse",
   "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 KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-05-04",
   "county": "Houghton",
   "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 station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605042354-wind-42.43--82.87",
   "lat": 42.43,
   "lon": -82.87,
   "zip": "",
   "city": "Grosse Pointe YC",
   "date": "2026-05-04",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Grosse Pointe YC, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605050006-wind-42.57--82.80",
   "lat": 42.57,
   "lon": -82.8,
   "zip": "",
   "city": "Lake St. Clair Metropar",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Lake St. Clair Metropar, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS DTX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605041712-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-05-04",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605041733-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-05-04",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605042035-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-05-04",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:28:00Z-wind-45.65--84.52",
   "lat": 45.65,
   "lon": -84.52,
   "zip": "",
   "city": "2 WNW Cheboygan",
   "date": "2026-05-04",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Cheboygan, MI. Peak gust: 51 mph. AWOS station KSLH Cheboygan - Cheboygan County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T19:30:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2026-05-04",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 51 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:48:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-05-04",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 52 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T18:07:00Z-wind-45.14--84.66",
   "lat": 45.14,
   "lon": -84.66,
   "zip": "",
   "city": "Vanderbilt",
   "date": "2026-05-04",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Vanderbilt, MI. Peak gust: 52 mph. Mesonet station GW5777 VANDERBILT.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:58:00Z-wind-45.36--84.95",
   "lat": 45.36,
   "lon": -84.95,
   "zip": "",
   "city": "1 SSE Petoskey",
   "date": "2026-05-04",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Petoskey, MI. Peak gust: 53 mph. Mesonet station AS614 Petoskey.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T18:45:00Z-wind-45.42--84.79",
   "lat": 45.42,
   "lon": -84.79,
   "zip": "",
   "city": "3 E Oden",
   "date": "2026-05-04",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 E Oden, MI. Peak gust: 53 mph. Mesonet station EW7833 Alanson.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:53:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2026-05-04",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 54 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:54:00Z-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2026-05-04",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mackinaw City, MI. Peak gust: 54 mph. Buoy station MACM4 Mackinaw City, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T18:53:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-05-04",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 56 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T22:53:00Z-wind-42.22--83.74",
   "lat": 42.22,
   "lon": -83.74,
   "zip": "",
   "city": "Ann Arbor Municipal Air",
   "date": "2026-05-04",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Ann Arbor Municipal Air, MI. Peak gust: 55 mph. Measued at KARB Ann Arbor Municipal Airport. Additionally, recevied spotter report in city of Ann Arbor of healthy 10 inch tree limb down.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-05T01:00:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-05-04",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 51 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T17:50:00Z-wind-43.72--85.50",
   "lat": 43.72,
   "lon": -85.5,
   "zip": "",
   "city": "1 NW Big Rapids",
   "date": "2026-05-04",
   "county": "Mecosta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Big Rapids, MI. Peak gust: 53 mph. AWOS station KRQB Big Rapids Roben-Hood Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T22:15:00Z-wind-42.06--84.50",
   "lat": 42.06,
   "lon": -84.5,
   "zip": "",
   "city": "1 NE Moscow",
   "date": "2026-05-04",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 NE Moscow, MI. Peak gust: 52 mph. Spotter estimates wind gusts between 40 to 50 mph. Also has pea size hail and torrential rainfall.",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-05-04T14:57:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-05-04",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 53 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T23:53:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-05-04",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 55 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-05-04-hail-42.05--86.37",
   "lat": 42.05,
   "lon": -86.37,
   "zip": "",
   "city": "Sodus",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Sodus",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "ww-IWX-SV-W-131-2026-05-04-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 10 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #131 (10 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-131"
  },
  {
   "id": "ww-IWX-SV-W-131-2026-05-04-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 10 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #131 (10 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-131"
  },
  {
   "id": "ww-IWX-SV-W-131-2026-05-04-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 10 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #131 (10 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-131"
  },
  {
   "id": "ww-IWX-SV-W-131-2026-05-04-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 10 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #131 (10 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-131"
  },
  {
   "id": "ww-IWX-SV-W-132-2026-05-04-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 41 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #132 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-132"
  },
  {
   "id": "ww-IWX-SV-W-132-2026-05-04-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 41 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #132 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-132"
  },
  {
   "id": "ww-IWX-SV-W-130-2026-05-04-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 23 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #130 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-130"
  },
  {
   "id": "ww-IWX-SV-W-130-2026-05-04-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-05-04. Duration: 23 min. County: Berrien. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #130 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-130"
  },
  {
   "id": "ww-DTX-SV-W-21-2026-05-04-Macomb-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-04. Duration: 26 min. Counties: Macomb, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #21 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-21"
  },
  {
   "id": "ww-DTX-SV-W-21-2026-05-04-Macomb-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-04. Duration: 26 min. Counties: Macomb, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #21 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-21"
  },
  {
   "id": "ww-DTX-SV-W-21-2026-05-04-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-04. Duration: 26 min. Counties: Macomb, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #21 (26 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-21"
  },
  {
   "id": "ww-DTX-SV-W-21-2026-05-04-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-05-04",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-05-04. Duration: 26 min. Counties: Macomb, Wayne. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #21 (26 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-21"
  },
  {
   "id": "iem-ww-DTX-SV-W-22-St. Clair-wind-2026-05-04",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-04",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Clair. Max wind tag: 60 mph.",
   "sourceDetail": "NWS DTX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-22"
  },
  {
   "id": "iem-ww-DTX-SV-W-22-St. Clair-hail-2026-05-04",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-05-04",
   "county": "St. Clair",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Clair. Max hail tag: 1\".",
   "sourceDetail": "NWS DTX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-22"
  },
  {
   "id": "asos-bf-CMX-2026-05-04",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-05-04",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2026-05-04",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-05-04",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GLR-2026-05-04",
   "lat": 45.0135,
   "lon": -84.7036,
   "zip": "",
   "city": "GAYLORD",
   "date": "2026-05-04",
   "county": "Otsego",
   "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": "GAYLORD (GLR) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GAYLORD (GLR) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1334269-2026-05-04",
   "lon": 213145,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo on Facebook of penny to quarter size hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1334269",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1338297-2026-05-04",
   "lon": 213574,
   "zip": "",
   "city": "PLEASANT RIDGE",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A few severe thunderstorms producing wind damage developed over Macomb, St. Clair, and Wayne counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1338297",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.88
  },
  {
   "id": "ncei-1338302-2026-05-04",
   "lon": 213574,
   "zip": "",
   "city": "MARINE CITY",
   "date": "2026-05-04",
   "county": "St. Clair",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Minor roof damage was reported to several mobile homes.",
   "sourceDetail": "Verified by Public — NCEI Event #1338302",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-05-04-hail-41.94--85.63",
   "lat": 41.94,
   "lon": -85.63,
   "zip": "",
   "city": "Three Rivers",
   "date": "2026-05-04",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Media relayed picture of hail in Three Rivers around nickel size. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "ncei-1334268-2026-05-04",
   "lon": 213145,
   "zip": "",
   "city": "STEVENSVILLE",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Spotter reports quarter size hail in Stevensville just after 7 PM EDT.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1334268",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-05-04-stjoseph-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-05-04",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-05-04",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Cass — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-05-04",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-calhoun-hail",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-05-04",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-branch-hail",
   "zip": "",
   "city": "Branch",
   "date": "2026-05-04",
   "county": "Branch",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Branch — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-05-04",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2026-05-04",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-05-04",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-05-04",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-wayne-hail",
   "zip": "",
   "city": "Wayne",
   "date": "2026-05-04",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-05-04",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-vanburen-hail",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-05-04",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-05-04",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-05-04",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-05-04-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-05-04",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-GRR-2026-05-03",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-05-03",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202605031901-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-05-03",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-04T01:33:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2026-05-03",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 53 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-05-03T18:10:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-05-03",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 52 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-28-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-04-28",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-28-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-28",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604281707-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-04-28",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604281800-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-28",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-28T17:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-04-28",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 51 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-28T11:17:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-28",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 55 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-04-28",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-04-28",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CIU-2026-04-27",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "CHIPPEWA INTL",
   "date": "2026-04-27",
   "county": "Chippewa",
   "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": "CHIPPEWA INTL (CIU) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — CHIPPEWA INTL (CIU) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.17--85.82",
   "lat": 42.17,
   "lon": -85.82,
   "zip": "",
   "city": "1 E Lawton",
   "date": "2026-04-27",
   "county": "Van Buren",
   "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": "Mesonet station EW6899 Lawton.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-04-27",
   "county": "Mason",
   "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": "Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-43.19--85.77",
   "lat": 43.19,
   "lon": -85.77,
   "zip": "",
   "city": "2 SSW Kent City",
   "date": "2026-04-27",
   "county": "Kent",
   "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 2 SSW Kent City",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-43.03--85.69",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "1 SW Comstock Park",
   "date": "2026-04-27",
   "county": "Kent",
   "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 1 SW Comstock Park",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-27",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-04-27",
   "county": "Van Buren",
   "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": "Mesonet station MILAW 0.9 SE Lawton (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-43.18--85.74",
   "lat": 43.18,
   "lon": -85.74,
   "zip": "",
   "city": "2 NW Sparta",
   "date": "2026-04-27",
   "county": "Kent",
   "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": "Mesonet station MISPN 2.0 NW Sparta (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-43.12--85.83",
   "lat": 43.12,
   "lon": -85.83,
   "zip": "",
   "city": "1 WNW Wright",
   "date": "2026-04-27",
   "county": "Ottawa",
   "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": "Mesonet station MICNK 1.1 W Wright (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-AZO-2026-04-27",
   "lat": 42.2347,
   "lon": -85.5519,
   "zip": "",
   "city": "KALAMAZOO",
   "date": "2026-04-27",
   "county": "Kalamazoo",
   "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": "KALAMAZOO (AZO) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — KALAMAZOO (AZO) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272104-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.31--85.19",
   "lat": 42.31,
   "lon": -85.19,
   "zip": "",
   "city": "1 W Battle Creek",
   "date": "2026-04-27",
   "county": "Calhoun",
   "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": "Corrects previous non-tstm wnd dmg report from 1 W Battle Creek.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.26--84.96",
   "lat": 42.26,
   "lon": -84.96,
   "zip": "",
   "city": "Marshall",
   "date": "2026-04-27",
   "county": "Calhoun",
   "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 Marshall",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-LAN-2026-04-27",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-04-27",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-41.98--85.43",
   "lat": 41.98,
   "lon": -85.43,
   "zip": "",
   "city": "2 SSE Mendon",
   "date": "2026-04-27",
   "county": "St. Joseph",
   "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": "Mesonet station MIMEN 2.0 SE Mendon (MAWN).",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "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 2 SE Mason",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-27",
   "county": "Jackson",
   "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": "Delayed report from earlier. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272023-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2026-04-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272030-wind-42.17--85.82",
   "lat": 42.17,
   "lon": -85.82,
   "zip": "",
   "city": "1 E Lawton",
   "date": "2026-04-27",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 E Lawton, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272040-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-04-27",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272044-wind-43.19--85.77",
   "lat": 43.19,
   "lon": -85.77,
   "zip": "",
   "city": "2 SSW Kent City",
   "date": "2026-04-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Kent City, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604272055-wind-43.03--85.69",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "1 SW Comstock Park",
   "date": "2026-04-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Comstock Park, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604272058-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-27",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272100-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-04-27",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Lawton, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272100-wind-43.18--85.74",
   "lat": 43.18,
   "lon": -85.74,
   "zip": "",
   "city": "2 NW Sparta",
   "date": "2026-04-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NW Sparta, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272100-wind-43.12--85.83",
   "lat": 43.12,
   "lon": -85.83,
   "zip": "",
   "city": "1 WNW Wright",
   "date": "2026-04-27",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Wright, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272100-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-04-27",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272111-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272116-wind-42.31--85.19",
   "lat": 42.31,
   "lon": -85.19,
   "zip": "",
   "city": "1 W Battle Creek",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Battle Creek, MI. Peak gust: 74 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604272135-wind-42.26--84.96",
   "lat": 42.26,
   "lon": -84.96,
   "zip": "",
   "city": "Marshall",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Marshall, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604272140-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-04-27",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272216-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Mason, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604272217-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-27",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T19:32:00Z-wind-46.36--84.80",
   "lat": 46.36,
   "lon": -84.8,
   "zip": "",
   "city": "4 WSW Raco",
   "date": "2026-04-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WSW Raco, MI. Peak gust: 51 mph. Mesonet station RACM4 4 W Raco.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:14:00Z-wind-46.24--84.51",
   "lat": 46.24,
   "lon": -84.51,
   "zip": "",
   "city": "1 SW Kincheloe",
   "date": "2026-04-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Kincheloe, MI. Peak gust: 51 mph. Mesonet station RYDM4 Rudyard.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T23:42:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2026-04-27",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 51 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:51:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-04-27",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 52 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:38:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-04-27",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 53 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T22:36:00Z-wind-43.53--84.08",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "Tri Cities Intl Airport",
   "date": "2026-04-27",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Tri Cities Intl Airport, MI. Peak gust: 52 mph. Measured gust at KMBS.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T22:43:00Z-wind-41.87--84.08",
   "lat": 41.87,
   "lon": -84.08,
   "zip": "",
   "city": "Lenawee County Airport",
   "date": "2026-04-27",
   "county": "Lenawee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Lenawee County Airport, MI. Peak gust: 52 mph. Measured gust at KADG.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T22:37:00Z-wind-42.63--83.98",
   "lat": 42.63,
   "lon": -83.98,
   "zip": "",
   "city": "Livingston County Airpo",
   "date": "2026-04-27",
   "county": "Livingston",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Livingston County Airpo, MI. Peak gust: 55 mph. Measured gust at KOZW.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-28T00:13:00Z-wind-43.94--82.72",
   "lat": 43.94,
   "lon": -82.72,
   "zip": "",
   "city": "Port Hope",
   "date": "2026-04-27",
   "county": "Huron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Hope, MI. Peak gust: 55 mph. Measured at KP58.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T22:15:00Z-wind-42.57--84.42",
   "lat": 42.57,
   "lon": -84.42,
   "zip": "",
   "city": "2 SE Mason",
   "date": "2026-04-27",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Mason, MI. Peak gust: 51 mph. AWOS station KTEW Mason Jewett Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T20:18:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-04-27",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 52 mph. Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T20:26:00Z-wind-43.97--86.40",
   "lat": 43.97,
   "lon": -86.4,
   "zip": "",
   "city": "2 ENE Ludington",
   "date": "2026-04-27",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Ludington, MI. Peak gust: 52 mph. AWOS station KLDM Ludington Mason County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T20:52:00Z-wind-43.13--85.68",
   "lat": 43.13,
   "lon": -85.68,
   "zip": "",
   "city": "3 SE Sparta",
   "date": "2026-04-27",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE Sparta, MI. Peak gust: 52 mph. AWOS station K8D4 Miller-Sparta Airport.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:49:00Z-wind-42.27--84.89",
   "lat": 42.27,
   "lon": -84.89,
   "zip": "",
   "city": "2 W Marengo",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 W Marengo, MI. Peak gust: 52 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-27T21:00:00Z-wind-42.26--85.64",
   "lat": 42.26,
   "lon": -85.64,
   "zip": "",
   "city": "2 E Oshtemo",
   "date": "2026-04-27",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Oshtemo, MI. Peak gust: 54 mph. Mesonet station MIWMU Msuwmu.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:35:00Z-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 54 mph. AWOS station KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T20:29:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-04-27",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 55 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:38:00Z-wind-41.92--85.03",
   "lat": 41.92,
   "lon": -85.03,
   "zip": "",
   "city": "2 SW Coldwater",
   "date": "2026-04-27",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Coldwater, MI. Peak gust: 53 mph. AWOS station KOEB Coldwater.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-27T21:40:00Z-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-04-27",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 55 mph. ASOS station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-28T02:31:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-04-27",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 52 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-27-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-27",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "ww-GRR-SV-W-56-2026-04-27-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-27",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-27. Duration: 83 min. Counties: Van Buren, Allegan, Calhoun, Eaton, Barry. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #56 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-56"
  },
  {
   "id": "asos-bf-JXN-2026-04-27",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-04-27",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-04-27",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-04-27",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-04-27",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-04-27",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-04-27-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-27",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-27-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-04-27",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 63,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Wayne — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-27-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-04-27",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-27-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-04-27",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-27-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-04-27",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ww-MQT-FL-W-15-2026-04-25-Luce",
   "zip": "",
   "city": "",
   "date": "2026-04-25",
   "county": "Luce",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-25. Duration: 2648 min. County: Luce. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #15 (2648 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-15"
  },
  {
   "id": "iem-lsr-2026-04-24-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-24",
   "county": "Jackson",
   "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": "Corrects previous tstm wnd gst report from 3 ENE Sandstone. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-24-wind-42.26--84.44",
   "lat": 42.26,
   "lon": -84.44,
   "zip": "",
   "city": "2 WNW Jackson",
   "date": "2026-04-24",
   "county": "Jackson",
   "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": "Mesonet station CW5542 Jackson.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604241904-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-24",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604241909-wind-42.26--84.44",
   "lat": 42.26,
   "lon": -84.44,
   "zip": "",
   "city": "2 WNW Jackson",
   "date": "2026-04-24",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WNW Jackson, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-24T19:03:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-24",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 53 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-24T12:36:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2026-04-24",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 51 mph. Mesonet station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-19-2026-04-24-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 44 min. County: Lenawee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #19 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-19"
  },
  {
   "id": "ww-DTX-SV-W-19-2026-04-24-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 44 min. County: Lenawee. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #19 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-19"
  },
  {
   "id": "ww-DTX-SV-W-20-2026-04-24-Midland-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 31 min. Counties: Midland, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #20 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-20"
  },
  {
   "id": "ww-DTX-SV-W-20-2026-04-24-Midland-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 31 min. Counties: Midland, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #20 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-20"
  },
  {
   "id": "ww-DTX-SV-W-20-2026-04-24-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 31 min. Counties: Midland, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #20 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-20"
  },
  {
   "id": "ww-DTX-SV-W-20-2026-04-24-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-24. Duration: 31 min. Counties: Midland, Bay. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #20 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-20"
  },
  {
   "id": "ww-MQT-FL-W-14-2026-04-24-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-24",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-24. Duration: 2054 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #14 (2054 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-14"
  },
  {
   "id": "asos-bf-JXN-2026-04-24",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-04-24",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-04-24-montcalm-wind",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-04-24",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-hillsdale-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-04-24",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Hillsdale — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-crawford-wind",
   "zip": "",
   "city": "Crawford",
   "date": "2026-04-24",
   "county": "Crawford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Crawford — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-gladwin-wind",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-04-24",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-24",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-gratiot-wind",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-04-24",
   "county": "Gratiot",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gratiot — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-24",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-24",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Saginaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-ingham-wind",
   "zip": "",
   "city": "Ingham",
   "date": "2026-04-24",
   "county": "Ingham",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Ingham — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-04-24",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2026-04-24",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-04-24",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-arenac-wind",
   "zip": "",
   "city": "Arenac",
   "date": "2026-04-24",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-24",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-04-24",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Oakland — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-04-24",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-04-24",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-04-24",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-24-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-04-24",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202604221837-hail-41.90--84.71",
   "lat": 41.9,
   "lon": -84.71,
   "zip": "",
   "city": "2 NW Lake Wilson",
   "date": "2026-04-22",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NW Lake Wilson, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS IWX — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202604221956-hail-41.88--84.58",
   "lat": 41.88,
   "lon": -84.58,
   "zip": "",
   "city": "2 W Osseo",
   "date": "2026-04-22",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 W Osseo, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "sps-2026-04-22-hillsdale-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-04-22",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-22-stjoseph-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-22",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for St. Joseph — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-22-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-04-22",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-22-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-22",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Lenawee — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ww-MQT-FL-W-13-2026-04-21-Iron",
   "zip": "",
   "city": "",
   "date": "2026-04-21",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-21. Duration: 30240 min. County: Iron. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #13 (30240 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-13"
  },
  {
   "id": "ww-GRB-FL-W-45-2026-04-20-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-20",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-20. Duration: 2226 min. Counties: Menominee, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #45 (2226 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-45"
  },
  {
   "id": "ww-GRB-FL-W-45-2026-04-20-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-20",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-20. Duration: 2226 min. Counties: Menominee, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #45 (2226 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-45"
  },
  {
   "id": "ww-APX-FA-W-11-2026-04-19-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3306 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #11 (3306 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-11"
  },
  {
   "id": "ww-APX-FA-W-11-2026-04-19-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3306 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #11 (3306 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-11"
  },
  {
   "id": "ww-APX-FA-W-11-2026-04-19-Missaukee",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3306 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #11 (3306 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-11"
  },
  {
   "id": "ww-APX-FA-W-11-2026-04-19-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3306 min. Counties: Crawford, Kalkaska, Missaukee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #11 (3306 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-11"
  },
  {
   "id": "ww-APX-FA-W-12-2026-04-19-Missaukee",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3302 min. Counties: Missaukee, Crawford, Grand Traverse, Kalkaska, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #12 (3302 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-12"
  },
  {
   "id": "ww-APX-FA-W-12-2026-04-19-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3302 min. Counties: Missaukee, Crawford, Grand Traverse, Kalkaska, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #12 (3302 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-12"
  },
  {
   "id": "ww-APX-FA-W-12-2026-04-19-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3302 min. Counties: Missaukee, Crawford, Grand Traverse, Kalkaska, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #12 (3302 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-12"
  },
  {
   "id": "ww-APX-FA-W-12-2026-04-19-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3302 min. Counties: Missaukee, Crawford, Grand Traverse, Kalkaska, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #12 (3302 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-12"
  },
  {
   "id": "ww-APX-FA-W-12-2026-04-19-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3302 min. Counties: Missaukee, Crawford, Grand Traverse, Kalkaska, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #12 (3302 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-12"
  },
  {
   "id": "ww-APX-FA-W-10-2026-04-19-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1930 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #10 (1930 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-10"
  },
  {
   "id": "ww-APX-FA-W-13-2026-04-19-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3299 min. Counties: Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #13 (3299 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-13"
  },
  {
   "id": "ww-APX-FA-W-13-2026-04-19-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 3299 min. Counties: Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #13 (3299 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-13"
  },
  {
   "id": "ww-APX-FA-W-9-2026-04-19-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1874 min. Counties: Alcona, Iosco, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #9 (1874 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-9"
  },
  {
   "id": "ww-APX-FA-W-9-2026-04-19-Iosco",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1874 min. Counties: Alcona, Iosco, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #9 (1874 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-9"
  },
  {
   "id": "ww-APX-FA-W-9-2026-04-19-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1874 min. Counties: Alcona, Iosco, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #9 (1874 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-9"
  },
  {
   "id": "ww-APX-FA-W-8-2026-04-19-Alpena",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1877 min. Counties: Alpena, Presque Isle. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #8 (1877 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-8"
  },
  {
   "id": "ww-APX-FA-W-8-2026-04-19-Presque Isle",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-19. Duration: 1877 min. Counties: Alpena, Presque Isle. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #8 (1877 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-8"
  },
  {
   "id": "ww-GRR-FL-W-47-2026-04-19-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-19. Duration: 6480 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #47 (6480 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-47"
  },
  {
   "id": "ww-GRR-FL-W-48-2026-04-19-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-19",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-19. Duration: 7380 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #48 (7380 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-48"
  },
  {
   "id": "ncei-1332998-2026-04-18",
   "lon": 212998,
   "zip": "",
   "city": "MOLINE",
   "date": "2026-04-18",
   "county": "Allegan",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Straight line wind damage that included isolated roof and significant tree damage. Most concentrated damage was near 146th avenue and 9th street.",
   "sourceDetail": "Verified by NWS Employee — NCEI Event #1332998",
   "windSpeedMph": 70,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1332999-2026-04-18",
   "lon": 212998,
   "zip": "",
   "city": "NEELEY",
   "date": "2026-04-18",
   "county": "Allegan",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Scattered trees down between Plainwell and Pine Lake. Scattered power outages.",
   "sourceDetail": "Verified by Public — NCEI Event #1332999",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-04-18-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-04-18",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-18-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-18",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-18-flood-46.22--88.46",
   "lat": 46.22,
   "lon": -88.46,
   "zip": "",
   "city": "1 SSW Amasa",
   "date": "2026-04-18",
   "county": "Iron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Corrects previous flood report from 1 SSW Amasa. Delayed report. Snuff Country Bridge washed out on 4/18 on Maki Road. Snuff Country Road from Hemlock Bridge to Bates-Amasa Rd, Park City Rd, at the Hemlock River, and Spruce St. from Highway 141 to River Lane closed.",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-18-flood-46.25--88.35",
   "lat": 46.25,
   "lon": -88.35,
   "zip": "",
   "city": "5 ENE Amasa",
   "date": "2026-04-18",
   "county": "Iron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. Deer Lake Road northeast of Amasa washed out 4/18/2026.",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-18-flood-46.10--88.36",
   "lat": 46.1,
   "lon": -88.36,
   "zip": "",
   "city": "2 W Crystal Falls",
   "date": "2026-04-18",
   "county": "Iron",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. Emergency manager reports minor washouts county wide from snowmelt and rain event 4/17-4/18.",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604181852-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-04-18",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604182343-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-18",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-18T05:22:00Z-wind-42.75--85.63",
   "lat": 42.75,
   "lon": -85.63,
   "zip": "",
   "city": "2 ENE Moline",
   "date": "2026-04-18",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near 2 ENE Moline, MI. Peak gust: 80 mph. 3 mile path of scattered damage. Roof and tree damage consistent with estimated peak winds around 80 mph. Most concentrated damage near 146th Ave and 9th St. No conclusive evidence of lofted debris.",
   "sourceDetail": "NWS GRR — NWS Employee via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 80,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-18T06:03:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-18",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 51 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-IWX-SV-W-119-2026-04-18-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 46 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #119 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "ww-IWX-SV-W-119-2026-04-18-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 46 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #119 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "ww-IWX-SV-W-119-2026-04-18-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 46 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #119 (46 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "ww-IWX-SV-W-119-2026-04-18-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 46 min. Counties: Berrien, Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #119 (46 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "iem-ww-IWX-SV-W-119-St. Joseph-wind-2026-04-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "iem-ww-IWX-SV-W-119-St. Joseph-hail-2026-04-18",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-18",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-119"
  },
  {
   "id": "ww-IWX-SV-W-118-2026-04-18-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 47 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #118 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-118"
  },
  {
   "id": "ww-IWX-SV-W-118-2026-04-18-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 47 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #118 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-118"
  },
  {
   "id": "ww-IWX-SV-W-118-2026-04-18-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 47 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #118 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-118"
  },
  {
   "id": "ww-IWX-SV-W-118-2026-04-18-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-18. Duration: 47 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #118 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-118"
  },
  {
   "id": "iem-ww-IWX-TO-W-25-Berrien-tornado-2026-04-18",
   "zip": "",
   "city": "Berrien",
   "date": "2026-04-18",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Berrien.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-25"
  },
  {
   "id": "iem-ww-IWX-TO-W-25-Cass-tornado-2026-04-18",
   "zip": "",
   "city": "Cass",
   "date": "2026-04-18",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-25"
  },
  {
   "id": "ww-MQT-FA-W-4-2026-04-18-Baraga",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-18. Duration: 359 min. Counties: Baraga, Houghton, Iron, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #4 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-4"
  },
  {
   "id": "ww-MQT-FA-W-4-2026-04-18-Houghton",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-18. Duration: 359 min. Counties: Baraga, Houghton, Iron, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #4 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-4"
  },
  {
   "id": "ww-MQT-FA-W-4-2026-04-18-Iron",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-18. Duration: 359 min. Counties: Baraga, Houghton, Iron, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #4 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-4"
  },
  {
   "id": "ww-MQT-FA-W-4-2026-04-18-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-18. Duration: 359 min. Counties: Baraga, Houghton, Iron, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #4 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-4"
  },
  {
   "id": "ww-MQT-FL-W-7-2026-04-18-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-18. Duration: 3180 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #7 (3180 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-7"
  },
  {
   "id": "ww-MQT-FL-W-12-2026-04-18-Luce",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Luce",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-18. Duration: 2968 min. County: Luce. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #12 (2968 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-12"
  },
  {
   "id": "ww-GRR-FL-W-46-2026-04-18-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-18",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-18. Duration: 7830 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #46 (7830 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-46"
  },
  {
   "id": "asos-bf-CMX-2026-04-18",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-04-18",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-04-18-ottawa-wind",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-04-18",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-18-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-04-18",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-18-kalamazoo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-18",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-18-ionia-wind",
   "zip": "",
   "city": "Ionia",
   "date": "2026-04-18",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-18-stjoseph-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-18",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-18-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-04-18",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1331683-2026-04-17",
   "lon": 212839,
   "zip": "",
   "city": "WATERVLIET ARPT",
   "date": "2026-04-17",
   "county": "Berrien",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Public reports a tree was uprooted.",
   "sourceDetail": "Verified by Public — NCEI Event #1331683",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ww-MQT-SV-W-2-2026-04-17-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 12 min. Counties: Gogebic, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #2 (12 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-2"
  },
  {
   "id": "ww-MQT-SV-W-2-2026-04-17-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 12 min. Counties: Gogebic, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #2 (12 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-2"
  },
  {
   "id": "ww-MQT-SV-W-2-2026-04-17-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 12 min. Counties: Gogebic, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #2 (12 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-2"
  },
  {
   "id": "ww-MQT-SV-W-2-2026-04-17-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 12 min. Counties: Gogebic, Iron. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #2 (12 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "MQT-SV-W-2"
  },
  {
   "id": "ww-IWX-SV-W-117-2026-04-17-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-17. Duration: 54 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #117 (54 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-117"
  },
  {
   "id": "ww-IWX-SV-W-117-2026-04-17-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-17. Duration: 54 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #117 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-117"
  },
  {
   "id": "ww-MQT-SV-W-1-2026-04-17-Gogebic-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 34 min. County: Gogebic. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #1 (34 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-1"
  },
  {
   "id": "ww-MQT-SV-W-1-2026-04-17-Gogebic-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2026-04-17. Duration: 34 min. County: Gogebic. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #1 (34 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "MQT-SV-W-1"
  },
  {
   "id": "ww-MQT-FF-W-1-2026-04-17-Baraga",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS MQT on 2026-04-17. Duration: 185 min. County: Baraga. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flash Flood Warning #1 (185 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FF-W-1"
  },
  {
   "id": "ww-MQT-FL-W-10-2026-04-17-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-17. Duration: 4642 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #10 (4642 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-10"
  },
  {
   "id": "ww-GRR-FL-W-45-2026-04-17-Mason",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-17. Duration: 1440 min. County: Mason. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #45 (1440 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-45"
  },
  {
   "id": "ww-GRR-FL-W-44-2026-04-17-Ottawa",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-17. Duration: 30240 min. County: Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #44 (30240 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-44"
  },
  {
   "id": "ww-MQT-FL-W-11-2026-04-17-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-17. Duration: 3958 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #11 (3958 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-11"
  },
  {
   "id": "ww-IWX-FL-W-39-2026-04-17-Cass",
   "zip": "",
   "city": "",
   "date": "2026-04-17",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-17. Duration: -1086 min. Counties: Cass, St. Joseph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #39 (-1086 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-39"
  },
  {
   "id": "iem-ww-IWX-FL-W-39-St. Joseph-flood-2026-04-17",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-17",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 0.72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "FL W for St. Joseph.",
   "sourceDetail": "NWS IWX — FL/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-39"
  },
  {
   "id": "asos-bf-CMX-2026-04-17",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-04-17",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-04-17-gogebic-hail",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gogebic — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-17-gogebic-wind",
   "zip": "",
   "city": "Gogebic",
   "date": "2026-04-17",
   "county": "Gogebic",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gogebic — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1334381-2026-04-16",
   "lon": 212830,
   "zip": "",
   "city": "LACKWOOD",
   "date": "2026-04-16",
   "county": "Branch",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An older barn suffered extensive damage with most of the debris left on the property. Smaller items and roofing was thrown to the east just across Sanford Rd. Several solar panels on the west side of the barn were damaged.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334381",
   "windSpeedMph": 65,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334383-2026-04-16",
   "lon": 212830,
   "zip": "",
   "city": "COLDWATER ARPT",
   "date": "2026-04-16",
   "county": "Branch",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Photo on Facebook of tree down onto part of a house.",
   "sourceDetail": "Verified by Public — NCEI Event #1334383",
   "windSpeedMph": 60,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202604161957-hail-42.22--85.59",
   "lat": 42.22,
   "lon": -85.59,
   "zip": "",
   "city": "1 N Portage",
   "date": "2026-04-16",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N Portage, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-04-16-flood-43.40--86.31",
   "lat": 43.4,
   "lon": -86.31,
   "zip": "",
   "city": "2 ENE Whitehall",
   "date": "2026-04-16",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooding along Whitehall Road near Alice Street.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-16-flood-43.40--86.37",
   "lat": 43.4,
   "lon": -86.37,
   "zip": "",
   "city": "1 SSW Montague",
   "date": "2026-04-16",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "2 block section of Old Channel Train impassable due to flooding.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-16-flood-43.47--85.69",
   "lat": 43.47,
   "lon": -85.69,
   "zip": "",
   "city": "3 NNW Croton",
   "date": "2026-04-16",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "County Road Commission reports several road washouts across Newaygo County.",
   "sourceDetail": "NWS GRR — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-16T04:48:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-04-16",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 53 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-16T19:59:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-04-16",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 53 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-16T20:55:00Z-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-04-16",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 54 mph. AWOS station KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-16T04:51:00Z-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-04-16",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 N Benton Heights, MI. Peak gust: 52 mph. ASOS station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-FF-W-12-2026-04-16-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-16. Duration: 607 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #12 (607 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-12"
  },
  {
   "id": "ww-MQT-FL-W-8-2026-04-16-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-16. Duration: 9764 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #8 (9764 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-8"
  },
  {
   "id": "ww-GRB-FL-W-39-2026-04-16-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-16. Duration: 30240 min. County: Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #39 (30240 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-39"
  },
  {
   "id": "ww-GRR-FL-W-38-2026-04-16-Ionia",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 7681 min. County: Ionia. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #38 (7681 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-38"
  },
  {
   "id": "ww-DTX-FL-W-14-2026-04-16-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-16. Duration: 5424 min. Counties: Saginaw, Bay. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #14 (5424 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-14"
  },
  {
   "id": "ww-DTX-FL-W-14-2026-04-16-Bay",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-16. Duration: 5424 min. Counties: Saginaw, Bay. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #14 (5424 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-14"
  },
  {
   "id": "ww-DTX-FL-W-15-2026-04-16-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-16. Duration: 1530 min. County: Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #15 (1530 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-15"
  },
  {
   "id": "ww-GRR-FL-W-37-2026-04-16-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 6720 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #37 (6720 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-37"
  },
  {
   "id": "ww-IWX-FL-W-37-2026-04-16-Berrien",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-16. Duration: 6646 min. County: Berrien. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #37 (6646 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-37"
  },
  {
   "id": "ww-GRR-FL-W-39-2026-04-16-Barry",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 28339 min. County: Barry. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #39 (28339 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-39"
  },
  {
   "id": "ww-DTX-FL-W-13-2026-04-16-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-16. Duration: 658 min. Counties: Saginaw, Shiawassee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #13 (658 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-13"
  },
  {
   "id": "ww-DTX-FL-W-13-2026-04-16-Shiawassee",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-16. Duration: 658 min. Counties: Saginaw, Shiawassee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #13 (658 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-13"
  },
  {
   "id": "ww-IWX-FL-W-38-2026-04-16-Berrien",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-16. Duration: 28955 min. Counties: Berrien, Cass. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #38 (28955 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-38"
  },
  {
   "id": "ww-IWX-FL-W-38-2026-04-16-Cass",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-16. Duration: 28955 min. Counties: Berrien, Cass. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #38 (28955 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-38"
  },
  {
   "id": "ww-GRR-FL-W-43-2026-04-16-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 3393 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #43 (3393 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-43"
  },
  {
   "id": "ww-MQT-FL-W-9-2026-04-16-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-16. Duration: 22716 min. Counties: Dickinson, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #9 (22716 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-9"
  },
  {
   "id": "ww-MQT-FL-W-9-2026-04-16-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-16. Duration: 22716 min. Counties: Dickinson, Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #9 (22716 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-9"
  },
  {
   "id": "ww-GRR-FL-W-40-2026-04-16-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 4346 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #40 (4346 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-40"
  },
  {
   "id": "ww-GRR-FL-W-42-2026-04-16-Isabella",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 2880 min. County: Isabella. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #42 (2880 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-42"
  },
  {
   "id": "ww-GRR-FL-W-36-2026-04-16-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-16. Duration: 7884 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #36 (7884 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-36"
  },
  {
   "id": "iem-ww-IWX-FL-W-36-St. Joseph-flood-2026-04-16",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-16",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 0.72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "FL W for St. Joseph.",
   "sourceDetail": "NWS IWX — FL/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-36"
  },
  {
   "id": "ww-IWX-FL-W-36-2026-04-16-Branch",
   "zip": "",
   "city": "",
   "date": "2026-04-16",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-16. Duration: 12948 min. Counties: St. Joseph, Branch. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #36 (12948 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-36"
  },
  {
   "id": "iem-ww-GRR-SV-W-52-Kalamazoo-wind-2026-04-16",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-16",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Kalamazoo. Max wind tag: 60 mph.",
   "sourceDetail": "NWS GRR — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-52"
  },
  {
   "id": "iem-ww-GRR-SV-W-52-Kalamazoo-hail-2026-04-16",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-16",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Kalamazoo. Max hail tag: 1\".",
   "sourceDetail": "NWS GRR — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-52"
  },
  {
   "id": "sps-2026-04-16-saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-16",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-04-16",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2026-04-16",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-kalamazoo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-16",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2026-04-16",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-calhoun-hail",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-04-16",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-jackson-hail",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-16",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-branch-wind",
   "zip": "",
   "city": "Branch",
   "date": "2026-04-16",
   "county": "Branch",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Branch — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-hillsdale-wind",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-04-16",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-16",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-isabella-wind",
   "zip": "",
   "city": "Isabella",
   "date": "2026-04-16",
   "county": "Isabella",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Isabella — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-16",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-midland-wind",
   "zip": "",
   "city": "Midland",
   "date": "2026-04-16",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Midland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-16-gratiot-wind",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-04-16",
   "county": "Gratiot",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gratiot — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1331629-2026-04-15",
   "lon": 212830,
   "zip": "",
   "city": "COLDWATER LAKE",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "A survey of damage south of Coldwater Michigan indicates that a circulation may have attempted to touch down on Sanford Rd, north of Fenn Road where a barn suffered damage with debris thrown to the east, impacting portions of a solar farm with some damage to panels. A few tree tops showed some minor damage from Sanford Rd|to near Interstate 69 where it appears the circulation finally touched down at a business on the southeast side of the Interstate, causing damage to a pole barn on the property. It continued southeast causing tree damage until reaching the area of|Dubendorf and Quimby Road where a garage lost its roof, trees were blown down and vinyl fencing around a pool was blown down. The tornado then impacted a pole barn on South Wood Rd, throwing the debris well east into the field before lifting. Maximum wind speeds were estimated in the 85 to 90 mph range.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1331629",
   "tornadoScale": "EF1",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328770-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "MUTTONVILLE",
   "date": "2026-04-15",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Numerous trees and power lines were down, and a large shed sustained damage.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1328770",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328928-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "CONE",
   "date": "2026-04-15",
   "county": "Lenawee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Damage to a large metal barn and numerous trees uprooted near a campground.",
   "sourceDetail": "Verified by Public — NCEI Event #1328928",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328768-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "ANN ARBOR YOUNG ARPT",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "A tree was down, blocking the southbound lane of Parker Road between Trinkle Road and I-94. There were reports of debris in the area.",
   "sourceDetail": "Verified by Amateur Radio — NCEI Event #1328768",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328776-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The tornado started in the area of Jackson Ave near Interstate 94.  It|moved southeast across the interstate and then over Veterans Memorial|Park where it produced EF-1 damage. This damage included numerous|uprooted and snapped trees, along with snapped stadium light poles.|The greatest concentration of EF-1 damage occurred from Jackson Ave though|Veterans Memorial Park and into the nearby neighborhoods. Peak winds estimated at 110 mph. The tornado continued through residential areas where there were numerous trees snapped and large downed tree limbs. The damage became more sporadic as is continued to the southeast through Virginia Park. A building north of Bach Elementary lost a portion of its roof, before the tornado lifted near W William St and 4th St. Once the tornado had lifted, there was additional damage that occurred from straight line winds at the Yost Ice Arena where the metal roof panels had been pulled from the building.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328776",
   "tornadoScale": "EF1",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328766-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Trees and power lines were reported down across parts of the county, especially in the Ann Arbor and Ypsilanti areas.",
   "sourceDetail": "Verified by 911 Call Center — NCEI Event #1328766",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328926-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "WAYNE",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Power lines and poles were down across Middle Belt Road, south of Van Born Road in Romulus.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1328926",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328777-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "MELVINDALE",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "A brief tornado touched down on Stanley St just west of B St. It first produced EF-0 roof and shingle damage to homes to the southeast of Stanely St and then along Ruth Ave and Olive Ave. The tornado also produced EF-1 damage, snapping hardwood and softwood trees near Ruth Ave. Nearby businesses sustained EF-1 damage to windows, roofs, facades, and HVAC equipment. Peak winds estimated at 95 mph.  It then continued east-southeastward, crossing Dix Hwy where it uprooted trees and snapped trunks near Outer Dr. The tornado lifted near Outer Dr and Meginnity St.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328777",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328927-2026-04-15",
   "lon": 212449,
   "zip": "",
   "city": "STONY CREEK",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Damage to trees and power lines started around the I-275 and I-75 interchange and spread east toward Estral Beach.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1328927",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-04-15-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-15",
   "county": "Jackson",
   "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 KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-15-wind-42.27--83.75",
   "lat": 42.27,
   "lon": -83.75,
   "zip": "",
   "city": "1 SW Ann Arbor",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "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 at the University of Michigan Stadium.",
   "sourceDetail": "NWS DTX — Co-Op Observer via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-15-wind-42.24--83.53",
   "lat": 42.24,
   "lon": -83.53,
   "zip": "",
   "city": "Willow Run Airport",
   "date": "2026-04-15",
   "county": "Wayne",
   "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 at Willow Run Airport.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-04-15",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-04-15",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 69 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:06:00Z-tornado-43.35--83.82",
   "lat": 43.35,
   "lon": -83.82,
   "zip": "",
   "city": "4 SE Bridgeport",
   "date": "2026-04-15",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 SE Bridgeport, MI. NWS Storm Survey team confirms an EF-0 tornado occurred in Bridgeport on April 15. The tornado started northwest of Roedel Rd and S Reimer Rd, continued southeast before lifting south of Roedel Rd between S Reimer Rd and Maple Rd.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T05:44:00Z-tornado-42.28--83.79",
   "lat": 42.28,
   "lon": -83.79,
   "zip": "",
   "city": "3 S Barton Hills",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 3 S Barton Hills, MI. NWS Storm Survey team confirms an EF-1 tornado occurred in Ann Arbor on April 15. The tornado started in the area of Jackson Ave near Interstate 94, continued southeast across Veterans Memorial Park and into nearby residential areas. The tornado lifted near W William St and 4th St.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T06:14:00Z-tornado-42.27--83.19",
   "lat": 42.27,
   "lon": -83.19,
   "zip": "",
   "city": "1 SW Melvindale",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 SW Melvindale, MI. NWS Storm Survey team confirms an EF-1 tornado occurred in Lincoln Park on April 15. A brief tornado touched down near Wall Ave and Ruth Ave, and continued across residential areas and nearby businesses, just south of Outer Dr. The tornado lifted near Outer Dr and Meginnity St.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.60--84.78",
   "lat": 43.6,
   "lon": -84.78,
   "zip": "",
   "city": "1 N Mount Pleasant",
   "date": "2026-04-15",
   "county": "Isabella",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.28--85.64",
   "lat": 42.28,
   "lon": -85.64,
   "zip": "",
   "city": "2 S Westwood",
   "date": "2026-04-15",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.41--84.79",
   "lat": 42.41,
   "lon": -84.79,
   "zip": "",
   "city": "3 S Brookfield",
   "date": "2026-04-15",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.50--85.92",
   "lat": 43.5,
   "lon": -85.92,
   "zip": "",
   "city": "2 WSW Wooster",
   "date": "2026-04-15",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Luce road closed between 24th and 32nd due to flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.16--85.93",
   "lat": 43.16,
   "lon": -85.93,
   "zip": "",
   "city": "2 SE Ravenna",
   "date": "2026-04-15",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.18--85.94",
   "lat": 43.18,
   "lon": -85.94,
   "zip": "",
   "city": "Ravenna",
   "date": "2026-04-15",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.90--85.66",
   "lat": 42.9,
   "lon": -85.66,
   "zip": "",
   "city": "2 E Wyoming",
   "date": "2026-04-15",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.58--86.00",
   "lat": 43.58,
   "lon": -86,
   "zip": "",
   "city": "2 ENE Hesperia",
   "date": "2026-04-15",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Sinkhole along Adams road between Fitzgerald and Comstock road.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.57--84.19",
   "lat": 42.57,
   "lon": -84.19,
   "zip": "",
   "city": "4 W Parkers Corners",
   "date": "2026-04-15",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-43.83--84.81",
   "lat": 43.83,
   "lon": -84.81,
   "zip": "",
   "city": "3 W Clare",
   "date": "2026-04-15",
   "county": "Clare",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.28--85.62",
   "lat": 42.28,
   "lon": -85.62,
   "zip": "",
   "city": "2 W Kalamazoo",
   "date": "2026-04-15",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15-flood-42.32--85.56",
   "lat": 42.32,
   "lon": -85.56,
   "zip": "",
   "city": "1 S Parchment",
   "date": "2026-04-15",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T05:04:00Z-tornado-41.90--84.99",
   "lat": 41.9,
   "lon": -84.99,
   "zip": "",
   "city": "3 SSE Coldwater",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 3 SSE Coldwater, MI. A survey of damage south of Coldwater Michigan indicates that a circulation may have attempted to touch down on Sanford Rd, north of Fenn Road where a barn suffered damage with debris thrown to the east, impacting portions of a solar farm with some damage to panels. A few tree tops showed some minor damage from Sanford Rd to near Interstate 69 where it appears the circulation finally touched down at a business on the southeast side of the Interstate, causing damage to a pole barn on the property. It continued southeast causing tree damage until reaching the area of Dubendorf and Quimby Road where a garage lost its roof, trees were blown down and vinyl fencing around a pool was blown down. The tornado then impacted a pole barn on South Wood Rd, throwing the debris well east into the field before lifting. Maximum wind speeds were estimated in the 85 to 90 mph range.",
   "sourceDetail": "NWS IWX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604150512-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-15",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604150549-wind-42.27--83.75",
   "lat": 42.27,
   "lon": -83.75,
   "zip": "",
   "city": "1 SW Ann Arbor",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SW Ann Arbor, MI. Peak gust: 81 mph.",
   "sourceDetail": "NWS DTX — Co-Op Observer via Iowa Mesonet",
   "windSpeedMph": 81,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604150608-wind-42.24--83.53",
   "lat": 42.24,
   "lon": -83.53,
   "zip": "",
   "city": "Willow Run Airport",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Willow Run Airport, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604150608-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "Detroit Metro Intl Airp",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Detroit Metro Intl Airp, MI. Peak gust: 79 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 79,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:04:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-04-15",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 53 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:55:00Z-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-04-15",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 53 mph. AWOS station KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:10:00Z-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-04-15",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 54 mph. Mesonet station BDLM4 Plainwell.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:28:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-15",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 54 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-15T04:18:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-04-15",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 55 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-GRR-SV-W-50-2026-04-15-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 66 min. Counties: Kent, Barry, Eaton, Ionia, Ingham. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #50 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-50"
  },
  {
   "id": "ww-DTX-SV-W-15-2026-04-15-Lapeer-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 33 min. County: Lapeer. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #15 (33 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-15"
  },
  {
   "id": "ww-DTX-SV-W-15-2026-04-15-Lapeer-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Lapeer",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 33 min. County: Lapeer. Storm tags: wind: 60.0, hail: 0.88\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #15 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "DTX-SV-W-15"
  },
  {
   "id": "ww-IWX-SV-W-111-2026-04-15-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 48 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #111 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-111"
  },
  {
   "id": "ww-IWX-SV-W-111-2026-04-15-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 48 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #111 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-111"
  },
  {
   "id": "ww-IWX-SV-W-111-2026-04-15-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 48 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #111 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-111"
  },
  {
   "id": "ww-IWX-SV-W-111-2026-04-15-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 48 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #111 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-111"
  },
  {
   "id": "ww-IWX-SV-W-110-2026-04-15-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 50 min. Counties: Branch, St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #110 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "ww-IWX-SV-W-110-2026-04-15-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 50 min. Counties: Branch, St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #110 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "iem-ww-IWX-SV-W-110-St. Joseph-wind-2026-04-15",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-15",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "iem-ww-IWX-SV-W-110-St. Joseph-hail-2026-04-15",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-15",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "ww-IWX-SV-W-110-2026-04-15-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 50 min. Counties: Branch, St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #110 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "ww-IWX-SV-W-110-2026-04-15-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-15. Duration: 50 min. Counties: Branch, St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #110 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-110"
  },
  {
   "id": "ww-DTX-SV-W-14-2026-04-15-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 71 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #14 (71 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-14"
  },
  {
   "id": "ww-DTX-SV-W-14-2026-04-15-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 71 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #14 (71 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-14"
  },
  {
   "id": "ww-DTX-SV-W-14-2026-04-15-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 71 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #14 (71 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-14"
  },
  {
   "id": "ww-DTX-SV-W-14-2026-04-15-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 71 min. Counties: Livingston, Oakland. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #14 (71 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-14"
  },
  {
   "id": "ww-DTX-SV-W-18-2026-04-15-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 42 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #18 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-18"
  },
  {
   "id": "ww-DTX-SV-W-18-2026-04-15-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 42 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #18 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-18"
  },
  {
   "id": "ww-DTX-SV-W-16-2026-04-15-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 62 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-16"
  },
  {
   "id": "ww-DTX-SV-W-16-2026-04-15-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 62 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-16"
  },
  {
   "id": "ww-DTX-SV-W-16-2026-04-15-Washtenaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 62 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #16 (62 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-16"
  },
  {
   "id": "ww-DTX-SV-W-16-2026-04-15-Washtenaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 62 min. Counties: Lenawee, Washtenaw. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #16 (62 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-16"
  },
  {
   "id": "ww-DTX-SV-W-17-2026-04-15-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 40 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #17 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-17"
  },
  {
   "id": "ww-DTX-SV-W-17-2026-04-15-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 40 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #17 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-17"
  },
  {
   "id": "ww-DTX-SV-W-17-2026-04-15-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 40 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #17 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-17"
  },
  {
   "id": "ww-DTX-SV-W-17-2026-04-15-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-15. Duration: 40 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #17 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-17"
  },
  {
   "id": "iem-ww-DTX-TO-W-7-Washtenaw-tornado-2026-04-15",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-04-15",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Washtenaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-7"
  },
  {
   "id": "iem-ww-IWX-TO-W-23-Hillsdale-tornado-2026-04-15",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-04-15",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Hillsdale.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-23"
  },
  {
   "id": "iem-ww-IWX-TO-W-23-Branch-tornado-2026-04-15",
   "zip": "",
   "city": "Branch",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Branch.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-23"
  },
  {
   "id": "iem-ww-IWX-TO-W-22-Branch-tornado-2026-04-15",
   "zip": "",
   "city": "Branch",
   "date": "2026-04-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Branch.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-22"
  },
  {
   "id": "iem-ww-DTX-TO-W-9-Lenawee-tornado-2026-04-15",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-15",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Lenawee.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-9"
  },
  {
   "id": "iem-ww-DTX-TO-W-9-Monroe-tornado-2026-04-15",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Monroe.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-9"
  },
  {
   "id": "iem-ww-DTX-TO-W-8-Wayne-tornado-2026-04-15",
   "zip": "",
   "city": "Wayne",
   "date": "2026-04-15",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Wayne.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-8"
  },
  {
   "id": "ww-APX-FA-W-3-2026-04-15-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 224 min. County: Cheboygan. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #3 (224 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-3"
  },
  {
   "id": "ww-GRR-FA-W-7-2026-04-15-Muskegon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-15. Duration: 677 min. County: Muskegon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #7 (677 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-7"
  },
  {
   "id": "ww-GRR-FA-W-8-2026-04-15-Mecosta",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-15. Duration: 654 min. Counties: Mecosta, Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #8 (654 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-8"
  },
  {
   "id": "ww-GRR-FA-W-8-2026-04-15-Muskegon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-15. Duration: 654 min. Counties: Mecosta, Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #8 (654 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-8"
  },
  {
   "id": "ww-GRR-FA-W-8-2026-04-15-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-15. Duration: 654 min. Counties: Mecosta, Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #8 (654 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-8"
  },
  {
   "id": "ww-GRR-FA-W-8-2026-04-15-Oceana",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-15. Duration: 654 min. Counties: Mecosta, Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #8 (654 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-8"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Otsego",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Charlevoix",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Emmet",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Montmorency",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-5-2026-04-15-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5715 min. Counties: Otsego, Antrim, Charlevoix, Cheboygan, Emmet, Grand Traverse, Roscommon, Kalkaska, Montmorency, Oscoda, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #5 (5715 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-5"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Ogemaw",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Gladwin",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Iosco",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-6-2026-04-15-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5706 min. Counties: Ogemaw, Gladwin, Alcona, Arenac, Iosco, Oscoda, Roscommon, Crawford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #6 (5706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-6"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Otsego",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Presque Isle",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Presque Isle",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Alpena",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Alpena",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Iosco",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-7-2026-04-15-Montmorency",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5702 min. Counties: Otsego, Alcona, Oscoda, Presque Isle, Alpena, Cheboygan, Iosco, Montmorency. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #7 (5702 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-7"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Missaukee",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Leelanau",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Benzie",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-APX-FA-W-4-2026-04-15-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-15. Duration: 5719 min. Counties: Crawford, Antrim, Missaukee, Grand Traverse, Wexford, Leelanau, Benzie, Kalkaska, Manistee, Roscommon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #4 (5719 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-4"
  },
  {
   "id": "ww-GRR-FL-W-32-2026-04-15-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 307 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #32 (307 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-32"
  },
  {
   "id": "ww-GRR-FL-W-31-2026-04-15-Clinton",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 4991 min. County: Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #31 (4991 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-31"
  },
  {
   "id": "ww-GRR-FL-W-30-2026-04-15-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 2420 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #30 (2420 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-30"
  },
  {
   "id": "ww-GRR-FL-W-33-2026-04-15-Gratiot",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 5321 min. County: Gratiot. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #33 (5321 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-33"
  },
  {
   "id": "ww-GRR-FL-W-35-2026-04-15-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 29599 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #35 (29599 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-35"
  },
  {
   "id": "ww-DTX-FL-W-12-2026-04-15-Midland",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-15. Duration: 4909 min. Counties: Midland, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #12 (4909 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-12"
  },
  {
   "id": "ww-DTX-FL-W-12-2026-04-15-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-15. Duration: 4909 min. Counties: Midland, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #12 (4909 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-12"
  },
  {
   "id": "ww-GRR-FL-W-41-2026-04-15-Muskegon",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 3610 min. County: Muskegon. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #41 (3610 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-41"
  },
  {
   "id": "ww-GRR-FL-W-34-2026-04-15-Clinton",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-15. Duration: 30240 min. County: Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #34 (30240 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-34"
  },
  {
   "id": "asos-bf-YIP-2026-04-15",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-04-15",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 64 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-04-15",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-04-15",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-49-2026-04-15-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 27 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #49 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-49"
  },
  {
   "id": "ww-GRR-SV-W-49-2026-04-15-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-15",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-15. Duration: 27 min. County: Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #49 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-49"
  },
  {
   "id": "iem-ww-GRR-SV-W-51-Jackson-wind-2026-04-15",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-15",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for Jackson. Max wind tag: 70 mph.",
   "sourceDetail": "NWS GRR — SV/W",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-51"
  },
  {
   "id": "iem-ww-GRR-SV-W-51-Jackson-hail-2026-04-15",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-15",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for Jackson. Max hail tag: 0.75\".",
   "sourceDetail": "NWS GRR — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-51"
  },
  {
   "id": "sps-2026-04-15-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-04-15",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-15-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-04-15",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-15-allegan-hail",
   "zip": "",
   "city": "Allegan",
   "date": "2026-04-15",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-15-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-15",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-15-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-04-15",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Newaygo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1335107-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "PEWAMO",
   "date": "2026-04-14",
   "county": "Ionia",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Several trees uprooted or snapped. Section of a barn roof was blown off.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1335107",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335108-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "FOWLER",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "One metal shed and one wooden barn destroyed. Several trees uprooted.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1335108",
   "windSpeedMph": 65,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335094-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "CHESHIRE CENTER",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "An EF-0 tornado with peak winds estimated near 80 mph. The tornado began near Schermerhorn Lake in Allegan County and was on the ground for around 6.5 miles before lifting west/northwest of Otsego.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1335094",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328761-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "PITTSBURG",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Trees were reported down near Grand River Road and Delaney Road.",
   "sourceDetail": "Verified by 911 Call Center — NCEI Event #1328761",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328769-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "PITTSBURG",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Some shingles were ripped off a house, and trees were downed.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1328769",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335095-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "OTSEGO",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Widespread tree damage occurred along the tornado path. Several large barns were heavily damaged and multiple homes and businesses lost roofing material or were |damaged by fallen trees. Debris from one business landed on US-131|forcing it to be closed for a period of time following the tornado. The tornado continued into Barry County.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1335095",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328772-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "ALICIA",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The tornado started in a field on northwest side of W Birch Run Rd and|Amman Rd. It first produced EF-0 damage with two rows of pine trees|uprooted, along with removing siding from an outbuilding.  The tornado|then continued northeast toward Fergus Rd and Gasper Rd where more pine|trees were uprooted.  EF-1 damage occurred on a half mile stretch of|Bishop Rd with the greatest concentration of EF-1 damage near Bishop Rd|and Alicia Rd.  Peak winds estimated at 95 mph. This damage included both pine and hardwood trees snapped, two outbuildings and a few empty silos destroyed, along with three homes that sustained roof damage.  One home did have the majority of the roof|blown off with the attached garage walls blown out.  It continued east producing EF-0 damage to an outbuilding northeast of Alicia Rd and Horning Cut Rd where a door and wall were collapsed before lifting just off on an outbuilding.  The tornado then lifted just off to the northeast in a field.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328772",
   "tornadoScale": "EF1",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328774-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "VERNON",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The tornado touched down near Newburg Rd just west of Lansing Rd before moving|east across Lansing Rd. EF-0 damage occurred along the path with downed pine|trees and large tree limbs.  Some structural damage was seen with siding off|of a home, outbuilding roof panels blown off and collapsed barn doors near|Newburg Rd and Vernon Rd. Peak winds estimated at 80 mph.  The tornado lifted just to the southeast of Newburg Rd and S Reed Rd where there were both downed hardwood and pine trees, along with large tree limbs.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328774",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335102-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "SPRINGPORT",
   "date": "2026-04-14",
   "county": "Jackson",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Roof and greenhouse damage. Trees down as well.",
   "sourceDetail": "Verified by Public — NCEI Event #1335102",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335096-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "DOSTER",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "This tornado was a continuation of a tornado that touched down in Allegan County. This tornado crossed into Barry County near the intersection of Doster Road and Heron Ct. Widespread tree damage occurred along the tornado path. Several large barns were heavily damaged and multiple homes and businesses lost roofing material or were |damaged by fallen trees.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1335096",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328773-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "BUENA VISTA",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The tornado touched down just to the northwest of Roedel Rd and S Reimer Rd.|EF-0 damage occurred along the path of the tornado as it moved southeast. Two|barns were damaged and lost the majority of roofing.  Some siding on an|adjacent house was also ripped off. Pine trees were uprooted and several|hardwood trees lost large limbs along the path. Peak winds estimated at 80 mph. The tornado lifted of in a field south of Roedel Rd between S Reimer Rd and Maple Rd after causing additional tree damage.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328773",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328775-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "DUFFIELD",
   "date": "2026-04-14",
   "county": "Genesee",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Several limbs and trees were down, and trees were uprooted in western Genesee along Grand Blanc Road to Seymour Road.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1328775",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335109-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "BANFIELD",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Tree damage on the south side of Fine Lake.",
   "sourceDetail": "Verified by Fire Department/Rescue — NCEI Event #1335109",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335110-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "BANFIELD",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Multiple trees down and snapped along Baseline Road.",
   "sourceDetail": "Verified by Fire Department/Rescue — NCEI Event #1335110",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1328929-2026-04-14",
   "lon": 212449,
   "zip": "",
   "city": "ROSE CENTER",
   "date": "2026-04-14",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Six inch diameter tree limb down.",
   "sourceDetail": "Verified by NWS Employee — NCEI Event #1328929",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335111-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "LEE CENTER",
   "date": "2026-04-14",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "One grain silo sustained minor damage.",
   "sourceDetail": "Verified by State Official — NCEI Event #1335111",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1335112-2026-04-14",
   "lon": 213000,
   "zip": "",
   "city": "ALBION LNDG",
   "date": "2026-04-14",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "One boat dock with sheet metal covering lifted. Trees down in the area near R Drive N.",
   "sourceDetail": "Verified by Fire Department/Rescue — NCEI Event #1335112",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202604140450-hail-44.09--85.36",
   "lat": 44.09,
   "lon": -85.36,
   "zip": "",
   "city": "1 W Dighton",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Dighton, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604140501-hail-44.19--85.21",
   "lat": 44.19,
   "lon": -85.21,
   "zip": "",
   "city": "Mcbain",
   "date": "2026-04-14",
   "county": "Missaukee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Mcbain, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "asos-bf-BIV-2026-04-14",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-04-14",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-04-14",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 81 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 81,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-04-14-517-0231",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "Comstock Park",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-14-wind-43.20--85.59",
   "lat": 43.2,
   "lon": -85.59,
   "zip": "",
   "city": "3 SW Cedar Springs",
   "date": "2026-04-14",
   "county": "Kent",
   "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": "Mesonet station AV534 Cedar Springs.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-04-14-524-0311",
   "lat": 42.95,
   "lon": -85.63,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.96--84.35",
   "lat": 43.96,
   "lon": -84.35,
   "zip": "",
   "city": "2 S Wooden Shoe Village",
   "date": "2026-04-14",
   "county": "Gladwin",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Part of McKimmey Rd washed out from heavy rain/flooding reported by Gladwin County Emergency management.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.66--85.61",
   "lat": 44.66,
   "lon": -85.61,
   "zip": "",
   "city": "4 E Grawn",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Grand Traverse Sheriffs Office is currently reporting homes being impacted along the Boardman River, located on River Rd in between Keystone and Garfield Rd.",
   "sourceDetail": "NWS APX — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.74--85.17",
   "lat": 44.74,
   "lon": -85.17,
   "zip": "",
   "city": "1 ENE Kalkaska",
   "date": "2026-04-14",
   "county": "Kalkaska",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Kalkaska County Road Commission reporting several areas across Kalkaska County with water over roadways, roadway washouts, and high water levels.",
   "sourceDetail": "NWS APX — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.17--85.24",
   "lat": 45.17,
   "lon": -85.24,
   "zip": "",
   "city": "Ellsworth",
   "date": "2026-04-14",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Standing water on Six Mile Lake Rd, Ellsworth.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.39--83.87",
   "lat": 45.39,
   "lon": -83.87,
   "zip": "",
   "city": "4 SW Rogers City",
   "date": "2026-04-14",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Facebook report of Quade Highway appears to have been washed out near the Trout River.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 NW Pellston",
   "date": "2026-04-14",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Facebook photo shows standing water over Pellston Airport runway.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.76--85.62",
   "lat": 44.76,
   "lon": -85.62,
   "zip": "",
   "city": "1 WNW Traverse City",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Facebook report of high water levels along the Boardman River in Downtown Traverse City with water over nearby properties.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.30--84.61",
   "lat": 45.3,
   "lon": -84.61,
   "zip": "",
   "city": "2 N Wolverine",
   "date": "2026-04-14",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Numerous Facebook reports of standing water against homes and businesses along the Sturgeon River near Wolverine.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.31--83.48",
   "lat": 45.31,
   "lon": -83.48,
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-04-14",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Numerous reports along Presque County of high water levels and flooding impacting multiple roadways. Images and videos show roads washed out and water moving over roadways.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.27--86.01",
   "lat": 44.27,
   "lon": -86.01,
   "zip": "",
   "city": "2 S Brethren",
   "date": "2026-04-14",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report on Facebook of partial soil erosion along High Bridge Rd near the Manistee River.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.25--85.42",
   "lat": 44.25,
   "lon": -85.42,
   "zip": "",
   "city": "Cadillac",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Multiple reports on Facebook of standing/high water in the Cadillac area.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.50--84.59",
   "lat": 44.5,
   "lon": -84.59,
   "zip": "",
   "city": "Roscommon",
   "date": "2026-04-14",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Reports on Facebook of standing/high water across properties near the Roscommon/Roscommon County area.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T03:53:00Z-tornado-43.25--84.07",
   "lat": 43.25,
   "lon": -84.07,
   "zip": "",
   "city": "5 SE Saint Charles",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 5 SE Saint Charles, MI. NWS Storm Survey confirms an EF-1 tornado occurred in Albee Township on April 14. The tornado started just northwest of W Birch Run Rd and Amman Rd, continued northeast crossing over Bishop Rd before lifting northeast of Alicia Rd and Horning Cut Rd.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T03:58:00Z-tornado-42.91--84.04",
   "lat": 42.91,
   "lon": -84.04,
   "zip": "",
   "city": "1 E Newburg",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 E Newburg, MI. NWS Storm Survey team confirms an EF-0 tornado occurred in Durand on April 14. The tornado started near Newburg Rd just west of Lansing Rd, continued east before lifting just southeast of Newburg Rd and S Reed Rd.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.97--85.53",
   "lat": 43.97,
   "lon": -85.53,
   "zip": "",
   "city": "1 W Ashton",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Reports of a road washout at 220th and 11 mile.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-44.10--85.17",
   "lat": 44.1,
   "lon": -85.17,
   "zip": "",
   "city": "1 WSW Marion",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Reports of a road washout on 40th Avenue south of 20 Mile road, near the town of Marion.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.98--85.51",
   "lat": 43.98,
   "lon": -85.51,
   "zip": "",
   "city": "Ashton",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Several roads closed due to flooding in the Marion and Ashton areas.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.60--84.78",
   "lat": 43.6,
   "lon": -84.78,
   "zip": "",
   "city": "1 N Mount Pleasant",
   "date": "2026-04-14",
   "county": "Isabella",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.37--84.90",
   "lat": 43.37,
   "lon": -84.9,
   "zip": "",
   "city": "2 S Vestaburg",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: River/Creek overflowing; Cropland/Yard/Basement Flooding.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-43.18--85.25",
   "lat": 43.18,
   "lon": -85.25,
   "zip": "",
   "city": "Greenville",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-42.95--85.62",
   "lat": 42.95,
   "lon": -85.62,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-42.92--85.60",
   "lat": 42.92,
   "lon": -85.6,
   "zip": "",
   "city": "2 S East Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "FLASH FLOOD reported near 2 S East Grand Rapids",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-42.86--85.38",
   "lat": 42.86,
   "lon": -85.38,
   "zip": "",
   "city": "Alto",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T02:51:00Z-tornado-43.15--85.03",
   "lat": 43.15,
   "lon": -85.03,
   "zip": "",
   "city": "2 E Fenwick",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 E Fenwick, MI. An EF1 tornado with top winds near 110 mph began 2 miles east of Fenwick in Montcalm County, moving east-northeast almost 19 miles before ending just east of Perrinton in Gratiot County.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T03:38:00Z-tornado-42.48--85.91",
   "lat": 42.48,
   "lon": -85.91,
   "zip": "",
   "city": "4 SW Allegan",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 SW Allegan, MI. An EF-0 tornado with peak winds near 80 mph began near Schermerhorn Lake in Allegan County and was on the ground for around 6.5 miles before lifting west/northwest of Otsego.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T03:52:00Z-tornado-42.46--85.68",
   "lat": 42.46,
   "lon": -85.68,
   "zip": "",
   "city": "1 ENE Otsego",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 ENE Otsego, MI. This EF-1 tornado had maximum estimated winds of 100 mph and a path of around 16 miles. It touched down north of Otsego and traveled east until Hickory Corners. This tornado began in Allegan County and lifted off in Barry County.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14-flood-45.73--87.47",
   "lat": 45.73,
   "lon": -87.47,
   "zip": "",
   "city": "2 NW Wilson",
   "date": "2026-04-14",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Bridge washed out on CR563 (between RD H.5 & CR400) at Wilson Creek.",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604140837-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604140906-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604150231-wind-43.03--85.69",
   "lat": 43.03,
   "lon": -85.69,
   "zip": "",
   "city": "1 SW Comstock Park",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SW Comstock Park, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604150232-wind-43.20--85.59",
   "lat": 43.2,
   "lon": -85.59,
   "zip": "",
   "city": "3 SW Cedar Springs",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 SW Cedar Springs, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604150250-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 92 mph.",
   "sourceDetail": "NWS GRR — Official NWS Obs via Iowa Mesonet",
   "windSpeedMph": 92,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604150257-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 93 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 93,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604150311-wind-42.95--85.63",
   "lat": 42.95,
   "lon": -85.63,
   "zip": "",
   "city": "1 W East Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 W East Grand Rapids, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T02:58:00Z-wind-42.87--85.46",
   "lat": 42.87,
   "lon": -85.46,
   "zip": "",
   "city": "2 NNE Alaska",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND DMG reported near 2 NNE Alaska, MI. Peak gust: 81 mph. A surge of thunderstorm winds occurred from the Grand Rapids airport southeast through the Whitneyville area, where a large tree fell on a house, doing extensive damage. Time estimated from radar and the Grand Rapids ASOS, where a peak wind gust of 81 mph was measured. Tree damage in the Whitneyville area indicated winds between 70 and 80 mph.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 81,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-14T08:56:00Z-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW East Grand Rapids, MI. Peak gust: 53 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-15T01:48:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 55 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-42-2026-04-14-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 65 min. Counties: Gratiot, Montcalm. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #42 (65 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-42"
  },
  {
   "id": "ww-GRR-SV-W-42-2026-04-14-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 65 min. Counties: Gratiot, Montcalm. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #42 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-42"
  },
  {
   "id": "ww-GRR-SV-W-42-2026-04-14-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 65 min. Counties: Gratiot, Montcalm. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #42 (65 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-42"
  },
  {
   "id": "ww-GRR-SV-W-42-2026-04-14-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 65 min. Counties: Gratiot, Montcalm. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #42 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-42"
  },
  {
   "id": "ww-GRR-SV-W-47-2026-04-14-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 83 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #47 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-47"
  },
  {
   "id": "ww-GRR-SV-W-47-2026-04-14-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 83 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #47 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-47"
  },
  {
   "id": "ww-GRR-SV-W-47-2026-04-14-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 83 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #47 (83 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-47"
  },
  {
   "id": "ww-GRR-SV-W-47-2026-04-14-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 83 min. Counties: Barry, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #47 (83 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-47"
  },
  {
   "id": "ww-GRR-SV-W-48-2026-04-14-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 84 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #48 (84 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-48"
  },
  {
   "id": "ww-GRR-SV-W-48-2026-04-14-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 84 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #48 (84 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-48"
  },
  {
   "id": "ww-GRR-SV-W-48-2026-04-14-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 84 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #48 (84 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-48"
  },
  {
   "id": "ww-GRR-SV-W-48-2026-04-14-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 84 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #48 (84 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-48"
  },
  {
   "id": "ww-GRR-SV-W-43-2026-04-14-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 57 min. County: Kent. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #43 (57 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-43"
  },
  {
   "id": "ww-GRR-SV-W-43-2026-04-14-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 57 min. County: Kent. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #43 (57 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-43"
  },
  {
   "id": "ww-GRR-SV-W-44-2026-04-14-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 56 min. County: Ionia. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #44 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-44"
  },
  {
   "id": "ww-GRR-SV-W-44-2026-04-14-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 56 min. County: Ionia. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #44 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-44"
  },
  {
   "id": "ww-APX-SV-W-20-2026-04-14-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 27 min. Counties: Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #20 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-20"
  },
  {
   "id": "ww-APX-SV-W-20-2026-04-14-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 27 min. Counties: Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #20 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-20"
  },
  {
   "id": "ww-APX-SV-W-20-2026-04-14-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 27 min. Counties: Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #20 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-20"
  },
  {
   "id": "ww-APX-SV-W-20-2026-04-14-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 27 min. Counties: Grand Traverse, Wexford. Storm tags: wind: 60.0, hail: 0.88\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #20 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.88,
   "warningProductKey": "APX-SV-W-20"
  },
  {
   "id": "ww-GRR-SV-W-38-2026-04-14-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #38 (53 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-38"
  },
  {
   "id": "ww-GRR-SV-W-38-2026-04-14-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #38 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-38"
  },
  {
   "id": "ww-GRR-SV-W-38-2026-04-14-Osceola-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #38 (53 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-38"
  },
  {
   "id": "ww-GRR-SV-W-38-2026-04-14-Osceola-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #38 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-38"
  },
  {
   "id": "ww-GRR-SV-W-40-2026-04-14-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 21 min. Counties: Clare, Isabella. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #40 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-40"
  },
  {
   "id": "ww-GRR-SV-W-40-2026-04-14-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 21 min. Counties: Clare, Isabella. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #40 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-40"
  },
  {
   "id": "ww-GRR-SV-W-40-2026-04-14-Isabella-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 21 min. Counties: Clare, Isabella. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #40 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-40"
  },
  {
   "id": "ww-GRR-SV-W-40-2026-04-14-Isabella-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 21 min. Counties: Clare, Isabella. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #40 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-40"
  },
  {
   "id": "ww-DTX-SV-W-13-2026-04-14-Genesee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 48 min. County: Genesee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #13 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-13"
  },
  {
   "id": "ww-DTX-SV-W-13-2026-04-14-Genesee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 48 min. County: Genesee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #13 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-18-2026-04-14-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 31 min. County: Gladwin. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #18 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-18"
  },
  {
   "id": "ww-APX-SV-W-18-2026-04-14-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 31 min. County: Gladwin. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #18 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-18"
  },
  {
   "id": "ww-GRR-SV-W-46-2026-04-14-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 30 min. County: Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #46 (30 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-46"
  },
  {
   "id": "ww-GRR-SV-W-46-2026-04-14-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 30 min. County: Clinton. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #46 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-46"
  },
  {
   "id": "ww-GRR-SV-W-45-2026-04-14-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 63 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #45 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-45"
  },
  {
   "id": "ww-GRR-SV-W-45-2026-04-14-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 63 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #45 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-45"
  },
  {
   "id": "ww-GRR-SV-W-45-2026-04-14-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 63 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #45 (63 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-45"
  },
  {
   "id": "ww-GRR-SV-W-45-2026-04-14-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 63 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #45 (63 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-45"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Newaygo-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-GRR-SV-W-41-2026-04-14-Newaygo-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 88 min. Counties: Ottawa, Muskegon, Newaygo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #41 (88 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-41"
  },
  {
   "id": "ww-APX-SV-W-17-2026-04-14-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 40 min. County: Missaukee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #17 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-17"
  },
  {
   "id": "ww-APX-SV-W-17-2026-04-14-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 40 min. County: Missaukee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #17 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-17"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Oceana-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Oceana-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-GRR-SV-W-39-2026-04-14-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-14. Duration: 45 min. Counties: Muskegon, Oceana, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #39 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-39"
  },
  {
   "id": "ww-DTX-SV-W-12-2026-04-14-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 60 min. Counties: Saginaw, Shiawassee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #12 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-12"
  },
  {
   "id": "ww-DTX-SV-W-12-2026-04-14-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 60 min. Counties: Saginaw, Shiawassee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #12 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-12"
  },
  {
   "id": "ww-DTX-SV-W-12-2026-04-14-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 60 min. Counties: Saginaw, Shiawassee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #12 (60 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-12"
  },
  {
   "id": "ww-DTX-SV-W-12-2026-04-14-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-14. Duration: 60 min. Counties: Saginaw, Shiawassee. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #12 (60 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-12"
  },
  {
   "id": "ww-APX-SV-W-19-2026-04-14-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 21 min. County: Arenac. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #19 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-19"
  },
  {
   "id": "ww-APX-SV-W-19-2026-04-14-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-14. Duration: 21 min. County: Arenac. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #19 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "APX-SV-W-19"
  },
  {
   "id": "iem-ww-GRR-TO-W-7-Ottawa-tornado-2026-04-14",
   "zip": "",
   "city": "Ottawa",
   "date": "2026-04-14",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ottawa.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-7"
  },
  {
   "id": "iem-ww-GRR-TO-W-7-Muskegon-tornado-2026-04-14",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Muskegon.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-7"
  },
  {
   "id": "iem-ww-GRR-TO-W-11-Clinton-tornado-2026-04-14",
   "zip": "",
   "city": "Clinton",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Clinton.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-11"
  },
  {
   "id": "iem-ww-GRR-TO-W-11-Gratiot-tornado-2026-04-14",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-04-14",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Gratiot.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-11"
  },
  {
   "id": "iem-ww-DTX-TO-W-4-Saginaw-tornado-2026-04-14",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Saginaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-4"
  },
  {
   "id": "iem-ww-GRR-TO-W-14-Gratiot-tornado-2026-04-14",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-04-14",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Gratiot.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-14"
  },
  {
   "id": "iem-ww-GRR-TO-W-16-Barry-tornado-2026-04-14",
   "zip": "",
   "city": "Barry",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Barry.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-16"
  },
  {
   "id": "iem-ww-DTX-TO-W-6-Saginaw-tornado-2026-04-14",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Saginaw.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-6"
  },
  {
   "id": "iem-ww-APX-TO-W-1-Missaukee-tornado-2026-04-14",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-04-14",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Missaukee.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-1"
  },
  {
   "id": "iem-ww-APX-TO-W-1-Grand Traverse-tornado-2026-04-14",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Grand Traverse.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-1"
  },
  {
   "id": "iem-ww-APX-TO-W-1-Kalkaska-tornado-2026-04-14",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-04-14",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kalkaska.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-1"
  },
  {
   "id": "iem-ww-APX-TO-W-1-Wexford-tornado-2026-04-14",
   "zip": "",
   "city": "Wexford",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Wexford.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-1"
  },
  {
   "id": "iem-ww-GRR-TO-W-15-Allegan-tornado-2026-04-14",
   "zip": "",
   "city": "Allegan",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Allegan.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-15"
  },
  {
   "id": "iem-ww-GRR-TO-W-13-Clinton-tornado-2026-04-14",
   "zip": "",
   "city": "Clinton",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Clinton.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-13"
  },
  {
   "id": "iem-ww-GRR-TO-W-10-Ionia-tornado-2026-04-14",
   "zip": "",
   "city": "Ionia",
   "date": "2026-04-14",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ionia.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-10"
  },
  {
   "id": "iem-ww-GRR-TO-W-10-Montcalm-tornado-2026-04-14",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Montcalm.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-10"
  },
  {
   "id": "iem-ww-GRR-TO-W-9-Kent-tornado-2026-04-14",
   "zip": "",
   "city": "Kent",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kent.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-9"
  },
  {
   "id": "iem-ww-GRR-TO-W-12-Barry-tornado-2026-04-14",
   "zip": "",
   "city": "Barry",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Barry.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-12"
  },
  {
   "id": "iem-ww-GRR-TO-W-12-Ionia-tornado-2026-04-14",
   "zip": "",
   "city": "Ionia",
   "date": "2026-04-14",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Ionia.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-12"
  },
  {
   "id": "iem-ww-DTX-TO-W-5-Shiawassee-tornado-2026-04-14",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-04-14",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Shiawassee.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-5"
  },
  {
   "id": "iem-ww-GRR-TO-W-6-Newaygo-tornado-2026-04-14",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Newaygo.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-6"
  },
  {
   "id": "iem-ww-GRR-TO-W-6-Muskegon-tornado-2026-04-14",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Muskegon.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-6"
  },
  {
   "id": "iem-ww-GRR-TO-W-8-Montcalm-tornado-2026-04-14",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Montcalm.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-8"
  },
  {
   "id": "ww-APX-FF-W-10-2026-04-14-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 826 min. County: Cheboygan. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #10 (826 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-10"
  },
  {
   "id": "ww-APX-FF-W-8-2026-04-14-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 218 min. Counties: Kalkaska, Missaukee, Roscommon, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #8 (218 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-8"
  },
  {
   "id": "ww-APX-FF-W-8-2026-04-14-Missaukee",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 218 min. Counties: Kalkaska, Missaukee, Roscommon, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #8 (218 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-8"
  },
  {
   "id": "ww-APX-FF-W-8-2026-04-14-Roscommon",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 218 min. Counties: Kalkaska, Missaukee, Roscommon, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #8 (218 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-8"
  },
  {
   "id": "ww-APX-FF-W-8-2026-04-14-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 218 min. Counties: Kalkaska, Missaukee, Roscommon, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #8 (218 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-8"
  },
  {
   "id": "ww-APX-FF-W-11-2026-04-14-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 329 min. Counties: Grand Traverse, Manistee, Benzie, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #11 (329 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-11"
  },
  {
   "id": "ww-APX-FF-W-11-2026-04-14-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 329 min. Counties: Grand Traverse, Manistee, Benzie, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #11 (329 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-11"
  },
  {
   "id": "ww-APX-FF-W-11-2026-04-14-Benzie",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 329 min. Counties: Grand Traverse, Manistee, Benzie, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #11 (329 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-11"
  },
  {
   "id": "ww-APX-FF-W-11-2026-04-14-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 329 min. Counties: Grand Traverse, Manistee, Benzie, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #11 (329 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-11"
  },
  {
   "id": "ww-APX-FF-W-9-2026-04-14-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 174 min. Counties: Antrim, Crawford, Kalkaska. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #9 (174 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-9"
  },
  {
   "id": "ww-APX-FF-W-9-2026-04-14-Crawford",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 174 min. Counties: Antrim, Crawford, Kalkaska. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #9 (174 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-9"
  },
  {
   "id": "ww-APX-FF-W-9-2026-04-14-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 174 min. Counties: Antrim, Crawford, Kalkaska. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #9 (174 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-9"
  },
  {
   "id": "ww-APX-FF-W-4-2026-04-14-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 285 min. Counties: Antrim, Charlevoix, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #4 (285 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-4"
  },
  {
   "id": "ww-APX-FF-W-4-2026-04-14-Charlevoix",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 285 min. Counties: Antrim, Charlevoix, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #4 (285 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-4"
  },
  {
   "id": "ww-APX-FF-W-4-2026-04-14-Emmet",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 285 min. Counties: Antrim, Charlevoix, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #4 (285 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-4"
  },
  {
   "id": "ww-APX-FF-W-7-2026-04-14-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 177 min. Counties: Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #7 (177 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-7"
  },
  {
   "id": "ww-APX-FF-W-7-2026-04-14-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 177 min. Counties: Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #7 (177 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-7"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Antrim",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Benzie",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Kalkaska",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Leelanau",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Leelanau",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-APX-FF-W-5-2026-04-14-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-14. Duration: 291 min. Counties: Antrim, Benzie, Grand Traverse, Kalkaska, Leelanau, Manistee, Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #5 (291 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-5"
  },
  {
   "id": "ww-GRR-FA-W-3-2026-04-14-Osceola",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 296 min. Counties: Osceola, Lake. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #3 (296 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-3"
  },
  {
   "id": "ww-GRR-FA-W-3-2026-04-14-Lake",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 296 min. Counties: Osceola, Lake. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #3 (296 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-3"
  },
  {
   "id": "ww-GRR-FA-W-5-2026-04-14-Mecosta",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Mecosta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 359 min. Counties: Mecosta, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #5 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-5"
  },
  {
   "id": "ww-GRR-FA-W-5-2026-04-14-Montcalm",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 359 min. Counties: Mecosta, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #5 (359 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-5"
  },
  {
   "id": "ww-GRR-FA-W-2-2026-04-14-Mason",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 317 min. County: Mason. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #2 (317 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-2"
  },
  {
   "id": "ww-GRR-FA-W-4-2026-04-14-Muskegon",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 368 min. Counties: Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #4 (368 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-4"
  },
  {
   "id": "ww-GRR-FA-W-4-2026-04-14-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 368 min. Counties: Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #4 (368 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-4"
  },
  {
   "id": "ww-GRR-FA-W-4-2026-04-14-Oceana",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 368 min. Counties: Muskegon, Newaygo, Oceana. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #4 (368 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-4"
  },
  {
   "id": "ww-GRR-FA-W-6-2026-04-14-Gratiot",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-14. Duration: 357 min. County: Gratiot. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #6 (357 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-6"
  },
  {
   "id": "ww-GRB-FL-W-34-2026-04-14-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-14. Duration: 11922 min. County: Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #34 (11922 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-34"
  },
  {
   "id": "ww-MQT-FL-W-2-2026-04-14-Iron",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 8980 min. County: Iron. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #2 (8980 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-2"
  },
  {
   "id": "ww-APX-FL-W-9-2026-04-14-Chippewa",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Chippewa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-14. Duration: 195 min. County: Chippewa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #9 (195 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-9"
  },
  {
   "id": "ww-MQT-FL-W-5-2026-04-14-Delta",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 11001 min. County: Delta. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #5 (11001 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-5"
  },
  {
   "id": "ww-GRR-FL-W-29-2026-04-14-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-14. Duration: 28108 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #29 (28108 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-29"
  },
  {
   "id": "ww-MQT-FL-W-6-2026-04-14-Houghton",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 17981 min. Counties: Houghton, Baraga. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #6 (17981 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-6"
  },
  {
   "id": "ww-MQT-FL-W-6-2026-04-14-Baraga",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 17981 min. Counties: Houghton, Baraga. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #6 (17981 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-6"
  },
  {
   "id": "ww-GRR-FL-W-26-2026-04-14-Osceola",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-14. Duration: 29368 min. County: Osceola. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #26 (29368 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-26"
  },
  {
   "id": "ww-GRR-FL-W-27-2026-04-14-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-14. Duration: 28828 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #27 (28828 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-27"
  },
  {
   "id": "ww-MQT-FL-W-3-2026-04-14-Marquette",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 3960 min. County: Marquette. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #3 (3960 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-3"
  },
  {
   "id": "ww-APX-FL-W-10-2026-04-14-Grand Traverse",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-14. Duration: 1832 min. County: Grand Traverse. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #10 (1832 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-10"
  },
  {
   "id": "ww-MQT-FL-W-1-2026-04-14-Houghton",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Houghton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 18516 min. Counties: Houghton, Baraga. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #1 (18516 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-1"
  },
  {
   "id": "ww-MQT-FL-W-1-2026-04-14-Baraga",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-14. Duration: 18516 min. Counties: Houghton, Baraga. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #1 (18516 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-1"
  },
  {
   "id": "ww-GRR-FL-W-28-2026-04-14-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-14",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-14. Duration: 12808 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #28 (12808 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-28"
  },
  {
   "id": "asos-bf-BEH-2026-04-14",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-04-14",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "spc-2026-04-14-518-0250",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "Cascade",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "SPC Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Gust at the Gerald R Ford International Airport. (GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 80,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-543-0549",
   "lat": 42.27,
   "lon": -83.75,
   "zip": "",
   "city": "Ann Arbor",
   "date": "2026-04-14",
   "county": "Washtenaw",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at the University of Michigan Stadium. (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-545-0608",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "Detroit Metro Intl Airp",
   "date": "2026-04-14",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "(DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 69,
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-553-0406",
   "lat": 43.35,
   "lon": -83.82,
   "zip": "",
   "city": "Bridgeport",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "SPC Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 90,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "NWS Storm Survey team confirms an EF-0 tornado occurred in Bridgeport on April 15. The tornado started northwest of Roedel Rd and S Reimer Rd... continued southeast bef (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-554-0504",
   "lat": 41.9,
   "lon": -84.99,
   "zip": "",
   "city": "Coldwater",
   "date": "2026-04-14",
   "county": "Branch",
   "source": "SPC Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 90,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "A survey of damage south of Coldwater Michigan indicates that a circulation may have attempted to touch down on Sanford Rd... north of Fenn Road where a barn suffered d (IWX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-555-0544",
   "lat": 42.28,
   "lon": -83.79,
   "zip": "",
   "city": "Barton Hills",
   "date": "2026-04-14",
   "county": "Washtenaw",
   "source": "SPC Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 90,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "NWS Storm Survey team confirms an EF-1 tornado occurred in Ann Arbor on April 15. The tornado started in the area of Jackson Ave near Interstate 94... continued southea (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-556-0614",
   "lat": 42.27,
   "lon": -83.19,
   "zip": "",
   "city": "Melvindale",
   "date": "2026-04-14",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 90,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "NWS Storm Survey team confirms an EF-1 tornado occurred in Lincoln Park on April 15. A brief tornado touched down near Wall Ave and Ruth Ave... and continued across res (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported"
  },
  {
   "id": "spc-2026-04-14-547-0608",
   "lat": 42.24,
   "lon": -83.53,
   "zip": "",
   "city": "Willow Run Airport",
   "date": "2026-04-14",
   "county": "Wayne",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 90,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Measured at Willow Run Airport. (DTX)",
   "sourceDetail": "Storm Prediction Center verified report",
   "windSpeedMph": 63,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-14-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-04-14",
   "county": "Kent",
   "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 KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-04-14-clinton-hail",
   "zip": "",
   "city": "Clinton",
   "date": "2026-04-14",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-14",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-04-14",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-04-14",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Allegan — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-kent-wind",
   "zip": "",
   "city": "Kent",
   "date": "2026-04-14",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-berrien-wind",
   "zip": "",
   "city": "Berrien",
   "date": "2026-04-14",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-montcalm-wind",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-04-14",
   "county": "Montcalm",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Montcalm — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2026-04-14",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-04-14",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-04-14",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-arenac-wind",
   "zip": "",
   "city": "Arenac",
   "date": "2026-04-14",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-oceana-hail",
   "zip": "",
   "city": "Oceana",
   "date": "2026-04-14",
   "county": "Oceana",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oceana — wind gusts up to 50 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-emmet-hail",
   "zip": "",
   "city": "Emmet",
   "date": "2026-04-14",
   "county": "Emmet",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Emmet — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-benzie-hail",
   "zip": "",
   "city": "Benzie",
   "date": "2026-04-14",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Benzie — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-14-charlevoix-hail",
   "zip": "",
   "city": "Charlevoix",
   "date": "2026-04-14",
   "county": "Charlevoix",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Charlevoix — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1334713-2026-04-13",
   "lon": 213128,
   "zip": "",
   "city": "LORETTO",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "County Road Commission reported that water over the road caused County Road 577 in Vulcan to be closed on the 15th. Video on social media showed a railroad track washout near Sagola on the 17th. Damage estimates were minimal and considered part of routine maintenance.",
   "sourceDetail": "Verified by County Official — NCEI Event #1334713",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334716-2026-04-13",
   "lon": 213128,
   "zip": "",
   "city": "SUGAR LOAF",
   "date": "2026-04-13",
   "county": "Marquette",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Emergency management reported multiple rivers and low lying areas were inundated by the combination of rain and snowmelt. In Gwinn, multiple roadways were inaccessible due to flooding on the Escanaba River by the 18th. Division Street in Negaunee was closed daily from the 13th onwards. Harlow Lake Rd (County Road HD) was closed at County Road 550 on the 17th. Flooding at Pelissier Lake in Sands Township resulted in 1 evacuation with well water being unsafe due to the high water table making septic systems inoperable. Ely, Humboldt, Champion, and Republic townships experienced water over multiple roadways, including the road at Steel Bridge Rd (Ely Township, County Road CG) on the 18th. The Chocolay River Fishing pier was underwater by the 19th. The Iron Ore Heritage Trail west of Wawanowin Rd to the city of Republic had flowing water on the trail by the 21st. 10 properties along the Michigamme River were inaccessible on the 23rd. Jasper Street in Ishpeming had a sinkhole that was filled on the 23rd. Due to the severity of the flooding, a Disaster Declaration Request was approved by the president on June 30th.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334716",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334444-2026-04-13",
   "lon": 213128,
   "zip": "",
   "city": "TAPIOLA",
   "date": "2026-04-13",
   "county": "Houghton",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Emergency management reported that the road into the Otter Lake Dam was completely submerged by 10 AM on the 18th. Trained spotters reported that the access to the wire weight gauge on the Sturgeon River at Chassell was impossible due to water over Sturgeon River Road. Damage was considered minimal and damage estimates are not available.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334444",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334714-2026-04-13",
   "lon": 213128,
   "zip": "",
   "city": "CRYSTAL FALLS IRON C",
   "date": "2026-04-13",
   "county": "Iron",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "County emergency management reported that the M-69 bridge was closed on the 21st and advised residents to evacuate if they resided near flooded waters. On the 18th, social media reports showed inundation for low lying areas in the town of Amasa including damage to local parks and residential septic systems. Deer Lake became inaccessible due to road washouts on the 18th. Flooding in Sagola resulted in railroad washouts. Due to the severity of the flooding, a Disaster Declaration Request was approved by the president on June 30th.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334714",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202604132350-hail-42.65--85.29",
   "lat": 42.65,
   "lon": -85.29,
   "zip": "",
   "city": "Hastings",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Hastings, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604140004-hail-42.65--85.30",
   "lat": 42.65,
   "lon": -85.3,
   "zip": "",
   "city": "Hastings",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Hastings, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1333001-2026-04-13",
   "lon": 212999,
   "zip": "",
   "city": "PORTLAND",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Ping pong size hail from media and the public.",
   "sourceDetail": "Verified by Public — NCEI Event #1333001",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202604140308-hail-43.61--83.18",
   "lat": 43.61,
   "lon": -83.18,
   "zip": "",
   "city": "1 NW Cass City",
   "date": "2026-04-13",
   "county": "Tuscola",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NW Cass City, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "spc-2026-04-13-561-0450",
   "lat": 44.09,
   "lon": -85.36,
   "zip": "",
   "city": "Dighton",
   "date": "2026-04-13",
   "county": "Osceola",
   "source": "SPC Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 90,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "(GRR)",
   "sourceDetail": "Storm Prediction Center verified report",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202604140030-hail-42.87--84.90",
   "lat": 42.87,
   "lon": -84.9,
   "zip": "",
   "city": "Portland",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Portland, MI. Hail size: 2\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202604140318-hail-44.05--83.86",
   "lat": 44.05,
   "lon": -83.86,
   "zip": "",
   "city": "Omer",
   "date": "2026-04-13",
   "county": "Arenac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Omer, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-geo-2026-04-13-flood-45.56--85.11",
   "lat": 45.56,
   "lon": -85.11,
   "zip": "",
   "city": "1 SSE Good Hart",
   "date": "2026-04-13",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Social media post shows a portion of M-119, Tunnel of Trees, collapsed between Cross Village and Good Hart.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604140317-hail-44.05--83.86",
   "lat": 44.05,
   "lon": -83.86,
   "zip": "",
   "city": "Omer",
   "date": "2026-04-13",
   "county": "Arenac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Omer, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-geo-2026-04-13T04:49:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-04-13",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 51 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-13T07:15:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-04-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 51 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-13T05:59:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-04-13",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 55 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-35-2026-04-13-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 36 min. County: Gratiot. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #35 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-35"
  },
  {
   "id": "ww-GRR-SV-W-35-2026-04-13-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 36 min. County: Gratiot. Storm tags: wind: 60.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #35 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-35"
  },
  {
   "id": "ww-GRR-SV-W-30-2026-04-13-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 64 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #30 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-30"
  },
  {
   "id": "ww-GRR-SV-W-30-2026-04-13-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 64 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #30 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-30"
  },
  {
   "id": "ww-GRR-SV-W-30-2026-04-13-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 64 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #30 (64 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-30"
  },
  {
   "id": "ww-GRR-SV-W-30-2026-04-13-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 64 min. Counties: Calhoun, Kalamazoo. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #30 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-30"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Lake-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Lake-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Oceana-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Oceana-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Oceana",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Newaygo-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-GRR-SV-W-37-2026-04-13-Newaygo-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 45 min. Counties: Mason, Oceana, Newaygo, Lake. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #37 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-37"
  },
  {
   "id": "ww-IWX-SV-W-85-2026-04-13-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 35 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #85 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-85"
  },
  {
   "id": "ww-IWX-SV-W-85-2026-04-13-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 35 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #85 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-85"
  },
  {
   "id": "iem-ww-IWX-SV-W-85-St. Joseph-wind-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-85"
  },
  {
   "id": "iem-ww-IWX-SV-W-85-St. Joseph-hail-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 1\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-85"
  },
  {
   "id": "ww-GRR-SV-W-34-2026-04-13-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 36 min. County: Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #34 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-34"
  },
  {
   "id": "ww-GRR-SV-W-34-2026-04-13-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 36 min. County: Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #34 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-34"
  },
  {
   "id": "ww-IWX-SV-W-86-2026-04-13-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 38 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #86 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-86"
  },
  {
   "id": "ww-IWX-SV-W-86-2026-04-13-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 38 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #86 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-86"
  },
  {
   "id": "iem-ww-IWX-SV-W-86-St. Joseph-wind-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-86"
  },
  {
   "id": "iem-ww-IWX-SV-W-86-St. Joseph-hail-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 1\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-86"
  },
  {
   "id": "ww-IWX-SV-W-88-2026-04-13-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 24 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #88 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-88"
  },
  {
   "id": "ww-IWX-SV-W-88-2026-04-13-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 24 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #88 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-88"
  },
  {
   "id": "iem-ww-IWX-SV-W-88-St. Joseph-wind-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-88"
  },
  {
   "id": "iem-ww-IWX-SV-W-88-St. Joseph-hail-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 1\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-88"
  },
  {
   "id": "ww-APX-SV-W-15-2026-04-13-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 50 min. County: Manistee. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #15 (50 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-15"
  },
  {
   "id": "ww-APX-SV-W-15-2026-04-13-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 50 min. County: Manistee. Storm tags: wind: 60.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #15 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-15"
  },
  {
   "id": "ww-APX-SV-W-16-2026-04-13-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 25 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #16 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-16"
  },
  {
   "id": "ww-APX-SV-W-16-2026-04-13-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 25 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #16 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-16"
  },
  {
   "id": "ww-APX-SV-W-16-2026-04-13-Alcona-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 25 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #16 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-16"
  },
  {
   "id": "ww-APX-SV-W-16-2026-04-13-Alcona-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 25 min. Counties: Alcona, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #16 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-16"
  },
  {
   "id": "ww-GRR-SV-W-33-2026-04-13-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 61 min. Counties: Clinton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #33 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-33"
  },
  {
   "id": "ww-GRR-SV-W-33-2026-04-13-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 61 min. Counties: Clinton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #33 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-33"
  },
  {
   "id": "ww-GRR-SV-W-33-2026-04-13-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 61 min. Counties: Clinton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #33 (61 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-33"
  },
  {
   "id": "ww-GRR-SV-W-33-2026-04-13-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 61 min. Counties: Clinton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #33 (61 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-33"
  },
  {
   "id": "ww-GRR-SV-W-31-2026-04-13-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 56 min. County: Barry. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #31 (56 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-31"
  },
  {
   "id": "ww-GRR-SV-W-31-2026-04-13-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 56 min. County: Barry. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #31 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-31"
  },
  {
   "id": "iem-ww-IWX-SV-W-87-St. Joseph-wind-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-87"
  },
  {
   "id": "iem-ww-IWX-SV-W-87-St. Joseph-hail-2026-04-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-87"
  },
  {
   "id": "ww-IWX-SV-W-87-2026-04-13-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 38 min. Counties: St. Joseph, Branch. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #87 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-87"
  },
  {
   "id": "ww-IWX-SV-W-87-2026-04-13-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 38 min. Counties: St. Joseph, Branch. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #87 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-87"
  },
  {
   "id": "ww-IWX-SV-W-90-2026-04-13-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 16 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #90 (16 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-90"
  },
  {
   "id": "ww-IWX-SV-W-90-2026-04-13-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 16 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #90 (16 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-90"
  },
  {
   "id": "ww-IWX-SV-W-90-2026-04-13-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 16 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #90 (16 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-90"
  },
  {
   "id": "ww-IWX-SV-W-90-2026-04-13-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-13. Duration: 16 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #90 (16 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-90"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-GRR-SV-W-32-2026-04-13-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 47 min. Counties: Kent, Eaton, Ionia. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #32 (47 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-32"
  },
  {
   "id": "ww-DTX-SV-W-8-2026-04-13-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 31 min. County: Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #8 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-8"
  },
  {
   "id": "ww-DTX-SV-W-8-2026-04-13-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 31 min. County: Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #8 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-8"
  },
  {
   "id": "ww-GRR-SV-W-36-2026-04-13-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 39 min. County: Mason. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #36 (39 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-36"
  },
  {
   "id": "ww-GRR-SV-W-36-2026-04-13-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-13. Duration: 39 min. County: Mason. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #36 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "GRR-SV-W-36"
  },
  {
   "id": "ww-DTX-SV-W-10-2026-04-13-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 64 min. Counties: Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #10 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-10"
  },
  {
   "id": "ww-DTX-SV-W-10-2026-04-13-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 64 min. Counties: Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #10 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-10"
  },
  {
   "id": "ww-DTX-SV-W-10-2026-04-13-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 64 min. Counties: Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #10 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-10"
  },
  {
   "id": "ww-DTX-SV-W-10-2026-04-13-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 64 min. Counties: Bay, Saginaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #10 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-10"
  },
  {
   "id": "ww-DTX-SV-W-9-2026-04-13-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 17 min. County: Monroe. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #9 (17 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-9"
  },
  {
   "id": "ww-DTX-SV-W-9-2026-04-13-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 17 min. County: Monroe. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #9 (17 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-9"
  },
  {
   "id": "ww-APX-SV-W-14-2026-04-13-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 44 min. Counties: Arenac, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #14 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-14"
  },
  {
   "id": "ww-APX-SV-W-14-2026-04-13-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 44 min. Counties: Arenac, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #14 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-14"
  },
  {
   "id": "ww-APX-SV-W-14-2026-04-13-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 44 min. Counties: Arenac, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #14 (44 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-14"
  },
  {
   "id": "ww-APX-SV-W-14-2026-04-13-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-04-13. Duration: 44 min. Counties: Arenac, Iosco. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #14 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-14"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Bay-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Bay-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Huron-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Huron-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Huron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Sanilac-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Sanilac-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Sanilac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Tuscola-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-DTX-SV-W-11-2026-04-13-Tuscola-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-13. Duration: 91 min. Counties: Bay, Huron, Sanilac, Tuscola. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #11 (91 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-11"
  },
  {
   "id": "ww-APX-FF-W-3-2026-04-13-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-13. Duration: 722 min. Counties: Alcona, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #3 (722 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-3"
  },
  {
   "id": "ww-APX-FF-W-3-2026-04-13-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-13. Duration: 722 min. Counties: Alcona, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #3 (722 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-3"
  },
  {
   "id": "ww-MQT-FA-W-2-2026-04-13-Delta",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-13. Duration: 180 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #2 (180 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-2"
  },
  {
   "id": "ww-MQT-FA-W-2-2026-04-13-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-13. Duration: 180 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #2 (180 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-2"
  },
  {
   "id": "ww-MQT-FA-W-2-2026-04-13-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-13. Duration: 180 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #2 (180 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-2"
  },
  {
   "id": "ww-MQT-FA-W-3-2026-04-13-Gogebic",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-13. Duration: 639 min. County: Gogebic. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #3 (639 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-3"
  },
  {
   "id": "ww-APX-FL-W-8-2026-04-13-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-13. Duration: 6596 min. County: Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #8 (6596 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-8"
  },
  {
   "id": "ww-GRB-FL-W-17-2026-04-13-Iron",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 29282 min. Counties: Iron, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #17 (29282 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-17"
  },
  {
   "id": "ww-GRB-FL-W-17-2026-04-13-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 29282 min. Counties: Iron, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #17 (29282 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-17"
  },
  {
   "id": "ww-GRB-FL-W-22-2026-04-13-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 11482 min. Counties: Dickinson, Iron. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #22 (11482 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-22"
  },
  {
   "id": "ww-GRB-FL-W-22-2026-04-13-Iron",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 11482 min. Counties: Dickinson, Iron. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #22 (11482 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-22"
  },
  {
   "id": "ww-GRB-FL-W-12-2026-04-13-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 13130 min. Counties: Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #12 (13130 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-12"
  },
  {
   "id": "ww-GRB-FL-W-12-2026-04-13-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 13130 min. Counties: Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #12 (13130 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-12"
  },
  {
   "id": "ww-MQT-FL-W-4-2026-04-13-Gogebic",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Gogebic",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS MQT on 2026-04-13. Duration: 710 min. County: Gogebic. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Flood Warning #4 (710 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FL-W-4"
  },
  {
   "id": "ww-GRB-FL-W-13-2026-04-13-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 13711 min. Counties: Menominee, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #13 (13711 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-13"
  },
  {
   "id": "ww-GRB-FL-W-13-2026-04-13-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 13711 min. Counties: Menominee, Dickinson. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #13 (13711 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-13"
  },
  {
   "id": "ww-GRB-FL-W-11-2026-04-13-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-13",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRB on 2026-04-13. Duration: 20899 min. County: Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRB — Flood Warning #11 (20899 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRB-FL-W-11"
  },
  {
   "id": "asos-bf-JXN-2026-04-13",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-04-13",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-04-13",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-04-13",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-04-13",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-04-13",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2026-04-13",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-04-13",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-04-13-hail-42.87--84.90",
   "lat": 42.87,
   "lon": -84.9,
   "zip": "",
   "city": "Portland",
   "date": "2026-04-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Quarter to ping pong sized hail from media reports and the public.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "ncei-1333000-2026-04-13",
   "lon": 212999,
   "zip": "",
   "city": "HASTINGS",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Law enforcement reported quarter to half-dollar size hail.",
   "sourceDetail": "Verified by Law Enforcement — NCEI Event #1333000",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1333002-2026-04-13",
   "lon": 212999,
   "zip": "",
   "city": "HASTINGS",
   "date": "2026-04-13",
   "county": "Barry",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Quarter size hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1333002",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327833-2026-04-13",
   "lon": 212329,
   "zip": "",
   "city": "CASS CITY",
   "date": "2026-04-13",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A thunderstorm in Tuscola County produced hail in excess of one inch in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1327833",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1333003-2026-04-13",
   "lon": 212999,
   "zip": "",
   "city": "DIGHTON",
   "date": "2026-04-13",
   "county": "Osceola",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms moved across lower Michigan late on April 13th into the early morning hours of April 14th.  Large hail was common with limited damaging winds. Moderate to heavy rain occurred along with some localized inconvenient flooding with one to three inches of rain.",
   "sourceDetail": "Verified by Public — NCEI Event #1333003",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "sps-2026-04-13-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2026-04-13",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 55 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-stjoseph-hail",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-13",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 55 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-13",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Jackson — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-13",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-washtenaw-wind",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-04-13",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-13",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-04-13",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-04-13",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-04-13",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-13",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-04-13",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-13-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-04-13",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1334703-2026-04-12",
   "lon": 213128,
   "zip": "",
   "city": "FAITHORN",
   "date": "2026-04-12",
   "county": "Menominee",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "County emergency management reported 20 to 30 roads flooded by 9:45 AM on the 12th, with significant flooding of the US-2 rail underpass in Powers as well as much of the surrounding town and the nearby town of Wilson. On the 13th, railroad tracks in Faithorn were washed out. In the overnight of the 13th into the 14th, County Road 563 washed out at Wilson Creek. One water rescue was performed in Harris Township on the 14th.Due to the severity of the flooding, a Disaster Declaration Request was approved by the president on June 30th.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334703",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1334704-2026-04-12",
   "lon": 213128,
   "zip": "",
   "city": "FORD RIVER",
   "date": "2026-04-12",
   "county": "Delta",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "County emergency management reported Delta County Airport closed on the 13th due to water over the runways. Power was cut to the VOR facility and water was at least 3 feet deep. At least 4 roads in the city of Escanaba were closed on the 13th. In Rapid River, water over the road closed the US-41 and US-2 intersection. A culvert washout closed County Road 503 in Bay De Noc Township from the 16th to the 17th. Water over the road on County Road 497/GG in Nahma caused the road to be closed from the 17th to the 27th. Drone footage along the Ford River provided by the emergency manager highlighted multiple structures threated, surrounded, or inundated by high water. County emergency manager estimates private property damages around 300 Thousand $USD and the public damages at approximately 250 Thousand $USD.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1334704",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-geo-2026-04-12-flood-45.44--84.79",
   "lat": 45.44,
   "lon": -84.79,
   "zip": "",
   "city": "Alanson",
   "date": "2026-04-12",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Emmet County emergency manager and public reporting high water reaching buildings along the Crooked River owing to recent snowpack melt and rainfall over the last week.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12-flood-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 NW Pellston",
   "date": "2026-04-12",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Corrects previous flood report from 1 NW Pellston. Emmet County emergency manager reports high water covering the runways at Pellston Regional Airport from recent snowpack melt and rainfall. The airport is closed as a result.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12-flood-45.47--84.30",
   "lat": 45.47,
   "lon": -84.3,
   "zip": "",
   "city": "2 SW Black Lake",
   "date": "2026-04-12",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Cheboygan County EM reports water in yards and approaching homes on Black Lake in Cheboygan County.",
   "sourceDetail": "NWS APX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12-flood-44.42--84.68",
   "lat": 44.42,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW South Higgins Lak",
   "date": "2026-04-12",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Social media post from the South Higgins Lake State Park Facebook page shows expansive ponding of water across the park.",
   "sourceDetail": "NWS APX — Park/Forest Srvc via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12-flood-45.69--87.53",
   "lat": 45.69,
   "lon": -87.53,
   "zip": "",
   "city": "Powers",
   "date": "2026-04-12",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. EM reports 20-30 roads in the county were flooded, including US 2 at the US41 intersection, which remains closed to traffic as of Monday afternoon. County road commission reports that most of the roads that were closed as of Sunday evening were in the Carney, Powers, and Wilson areas.",
   "sourceDetail": "NWS MQT — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12-flood-45.93--86.97",
   "lat": 45.93,
   "lon": -86.97,
   "zip": "",
   "city": "1 NNW Rapid River",
   "date": "2026-04-12",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "US-41 at US-2 has alternating lanes of traffic due to water over the roadway. Lane closure still in effect as of Monday afternoon.",
   "sourceDetail": "NWS MQT — Dept of Highways via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-12T14:58:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-12",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 51 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-12T15:16:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-04-12",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 51 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-13T03:50:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-04-12",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 53 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-12T17:54:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-12",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-12T16:50:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-04-12",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 55 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-13T00:49:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-12",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 56 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-FF-W-1-2026-04-12-Alcona",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Alcona",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-12. Duration: 706 min. Counties: Alcona, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #1 (706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-1"
  },
  {
   "id": "ww-APX-FF-W-1-2026-04-12-Oscoda",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-12. Duration: 706 min. Counties: Alcona, Oscoda. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #1 (706 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-1"
  },
  {
   "id": "ww-APX-FF-W-2-2026-04-12-Manistee",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2026-04-12. Duration: 709 min. County: Manistee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #2 (709 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-2"
  },
  {
   "id": "ww-MQT-FA-W-1-2026-04-12-Delta",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Delta",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-12. Duration: 191 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #1 (191 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-1"
  },
  {
   "id": "ww-MQT-FA-W-1-2026-04-12-Dickinson",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Dickinson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-12. Duration: 191 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #1 (191 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-1"
  },
  {
   "id": "ww-MQT-FA-W-1-2026-04-12-Menominee",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Menominee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS MQT on 2026-04-12. Duration: 191 min. Counties: Delta, Dickinson, Menominee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Areal Flood Warning #1 (191 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-FA-W-1"
  },
  {
   "id": "ww-APX-FA-W-2-2026-04-12-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-12. Duration: 9983 min. Counties: Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #2 (9983 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-2"
  },
  {
   "id": "ww-APX-FA-W-2-2026-04-12-Emmet",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-04-12. Duration: 9983 min. Counties: Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #2 (9983 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-2"
  },
  {
   "id": "ww-APX-FL-W-7-2026-04-12-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-12. Duration: 7020 min. County: Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #7 (7020 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-7"
  },
  {
   "id": "ww-APX-FL-W-6-2026-04-12-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-04-12",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-12. Duration: 3798 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #6 (3798 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-6"
  },
  {
   "id": "asos-bf-MBS-2026-04-12",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-04-12",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-04-12",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-04-12",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-04-12",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-04-12",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-APN-2026-04-12",
   "lat": 45.0717,
   "lon": -83.5644,
   "zip": "",
   "city": "ALPENA",
   "date": "2026-04-12",
   "county": "Alpena",
   "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": "ALPENA (APN) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ALPENA (APN) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "fema-4925-Eaton",
   "zip": "",
   "city": "Eaton",
   "date": "2026-04-10",
   "county": "Eaton",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Iron",
   "zip": "",
   "city": "Iron",
   "date": "2026-04-10",
   "county": "Iron",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Lake",
   "zip": "",
   "city": "Lake",
   "date": "2026-04-10",
   "county": "Lake",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Marquette",
   "zip": "",
   "city": "Marquette",
   "date": "2026-04-10",
   "county": "Marquette",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Menominee",
   "zip": "",
   "city": "Menominee",
   "date": "2026-04-10",
   "county": "Menominee",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Missaukee",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-04-10",
   "county": "Missaukee",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Montmorency",
   "zip": "",
   "city": "Montmorency",
   "date": "2026-04-10",
   "county": "Montmorency",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Ogemaw",
   "zip": "",
   "city": "Ogemaw",
   "date": "2026-04-10",
   "county": "Ogemaw",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Oscoda",
   "zip": "",
   "city": "Oscoda",
   "date": "2026-04-10",
   "county": "Oscoda",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Tuscola",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-04-10",
   "county": "Tuscola",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Allegan",
   "zip": "",
   "city": "Allegan",
   "date": "2026-04-10",
   "county": "Allegan",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Antrim",
   "zip": "",
   "city": "Antrim",
   "date": "2026-04-10",
   "county": "Antrim",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Barry",
   "zip": "",
   "city": "Barry",
   "date": "2026-04-10",
   "county": "Barry",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Iosco",
   "zip": "",
   "city": "Iosco",
   "date": "2026-04-10",
   "county": "Iosco",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Kalamazoo",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-10",
   "county": "Kalamazoo",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Montcalm",
   "zip": "",
   "city": "Montcalm",
   "date": "2026-04-10",
   "county": "Montcalm",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Muskegon",
   "zip": "",
   "city": "Muskegon",
   "date": "2026-04-10",
   "county": "Muskegon",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Oceana",
   "zip": "",
   "city": "Oceana",
   "date": "2026-04-10",
   "county": "Oceana",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Roscommon",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-04-10",
   "county": "Roscommon",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Saginaw",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-04-10",
   "county": "Saginaw",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Washtenaw",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-04-10",
   "county": "Washtenaw",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Alcona",
   "zip": "",
   "city": "Alcona",
   "date": "2026-04-10",
   "county": "Alcona",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Alpena",
   "zip": "",
   "city": "Alpena",
   "date": "2026-04-10",
   "county": "Alpena",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Benzie",
   "zip": "",
   "city": "Benzie",
   "date": "2026-04-10",
   "county": "Benzie",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Charlevoix",
   "zip": "",
   "city": "Charlevoix",
   "date": "2026-04-10",
   "county": "Charlevoix",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Cheboygan",
   "zip": "",
   "city": "Cheboygan",
   "date": "2026-04-10",
   "county": "Cheboygan",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Crawford",
   "zip": "",
   "city": "Crawford",
   "date": "2026-04-10",
   "county": "Crawford",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Emmet",
   "zip": "",
   "city": "Emmet",
   "date": "2026-04-10",
   "county": "Emmet",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Grand Traverse",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-04-10",
   "county": "Grand Traverse",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Gratiot",
   "zip": "",
   "city": "Gratiot",
   "date": "2026-04-10",
   "county": "Gratiot",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Kalkaska",
   "zip": "",
   "city": "Kalkaska",
   "date": "2026-04-10",
   "county": "Kalkaska",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Manistee",
   "zip": "",
   "city": "Manistee",
   "date": "2026-04-10",
   "county": "Manistee",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Mecosta",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-04-10",
   "county": "Mecosta",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Newaygo",
   "zip": "",
   "city": "Newaygo",
   "date": "2026-04-10",
   "county": "Newaygo",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Osceola",
   "zip": "",
   "city": "Osceola",
   "date": "2026-04-10",
   "county": "Osceola",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Presque Isle",
   "zip": "",
   "city": "Presque Isle",
   "date": "2026-04-10",
   "county": "Presque Isle",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "fema-4925-Wexford",
   "zip": "",
   "city": "Wexford",
   "date": "2026-04-10",
   "county": "Wexford",
   "source": "FEMA Declaration",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Federal disaster declaration: SEVERE STORMS, TORNADOES, AND FLOODING",
   "sourceDetail": "FEMA DR-4925: SEVERE STORMS, TORNADOES, AND FLOODING",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-geo-2026-04-09T06:04:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2026-04-09",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 52 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-09T05:25:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-04-09",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 53 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-09T12:27:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-09",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 52 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-FL-W-25-2026-04-09-Kalamazoo",
   "zip": "",
   "city": "",
   "date": "2026-04-09",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-09. Duration: 30240 min. County: Kalamazoo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #25 (30240 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-25"
  },
  {
   "id": "asos-bf-OSC-2026-04-09",
   "lat": 44.4515,
   "lon": -83.3942,
   "zip": "",
   "city": "OSCODA/WURTSMITH",
   "date": "2026-04-09",
   "county": "Iosco",
   "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": "OSCODA/WURTSMITH (OSC) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — OSCODA/WURTSMITH (OSC) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-04-09",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-04-09",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-04-09",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-04-09",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-08T20:40:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-04-08",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 55 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-FL-W-24-2026-04-08-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-08",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-08. Duration: 2520 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #24 (2520 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-24"
  },
  {
   "id": "ww-GRR-FL-W-23-2026-04-07-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-07",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-07. Duration: 2160 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #23 (2160 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-23"
  },
  {
   "id": "iem-lsr-2026-04-06-wind-46.84--87.68",
   "lat": 46.84,
   "lon": -87.68,
   "zip": "",
   "city": "3 NE Big Bay",
   "date": "2026-04-06",
   "county": "Marquette",
   "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 on Big Bay Lighthouse. Elevated platform.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-04-06-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-04-06",
   "county": "Alger",
   "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 KP53 Munising Lakeshore. Update to previous report.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202604061444-wind-46.84--87.68",
   "lat": 46.84,
   "lon": -87.68,
   "zip": "",
   "city": "3 NE Big Bay",
   "date": "2026-04-06",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Big Bay, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202604061810-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-04-06",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-06T15:30:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-04-06",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 51 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-06T13:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-04-06",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 54 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-06T14:01:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-04-06",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 54 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-06T16:45:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-04-06",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 54 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-FL-W-9-2026-04-06-Macomb",
   "zip": "",
   "city": "",
   "date": "2026-04-06",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-06. Duration: 1259 min. County: Macomb. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #9 (1259 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-9"
  },
  {
   "id": "ww-GRR-FL-W-21-2026-04-06-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-06",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-06. Duration: 4475 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #21 (4475 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-21"
  },
  {
   "id": "ww-GRR-FL-W-20-2026-04-06-Osceola",
   "zip": "",
   "city": "",
   "date": "2026-04-06",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-06. Duration: 1440 min. County: Osceola. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #20 (1440 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-20"
  },
  {
   "id": "ww-GRR-FL-W-22-2026-04-06-Ottawa",
   "zip": "",
   "city": "",
   "date": "2026-04-06",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-06. Duration: 9964 min. County: Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #22 (9964 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-22"
  },
  {
   "id": "ncei-1326995-2026-04-05",
   "lon": 212202,
   "zip": "",
   "city": "LAMBERTVILLE ARPT",
   "date": "2026-04-05",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Metal tower attached to the north side and on top of the grain elevators blown east and collapsed on the train tracks in front of the grain elevators. Tarp roofing damage also noted across the street on Lynch Road.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1326995",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ww-DTX-FL-W-8-2026-04-05-Genesee",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 1560 min. County: Genesee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #8 (1560 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-8"
  },
  {
   "id": "ww-GRR-FL-W-19-2026-04-05-Ionia",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 5468 min. County: Ionia. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #19 (5468 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-19"
  },
  {
   "id": "ww-DTX-FL-W-3-2026-04-05-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 7593 min. Counties: Saginaw, Bay. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #3 (7593 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-3"
  },
  {
   "id": "ww-DTX-FL-W-3-2026-04-05-Bay",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Bay",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 7593 min. Counties: Saginaw, Bay. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #3 (7593 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-3"
  },
  {
   "id": "ww-DTX-FL-W-4-2026-04-05-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 3678 min. County: Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #4 (3678 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-4"
  },
  {
   "id": "ww-DTX-FL-W-11-2026-04-05-Tuscola",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Tuscola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 1963 min. Counties: Tuscola, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #11 (1963 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-11"
  },
  {
   "id": "ww-DTX-FL-W-11-2026-04-05-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-05. Duration: 1963 min. Counties: Tuscola, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #11 (1963 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-11"
  },
  {
   "id": "ww-GRR-FL-W-14-2026-04-05-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 7200 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #14 (7200 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-14"
  },
  {
   "id": "ww-IWX-FL-W-28-2026-04-05-Berrien",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-05. Duration: 8160 min. County: Berrien. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #28 (8160 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-28"
  },
  {
   "id": "ww-GRR-FL-W-15-2026-04-05-Barry",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 7470 min. County: Barry. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #15 (7470 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-15"
  },
  {
   "id": "ww-GRR-FL-W-10-2026-04-05-Clinton",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 4231 min. County: Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #10 (4231 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-10"
  },
  {
   "id": "ww-IWX-FL-W-29-2026-04-05-Berrien",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-05. Duration: 4500 min. Counties: Berrien, Cass. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #29 (4500 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-29"
  },
  {
   "id": "ww-IWX-FL-W-29-2026-04-05-Cass",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-05. Duration: 4500 min. Counties: Berrien, Cass. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #29 (4500 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-29"
  },
  {
   "id": "ww-GRR-FL-W-16-2026-04-05-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 4860 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #16 (4860 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-16"
  },
  {
   "id": "ww-GRR-FL-W-18-2026-04-05-Isabella",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Isabella",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 1380 min. County: Isabella. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #18 (1380 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-18"
  },
  {
   "id": "ww-GRR-FL-W-17-2026-04-05-Gratiot",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 1980 min. County: Gratiot. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #17 (1980 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-17"
  },
  {
   "id": "ww-GRR-FL-W-11-2026-04-05-Kent",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 12501 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #11 (12501 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-11"
  },
  {
   "id": "ww-GRR-FL-W-12-2026-04-05-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-05. Duration: 4620 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #12 (4620 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-12"
  },
  {
   "id": "ww-IWX-FL-W-26-2026-04-05-Branch",
   "zip": "",
   "city": "",
   "date": "2026-04-05",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-04-05. Duration: 7200 min. Counties: Branch, St. Joseph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #26 (7200 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-26"
  },
  {
   "id": "iem-ww-IWX-FL-W-26-St. Joseph-flood-2026-04-05",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-05",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 0.72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "FL W for St. Joseph.",
   "sourceDetail": "NWS IWX — FL/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-26"
  },
  {
   "id": "ncei-1326350-2026-04-04",
   "lon": 212146,
   "zip": "",
   "city": "STEVENSVILLE",
   "date": "2026-04-04",
   "county": "Berrien",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Trained spotter reports that flooding is occuring with water as deep as the seat of a park bench.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1326350",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1326351-2026-04-04",
   "lon": 212146,
   "zip": "",
   "city": "COLOMA",
   "date": "2026-04-04",
   "county": "Berrien",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Numerous reports from local media about a railroad washout east of Coloma, MI. Media states that the washout was discovered around 5pm ET on the 4th.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1326351",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327295-2026-04-04",
   "lon": 212202,
   "zip": "",
   "city": "ORTONVILLE",
   "date": "2026-04-04",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "The Village of Holly issued a local state of emergency after flooding damaged pumps at its Waste Water Treatment Plant and impacted hundreds of homes. Water levels rose high enough to enter backyards and sheds. In some neighborhoods, residents reported water reaching the floorboards of their homes. The Road Commission for Oakland County (RCOC) was forced to close North Holly Road (just north of Quick Road near Holly Middle School) on the evening of April 4. The closure remained in place for several days due to standing water and road instability.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1327295",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1326941-2026-04-04",
   "lon": 212202,
   "zip": "",
   "city": "ANTHONY",
   "date": "2026-04-04",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Numerous trees downed in the vicinity of Piehl Rd., Summerfield Rd., Erie Rd., and St. Anthony Rd. Damage to two homes reported on Piehl Rd.",
   "sourceDetail": "Verified by Amateur Radio — NCEI Event #1326941",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1326942-2026-04-04",
   "lon": 212202,
   "zip": "",
   "city": "BELLEVILLE ARPT",
   "date": "2026-04-04",
   "county": "Wayne",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Numerous trees have been reported down in the Willis, Van Buren Township, and Roulo areas.",
   "sourceDetail": "Verified by Fire Department/Rescue — NCEI Event #1326942",
   "windSpeedMph": 61,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1326993-2026-04-04",
   "lon": 212202,
   "zip": "",
   "city": "BELLEVILLE ARPT",
   "date": "2026-04-04",
   "county": "Wayne",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The tornado first touched down just south of Martz Road, between |Rawsonville Road and Hoeft Road. At its onset, it flipped a hayride trailer before continuing its northeast path toward Hull Road. The most concentrated EF-1 damage was found along and just south of Hull Road, specifically between Elwell Road and Bak Road. Maximum estimated winds of 100 mph. In this area, surveyors observed multiple uprooted and snapped hardwood and pine trees, several snapped telephone poles, and a large barn that sustained significant damage, including a wall being completely blown out. The tornado continued northeast, crossing Sumpter Road where it downed power lines and several large tree limbs. The circulation lifted shortly after, just before reaching Savage Road on the western edge of Belleville.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1326993",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.80--83.62",
   "lat": 42.8,
   "lon": -83.62,
   "zip": "",
   "city": "Holly",
   "date": "2026-04-04",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Multiple locations north of Holly Road and Grange Hall Road were flooded and a couple local lakes in the same area were flooding into backyards.",
   "sourceDetail": "NWS DTX — NWS Employee via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.82--83.01",
   "lat": 42.82,
   "lon": -83.01,
   "zip": "",
   "city": "1 N Romeo",
   "date": "2026-04-04",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "A home just north of Romeo reported standing water above a half a foot in their yard that had flooded the ground level of outside stuctures.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-43.43--82.55",
   "lat": 43.43,
   "lon": -82.55,
   "zip": "",
   "city": "N Port Sanilac",
   "date": "2026-04-04",
   "county": "Sanilac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "A lot of standing water covering lawns, roads, and other low lying areas from Port Sanilac to Lexington from many ditches, creeks and streams out of their banks.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04T21:46:00Z-tornado-42.18--83.54",
   "lat": 42.18,
   "lon": -83.54,
   "zip": "",
   "city": "2 NE Willis",
   "date": "2026-04-04",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 NE Willis, MI. NWS storm survey confirms an EF-1 tornado occurred in Van Buren Twp on April 4. The tornado started just south of Martz Rd between Rawsonville Rd and Hoeft Rd, continued northeast along Hull Rd, then crossed Sumpter Rd and lifted before reaching Savage Rd.",
   "sourceDetail": "NWS DTX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.62--84.73",
   "lat": 42.62,
   "lon": -84.73,
   "zip": "",
   "city": "1 ESE Potterville",
   "date": "2026-04-04",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Several reports of flooded roads and resulting road closures across Ingham and Eaton Counties including.",
   "sourceDetail": "NWS GRR — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.71--84.36",
   "lat": 42.71,
   "lon": -84.36,
   "zip": "",
   "city": "3 E Okemos",
   "date": "2026-04-04",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooded Road Sherwood @ Meridian.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-43.60--84.76",
   "lat": 43.6,
   "lon": -84.76,
   "zip": "",
   "city": "1 ENE Mount Pleasant",
   "date": "2026-04-04",
   "county": "Isabella",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Emergency manager reports several roads flooding across Isabella County resulting in closures.",
   "sourceDetail": "NWS GRR — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.91--85.72",
   "lat": 42.91,
   "lon": -85.72,
   "zip": "",
   "city": "2 NW Wyoming",
   "date": "2026-04-04",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Photos of bankfull stream and standing water on roadways in Wyoming area received via social media.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DTX-SV-W-7-2026-04-04-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-04. Duration: 48 min. Counties: Monroe, Lenawee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #7 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-7"
  },
  {
   "id": "ww-DTX-SV-W-7-2026-04-04-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-04. Duration: 48 min. Counties: Monroe, Lenawee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #7 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-7"
  },
  {
   "id": "ww-DTX-SV-W-7-2026-04-04-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-04. Duration: 48 min. Counties: Monroe, Lenawee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #7 (48 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-7"
  },
  {
   "id": "ww-DTX-SV-W-7-2026-04-04-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-04-04. Duration: 48 min. Counties: Monroe, Lenawee. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #7 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-7"
  },
  {
   "id": "iem-ww-DTX-TO-W-2-Monroe-tornado-2026-04-04",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-04",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Monroe.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-2"
  },
  {
   "id": "iem-ww-DTX-TO-W-1-Wayne-tornado-2026-04-04",
   "zip": "",
   "city": "Wayne",
   "date": "2026-04-04",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Wayne.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-1"
  },
  {
   "id": "iem-ww-DTX-TO-W-3-Oakland-tornado-2026-04-04",
   "zip": "",
   "city": "Oakland",
   "date": "2026-04-04",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Oakland.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-3"
  },
  {
   "id": "iem-ww-DTX-TO-W-3-Macomb-tornado-2026-04-04",
   "zip": "",
   "city": "Macomb",
   "date": "2026-04-04",
   "county": "Macomb",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Macomb.",
   "sourceDetail": "NWS DTX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-TO-W-3"
  },
  {
   "id": "ww-GRR-FA-W-1-2026-04-04-Calhoun",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-04. Duration: 360 min. Counties: Calhoun, Kalamazoo, Lake. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #1 (360 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-1"
  },
  {
   "id": "ww-GRR-FA-W-1-2026-04-04-Kalamazoo",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-04. Duration: 360 min. Counties: Calhoun, Kalamazoo, Lake. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #1 (360 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-1"
  },
  {
   "id": "ww-GRR-FA-W-1-2026-04-04-Lake",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS GRR on 2026-04-04. Duration: 360 min. County: Lake. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Areal Flood Warning #1 (360 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FA-W-1"
  },
  {
   "id": "ww-DTX-FL-W-10-2026-04-04-Genesee",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 441 min. County: Genesee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #10 (441 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-10"
  },
  {
   "id": "ww-GRR-FL-W-13-2026-04-04-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-04. Duration: 2340 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #13 (2340 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-13"
  },
  {
   "id": "ww-DTX-FL-W-5-2026-04-04-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2880 min. Counties: Saginaw, Shiawassee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #5 (2880 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-5"
  },
  {
   "id": "ww-DTX-FL-W-5-2026-04-04-Shiawassee",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2880 min. Counties: Saginaw, Shiawassee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #5 (2880 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-5"
  },
  {
   "id": "ww-DTX-FL-W-7-2026-04-04-Genesee",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2059 min. Counties: Genesee, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #7 (2059 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-7"
  },
  {
   "id": "ww-DTX-FL-W-7-2026-04-04-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2059 min. Counties: Genesee, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #7 (2059 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-7"
  },
  {
   "id": "ww-GRR-FL-W-9-2026-04-04-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-04. Duration: 6840 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #9 (6840 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-9"
  },
  {
   "id": "ww-GRR-FL-W-8-2026-04-04-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-04. Duration: 2640 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #8 (2640 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-8"
  },
  {
   "id": "ww-DTX-FL-W-6-2026-04-04-Genesee",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Genesee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 1645 min. County: Genesee. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #6 (1645 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-6"
  },
  {
   "id": "ww-DTX-FL-W-2-2026-04-04-Midland",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Midland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2897 min. Counties: Midland, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #2 (2897 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-2"
  },
  {
   "id": "ww-DTX-FL-W-2-2026-04-04-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-04-04. Duration: 2897 min. Counties: Midland, Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #2 (2897 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-2"
  },
  {
   "id": "ww-GRR-FL-W-6-2026-04-04-Kalamazoo",
   "zip": "",
   "city": "",
   "date": "2026-04-04",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-04-04. Duration: 4860 min. County: Kalamazoo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #6 (4860 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-6"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.19--86.31",
   "lat": 42.19,
   "lon": -86.31,
   "zip": "",
   "city": "Coloma",
   "date": "2026-04-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. Washout along the CSX Grand Rapids Subdivision has occurred near Coloma. Time estimated by radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-04-04-flood-42.01--86.52",
   "lat": 42.01,
   "lon": -86.52,
   "zip": "",
   "city": "Stevensville",
   "date": "2026-04-04",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Delayed report. Flooding in the park is up to horizontal part of the bench in the park. Time estimated by radar.",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2026-04-04-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2026-04-04",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-04-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-04-04",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Wayne — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ww-APX-FL-W-4-2026-04-03-Wexford",
   "zip": "",
   "city": "",
   "date": "2026-04-03",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-03. Duration: 5880 min. County: Wexford. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #4 (5880 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-4"
  },
  {
   "id": "ww-APX-FL-W-5-2026-04-03-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-04-03",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-04-03. Duration: 3697 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #5 (3697 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-5"
  },
  {
   "id": "sps-2026-04-03-berrien-wind",
   "zip": "",
   "city": "Berrien",
   "date": "2026-04-03",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-03-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2026-04-03",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2026-04-02-wind-43.95--86.44",
   "lat": 43.95,
   "lon": -86.44,
   "zip": "",
   "city": "1 S Ludington",
   "date": "2026-04-02",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.9,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Buoy station LDTM4 Ludington.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-03T02:45:00Z-wind-43.78--86.43",
   "lat": 43.78,
   "lon": -86.43,
   "zip": "",
   "city": "Pentwater",
   "date": "2026-04-02",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Pentwater, MI. Peak gust: 51 mph. Mesonet station DW7500 Pentwater.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-03T03:00:00Z-wind-43.74--86.36",
   "lat": 43.74,
   "lon": -86.36,
   "zip": "",
   "city": "1 WSW Weare",
   "date": "2026-04-02",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 WSW Weare, MI. Peak gust: 51 mph. Mesonet station MIWCT Hart [10m].",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-03T02:38:00Z-wind-43.97--86.40",
   "lat": 43.97,
   "lon": -86.4,
   "zip": "",
   "city": "2 ENE Ludington",
   "date": "2026-04-02",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 ENE Ludington, MI. Peak gust: 54 mph. AWOS station KLDM Ludington Mason County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-03T02:52:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-04-02",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-04-03T02:42:00Z-wind-43.95--86.44",
   "lat": 43.95,
   "lon": -86.44,
   "zip": "",
   "city": "1 S Ludington",
   "date": "2026-04-02",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 1 S Ludington, MI. Peak gust: 63 mph. Buoy station LDTM4 Ludington.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-27-2026-04-02-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 50 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #27 (50 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-27"
  },
  {
   "id": "ww-GRR-SV-W-27-2026-04-02-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 50 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #27 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-27"
  },
  {
   "id": "ww-GRR-SV-W-27-2026-04-02-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 50 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #27 (50 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-27"
  },
  {
   "id": "ww-GRR-SV-W-27-2026-04-02-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 50 min. Counties: Kalamazoo, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #27 (50 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-27"
  },
  {
   "id": "ww-GRR-SV-W-28-2026-04-02-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 38 min. Counties: Barry, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #28 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-28"
  },
  {
   "id": "ww-GRR-SV-W-28-2026-04-02-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 38 min. Counties: Barry, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #28 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-28"
  },
  {
   "id": "ww-GRR-SV-W-28-2026-04-02-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 38 min. Counties: Barry, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #28 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-28"
  },
  {
   "id": "ww-GRR-SV-W-28-2026-04-02-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 38 min. Counties: Barry, Allegan. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #28 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-28"
  },
  {
   "id": "ww-GRR-SV-W-26-2026-04-02-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 23 min. Counties: Allegan, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #26 (23 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-26"
  },
  {
   "id": "ww-GRR-SV-W-26-2026-04-02-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 23 min. Counties: Allegan, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #26 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-26"
  },
  {
   "id": "ww-GRR-SV-W-26-2026-04-02-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 23 min. Counties: Allegan, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #26 (23 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-26"
  },
  {
   "id": "ww-GRR-SV-W-26-2026-04-02-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 23 min. Counties: Allegan, Van Buren. Storm tags: wind: 70.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #26 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-26"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-GRR-SV-W-29-2026-04-02-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-04-02. Duration: 30 min. Counties: Barry, Calhoun, Eaton. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #29 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-29"
  },
  {
   "id": "ww-IWX-SV-W-72-2026-04-02-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-02. Duration: 43 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #72 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-72"
  },
  {
   "id": "ww-IWX-SV-W-72-2026-04-02-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-04-02",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-04-02. Duration: 43 min. Counties: Cass, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #72 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-72"
  },
  {
   "id": "iem-ww-IWX-SV-W-72-St. Joseph-wind-2026-04-02",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-02",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-72"
  },
  {
   "id": "iem-ww-IWX-SV-W-72-St. Joseph-hail-2026-04-02",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-02",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-72"
  },
  {
   "id": "iem-ww-GRR-TO-W-2-Van Buren-tornado-2026-04-02",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Van Buren.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-2"
  },
  {
   "id": "iem-ww-GRR-TO-W-2-Kalamazoo-tornado-2026-04-02",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kalamazoo.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-2"
  },
  {
   "id": "iem-ww-IWX-TO-W-20-Cass-tornado-2026-04-02",
   "zip": "",
   "city": "Cass",
   "date": "2026-04-02",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-20"
  },
  {
   "id": "iem-ww-IWX-TO-W-20-St. Joseph-tornado-2026-04-02",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-04-02",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-20"
  },
  {
   "id": "iem-ww-GRR-TO-W-4-Calhoun-tornado-2026-04-02",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-04-02",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Calhoun.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-4"
  },
  {
   "id": "iem-ww-GRR-TO-W-4-Kalamazoo-tornado-2026-04-02",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kalamazoo.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-4"
  },
  {
   "id": "iem-ww-GRR-TO-W-5-Kalamazoo-tornado-2026-04-02",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kalamazoo.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-5"
  },
  {
   "id": "iem-ww-GRR-TO-W-5-Calhoun-tornado-2026-04-02",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-04-02",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Calhoun.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-5"
  },
  {
   "id": "iem-ww-GRR-TO-W-3-Kalamazoo-tornado-2026-04-02",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2026-04-02",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Kalamazoo.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-3"
  },
  {
   "id": "iem-ww-GRR-TO-W-3-Van Buren-tornado-2026-04-02",
   "zip": "",
   "city": "Van Buren",
   "date": "2026-04-02",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Van Buren.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-3"
  },
  {
   "id": "sps-2026-04-02-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2026-04-02",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-02-lenawee-wind",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-04-02",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lenawee — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-02-oceana-wind",
   "zip": "",
   "city": "Oceana",
   "date": "2026-04-02",
   "county": "Oceana",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oceana — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-04-02-lake-wind",
   "zip": "",
   "city": "Lake",
   "date": "2026-04-02",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1328583-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "PLEASANTON",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo of hail up to around penny size near Bear Lake, MI.",
   "sourceDetail": "Verified by Public — NCEI Event #1328583",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1328589-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "SHERMAN",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo from social media of hail up to ping-pong ball size in Mesick. Additional reports from the Mesick area of accumulating hail mixed with large hailstones.",
   "sourceDetail": "Verified by Public — NCEI Event #1328589",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.5
  },
  {
   "id": "ncei-1328563-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "MEAUWATAKA",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo of several quarter sized hailstones near the intersection of north 25 Rd and west 18 1/2 Rd east of Mesick.",
   "sourceDetail": "Verified by Public — NCEI Event #1328563",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1328594-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "BUCKEYE",
   "date": "2026-03-31",
   "county": "Gladwin",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Accumulating hail up to the size of pennies.",
   "sourceDetail": "Verified by Public — NCEI Event #1328594",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603310604-hail-44.33--85.21",
   "lat": 44.33,
   "lon": -85.21,
   "zip": "",
   "city": "Lake City",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Lake City, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1328584-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "PLEASANTON",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A second round brought accumulating hail of around the size of quarters.",
   "sourceDetail": "Verified by Public — NCEI Event #1328584",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310610-hail-44.11--86.22",
   "lat": 44.11,
   "lon": -86.22,
   "zip": "",
   "city": "Freesoil",
   "date": "2026-03-31",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Freesoil, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202603310640-hail-44.04--85.68",
   "lat": 44.04,
   "lon": -85.68,
   "zip": "",
   "city": "Luther",
   "date": "2026-03-31",
   "county": "Lake",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Luther, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310640-hail-44.10--85.46",
   "lat": 44.1,
   "lon": -85.46,
   "zip": "",
   "city": "Tustin",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Tustin, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310640-hail-44.30--84.76",
   "lat": 44.3,
   "lon": -84.76,
   "zip": "",
   "city": "Houghton Lake",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Houghton Lake, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1328580-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "WELLSTON",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Trained spotter reported accumulating hail up to 0.80 inches in diameter.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1328580",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.8
  },
  {
   "id": "ncei-1328591-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "COMINS",
   "date": "2026-03-31",
   "county": "Oscoda",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Hail up to the size of nickels in the Comins/Fairview area.",
   "sourceDetail": "Verified by Public — NCEI Event #1328591",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.88
  },
  {
   "id": "ncei-1327156-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "CHARLESWORTH",
   "date": "2026-03-31",
   "county": "Eaton",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327156",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310850-hail-42.44--84.56",
   "lat": 42.44,
   "lon": -84.56,
   "zip": "",
   "city": "Onondaga",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Onondaga, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310436-hail-44.19--85.21",
   "lat": 44.19,
   "lon": -85.21,
   "zip": "",
   "city": "Mcbain",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Mcbain, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202603310523-hail-44.40--85.72",
   "lat": 44.4,
   "lon": -85.72,
   "zip": "",
   "city": "Mesick",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Mesick, MI. Hail size: 1\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310527-hail-44.41--85.71",
   "lat": 44.41,
   "lon": -85.71,
   "zip": "",
   "city": "Mesick",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Mesick, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202603310838-hail-42.46--84.66",
   "lat": 42.46,
   "lon": -84.66,
   "zip": "",
   "city": "3 S Eaton Rapids",
   "date": "2026-03-31",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 S Eaton Rapids, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603310855-hail-42.44--84.46",
   "lat": 42.44,
   "lon": -84.46,
   "zip": "",
   "city": "2 WSW Leslie",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 WSW Leslie, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-lsr-2026-03-31-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-03-31",
   "county": "Oakland",
   "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 via KPTK ASOS.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-03-31",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-03-31",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-31-wind-42.88--85.51",
   "lat": 42.88,
   "lon": -85.51,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-31",
   "county": "Kent",
   "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 2 SSW Cascade",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-31-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-31",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603312222-wind-42.66--83.41",
   "lat": 42.66,
   "lon": -83.41,
   "zip": "",
   "city": "Oakland County Intl Air",
   "date": "2026-03-31",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Oakland County Intl Air, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603310525-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-03-31",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603310550-wind-42.88--85.51",
   "lat": 42.88,
   "lon": -85.51,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-31",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603310825-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-31",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-31T06:57:00Z-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-03-31",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 51 mph. AWOS station KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-31T04:41:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-31",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 52 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-31T09:38:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-31",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 53 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-31T09:02:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-03-31",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 55 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-31T06:09:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-31",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 56 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-4-2026-03-31-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. Counties: Missaukee, Wexford. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #4 (15 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-4"
  },
  {
   "id": "ww-APX-SV-W-4-2026-03-31-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. Counties: Missaukee, Wexford. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #4 (15 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-4"
  },
  {
   "id": "ww-APX-SV-W-4-2026-03-31-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. Counties: Missaukee, Wexford. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #4 (15 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-4"
  },
  {
   "id": "ww-APX-SV-W-4-2026-03-31-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. Counties: Missaukee, Wexford. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #4 (15 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-4"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Iosco-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Iosco-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Iosco",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Ogemaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Ogemaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ogemaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-13-2026-03-31-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 29 min. Counties: Gladwin, Roscommon, Arenac, Iosco, Ogemaw. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #13 (29 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-13"
  },
  {
   "id": "ww-APX-SV-W-8-2026-03-31-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Manistee, Wexford. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #8 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-8"
  },
  {
   "id": "ww-APX-SV-W-8-2026-03-31-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Manistee, Wexford. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #8 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-8"
  },
  {
   "id": "ww-APX-SV-W-8-2026-03-31-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Manistee, Wexford. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #8 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-8"
  },
  {
   "id": "ww-APX-SV-W-8-2026-03-31-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Manistee, Wexford. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #8 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-8"
  },
  {
   "id": "ww-APX-SV-W-9-2026-03-31-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 32 min. Counties: Wexford, Missaukee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #9 (32 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-9"
  },
  {
   "id": "ww-APX-SV-W-9-2026-03-31-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 32 min. Counties: Wexford, Missaukee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #9 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "APX-SV-W-9"
  },
  {
   "id": "ww-APX-SV-W-9-2026-03-31-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 32 min. Counties: Wexford, Missaukee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #9 (32 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-9"
  },
  {
   "id": "ww-APX-SV-W-9-2026-03-31-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 32 min. Counties: Wexford, Missaukee. Storm tags: wind: 50.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #9 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "APX-SV-W-9"
  },
  {
   "id": "ww-GRR-SV-W-24-2026-03-31-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 42 min. County: Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #24 (42 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-24"
  },
  {
   "id": "ww-GRR-SV-W-24-2026-03-31-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 42 min. County: Clare. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #24 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-24"
  },
  {
   "id": "ww-GRR-SV-W-20-2026-03-31-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #20 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-20"
  },
  {
   "id": "ww-GRR-SV-W-20-2026-03-31-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #20 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-20"
  },
  {
   "id": "ww-GRR-SV-W-20-2026-03-31-Osceola-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #20 (53 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-20"
  },
  {
   "id": "ww-GRR-SV-W-20-2026-03-31-Osceola-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 53 min. Counties: Clare, Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #20 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-20"
  },
  {
   "id": "ww-APX-SV-W-11-2026-03-31-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #11 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-11"
  },
  {
   "id": "ww-APX-SV-W-11-2026-03-31-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #11 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-11"
  },
  {
   "id": "ww-APX-SV-W-11-2026-03-31-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #11 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-11"
  },
  {
   "id": "ww-APX-SV-W-11-2026-03-31-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #11 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-23-2026-03-31-Osceola-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 40 min. County: Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #23 (40 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-23"
  },
  {
   "id": "ww-GRR-SV-W-23-2026-03-31-Osceola-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 40 min. County: Osceola. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #23 (40 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-23"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Wexford-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Wexford-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Wexford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Benzie-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Benzie-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Benzie",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Grand Traverse-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Grand Traverse-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Grand Traverse",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-APX-SV-W-10-2026-03-31-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 30 min. Counties: Wexford, Benzie, Grand Traverse, Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #10 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-10"
  },
  {
   "id": "ww-GRR-SV-W-22-2026-03-31-Lake-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 32 min. County: Lake. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #22 (32 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-22"
  },
  {
   "id": "ww-GRR-SV-W-22-2026-03-31-Lake-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 32 min. County: Lake. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #22 (32 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-22"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-25-2026-03-31-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 38 min. Counties: Eaton, Ingham, Jackson. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #25 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-25"
  },
  {
   "id": "ww-GRR-SV-W-21-2026-03-31-Mason-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 41 min. County: Mason. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #21 (41 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-21"
  },
  {
   "id": "ww-GRR-SV-W-21-2026-03-31-Mason-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Mason",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-31. Duration: 41 min. County: Mason. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #21 (41 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-21"
  },
  {
   "id": "ww-APX-SV-W-6-2026-03-31-Missaukee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 39 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #6 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-6"
  },
  {
   "id": "ww-APX-SV-W-6-2026-03-31-Missaukee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 39 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #6 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-6"
  },
  {
   "id": "ww-APX-SV-W-6-2026-03-31-Roscommon-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 39 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #6 (39 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-6"
  },
  {
   "id": "ww-APX-SV-W-6-2026-03-31-Roscommon-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 39 min. Counties: Missaukee, Roscommon. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #6 (39 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-6"
  },
  {
   "id": "ww-APX-SV-W-7-2026-03-31-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 35 min. County: Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #7 (35 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-7"
  },
  {
   "id": "ww-APX-SV-W-7-2026-03-31-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 35 min. County: Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #7 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-7"
  },
  {
   "id": "ww-IWX-SV-W-59-2026-03-31-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-31. Duration: 24 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #59 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-59"
  },
  {
   "id": "ww-IWX-SV-W-59-2026-03-31-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-31. Duration: 24 min. County: Berrien. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #59 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-12-2026-03-31-Manistee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 24 min. County: Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #12 (24 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-12"
  },
  {
   "id": "ww-APX-SV-W-12-2026-03-31-Manistee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 24 min. County: Manistee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #12 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-12"
  },
  {
   "id": "ww-APX-SV-W-5-2026-03-31-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. County: Arenac. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #5 (15 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-5"
  },
  {
   "id": "ww-APX-SV-W-5-2026-03-31-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-31. Duration: 15 min. County: Arenac. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #5 (15 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-5"
  },
  {
   "id": "ww-APX-FL-W-3-2026-03-31-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-03-31",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-03-31. Duration: 1747 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #3 (1747 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-3"
  },
  {
   "id": "asos-bf-LAN-2026-03-31",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-03-31",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-03-31",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-03-31",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2026-03-31",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-03-31",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-03-31",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-03-31",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-03-31",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-03-31",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1328577-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "LAKE CITY",
   "date": "2026-03-31",
   "county": "Missaukee",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Quarter sized hail fell again in the Lake City area.",
   "sourceDetail": "Verified by Public — NCEI Event #1328577",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327159-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "FREESOIL",
   "date": "2026-03-31",
   "county": "Mason",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327159",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1327157-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "LUTHER",
   "date": "2026-03-31",
   "county": "Lake",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327157",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327158-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "TUSTIN",
   "date": "2026-03-31",
   "county": "Osceola",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327158",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1328562-2026-03-31",
   "lon": 212411,
   "zip": "",
   "city": "HOUGHTON LAKE",
   "date": "2026-03-31",
   "county": "Roscommon",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Accumulating quarter size hail, with hailstones up to the size of half-dollars.",
   "sourceDetail": "Verified by Public — NCEI Event #1328562",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1327155-2026-03-31",
   "lon": 212247,
   "zip": "",
   "city": "ONONDAGA",
   "date": "2026-03-31",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327155",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-03-31-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-03-31",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Huron — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-midland-hail",
   "zip": "",
   "city": "Midland",
   "date": "2026-03-31",
   "county": "Midland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Midland — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-crawford-hail",
   "zip": "",
   "city": "Crawford",
   "date": "2026-03-31",
   "county": "Crawford",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Crawford — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-manistee-hail",
   "zip": "",
   "city": "Manistee",
   "date": "2026-03-31",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Manistee — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-gladwin-hail",
   "zip": "",
   "city": "Gladwin",
   "date": "2026-03-31",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-bay-hail",
   "zip": "",
   "city": "Bay",
   "date": "2026-03-31",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-03-31",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-menominee-hail",
   "zip": "",
   "city": "Menominee",
   "date": "2026-03-31",
   "county": "Menominee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Menominee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-03-31",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for St. Clair — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-mason-hail",
   "zip": "",
   "city": "Mason",
   "date": "2026-03-31",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-benzie-wind",
   "zip": "",
   "city": "Benzie",
   "date": "2026-03-31",
   "county": "Benzie",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Benzie — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-mecosta-hail",
   "zip": "",
   "city": "Mecosta",
   "date": "2026-03-31",
   "county": "Mecosta",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Mecosta — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2026-03-31",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-lake-hail",
   "zip": "",
   "city": "Lake",
   "date": "2026-03-31",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-03-31",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-sanilac-wind",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-03-31",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2026-03-31",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-03-31",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-31-macomb-wind",
   "zip": "",
   "city": "Macomb",
   "date": "2026-03-31",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1328561-2026-03-30",
   "lon": 212411,
   "zip": "",
   "city": "TRAVERSE CITY",
   "date": "2026-03-30",
   "county": "Grand Traverse",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Hail from half-inch up to penny size near Traverse City West Senior High in Traverse City, MI.",
   "sourceDetail": "Verified by Public — NCEI Event #1328561",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1328579-2026-03-30",
   "lon": 212411,
   "zip": "",
   "city": "BELLAIRE ANTRIM ARPT",
   "date": "2026-03-30",
   "county": "Antrim",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Penny sized hail reported on M-88 north of Bellaire.",
   "sourceDetail": "Verified by Public — NCEI Event #1328579",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1327160-2026-03-30",
   "lon": 212247,
   "zip": "",
   "city": "LITTLE MANISTEE",
   "date": "2026-03-30",
   "county": "Lake",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms brought large hail and damaging winds to parts of lower Michigan on late March 30 into the early hours of March 31.",
   "sourceDetail": "Verified by Public — NCEI Event #1327160",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1328576-2026-03-30",
   "lon": 212411,
   "zip": "",
   "city": "LAKE CITY",
   "date": "2026-03-30",
   "county": "Missaukee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Penny size hail near Lake City in Missaukee county.",
   "sourceDetail": "Verified by Public — NCEI Event #1328576",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1328575-2026-03-30",
   "lon": 212411,
   "zip": "",
   "city": "LUCAS",
   "date": "2026-03-30",
   "county": "Missaukee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Hail up to the size of nickels near McBain in southwestern Missaukee county.",
   "sourceDetail": "Verified by Public — NCEI Event #1328575",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202603310357-hail-45.00--85.21",
   "lat": 45,
   "lon": -85.21,
   "zip": "",
   "city": "2 N Bellaire",
   "date": "2026-03-30",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 N Bellaire, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603310359-hail-44.13--85.78",
   "lat": 44.13,
   "lon": -85.78,
   "zip": "",
   "city": "7 E Irons",
   "date": "2026-03-30",
   "county": "Lake",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 7 E Irons, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-03-31T03:56:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-30",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-19-2026-03-30-Lake-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-30. Duration: 23 min. County: Lake. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #19 (23 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-19"
  },
  {
   "id": "ww-GRR-SV-W-19-2026-03-30-Lake-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Lake",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-30. Duration: 23 min. County: Lake. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #19 (23 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-19"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-APX-SV-W-3-2026-03-30-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 38 min. Counties: Antrim, Crawford, Kalkaska. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #3 (38 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-3"
  },
  {
   "id": "ww-GRR-SV-W-18-2026-03-30-Clare-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-30. Duration: 17 min. County: Clare. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #18 (17 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-18"
  },
  {
   "id": "ww-GRR-SV-W-18-2026-03-30-Clare-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Clare",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-30. Duration: 17 min. County: Clare. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #18 (17 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-18"
  },
  {
   "id": "ww-APX-SV-W-1-2026-03-30-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 27 min. County: Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #1 (27 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-1"
  },
  {
   "id": "ww-APX-SV-W-1-2026-03-30-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 27 min. County: Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #1 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-1"
  },
  {
   "id": "ww-APX-SV-W-2-2026-03-30-Arenac-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 13 min. Counties: Arenac, Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #2 (13 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-2"
  },
  {
   "id": "ww-APX-SV-W-2-2026-03-30-Arenac-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 13 min. Counties: Arenac, Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #2 (13 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-2"
  },
  {
   "id": "ww-APX-SV-W-2-2026-03-30-Gladwin-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 13 min. Counties: Arenac, Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #2 (13 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-2"
  },
  {
   "id": "ww-APX-SV-W-2-2026-03-30-Gladwin-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-30",
   "county": "Gladwin",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2026-03-30. Duration: 13 min. Counties: Arenac, Gladwin. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #2 (13 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "APX-SV-W-2"
  },
  {
   "id": "asos-bf-BEH-2026-03-30",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-03-30",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-03-30-missaukee-hail",
   "zip": "",
   "city": "Missaukee",
   "date": "2026-03-30",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Missaukee — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-30-grandtrave-hail",
   "zip": "",
   "city": "Grand Traverse",
   "date": "2026-03-30",
   "county": "Grand Traverse",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Grand Traverse — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-30-roscommon-hail",
   "zip": "",
   "city": "Roscommon",
   "date": "2026-03-30",
   "county": "Roscommon",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Roscommon — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-30-arenac-hail",
   "zip": "",
   "city": "Arenac",
   "date": "2026-03-30",
   "county": "Arenac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Arenac — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1320163-2026-03-26",
   "lon": 211319,
   "zip": "",
   "city": "BLISSFIELD BETZ ARPT",
   "date": "2026-03-26",
   "county": "Lenawee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms produced hail over parts of Lenawee and Monroe counties, up to 1 inch in diameter.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1320163",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1320166-2026-03-26",
   "lon": 211319,
   "zip": "",
   "city": "OTTAWA LAKE",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms produced hail over parts of Lenawee and Monroe counties, up to 1 inch in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1320166",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1320164-2026-03-26",
   "lon": 211319,
   "zip": "",
   "city": "LAMBERTVILLE",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms produced hail over parts of Lenawee and Monroe counties, up to 1 inch in diameter.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1320164",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603262329-hail-41.79--83.50",
   "lat": 41.79,
   "lon": -83.5,
   "zip": "",
   "city": "Erie",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Erie, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603262332-hail-41.81--83.44",
   "lat": 41.81,
   "lon": -83.44,
   "zip": "",
   "city": "Luna Pier",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Luna Pier, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603262210-hail-42.15--85.08",
   "lat": 42.15,
   "lon": -85.08,
   "zip": "",
   "city": "3 N Burlington",
   "date": "2026-03-26",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 N Burlington, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-03-26-hail-41.94--85.64",
   "lat": 41.94,
   "lon": -85.64,
   "zip": "",
   "city": "1 W Three Rivers",
   "date": "2026-03-26",
   "county": "St. Joseph",
   "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 IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603262309-hail-41.84--83.88",
   "lat": 41.84,
   "lon": -83.88,
   "zip": "",
   "city": "1 NW Blissfield",
   "date": "2026-03-26",
   "county": "Lenawee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NW Blissfield, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603262317-hail-41.81--83.73",
   "lat": 41.81,
   "lon": -83.73,
   "zip": "",
   "city": "3 N Ottawa Lake",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 N Ottawa Lake, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603262322-hail-41.78--83.64",
   "lat": 41.78,
   "lon": -83.64,
   "zip": "",
   "city": "3 N Lambertville",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 N Lambertville, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-DTX-SV-W-5-2026-03-26-Lenawee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-26",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-26. Duration: 31 min. County: Lenawee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #5 (31 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-5"
  },
  {
   "id": "ww-DTX-SV-W-5-2026-03-26-Lenawee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-26",
   "county": "Lenawee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-26. Duration: 31 min. County: Lenawee. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #5 (31 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-5"
  },
  {
   "id": "ww-DTX-SV-W-6-2026-03-26-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-26. Duration: 28 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #6 (28 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-6"
  },
  {
   "id": "ww-DTX-SV-W-6-2026-03-26-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-26. Duration: 28 min. County: Monroe. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #6 (28 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-6"
  },
  {
   "id": "ncei-1320165-2026-03-26",
   "lon": 211319,
   "zip": "",
   "city": "ERIE",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms produced hail over parts of Lenawee and Monroe counties, up to 1 inch in diameter.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1320165",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1326766-2026-03-26",
   "lon": 211319,
   "zip": "",
   "city": "LUNA PIER",
   "date": "2026-03-26",
   "county": "Monroe",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms produced hail over parts of Lenawee and Monroe counties, up to 1 inch in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1326766",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-03-26-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-03-26",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ww-GRR-FL-W-5-2026-03-17-Newaygo",
   "zip": "",
   "city": "",
   "date": "2026-03-17",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-03-17. Duration: 2880 min. County: Newaygo. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #5 (2880 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-5"
  },
  {
   "id": "asos-bf-P58-2026-03-17",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2026-03-17",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-03-16",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-03-16",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-03-16",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-03-16",
   "county": "Alger",
   "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 station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-16",
   "county": "Jackson",
   "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 KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-03-16",
   "county": "Mason",
   "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": "Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-SAW-2026-03-16",
   "lat": 46.3536,
   "lon": -87.3954,
   "zip": "",
   "city": "GWINN/SAWYER AFB",
   "date": "2026-03-16",
   "county": "Marquette",
   "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": "GWINN/SAWYER AFB (SAW) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GWINN/SAWYER AFB (SAW) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2026-03-16",
   "county": "Delta",
   "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": "Mesonet station HBRM4 High Bridge RAWS.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-03-16",
   "county": "Allegan",
   "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 KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2026-03-16",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-03-16",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-03-16",
   "county": "Grand Traverse",
   "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 KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603160445-wind-42.24--83.53",
   "lat": 42.24,
   "lon": -83.53,
   "zip": "",
   "city": "Willow Run Airport",
   "date": "2026-03-16",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Willow Run Airport, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603160842-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-03-16",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161011-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-03-16",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161121-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-16",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161140-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-03-16",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161147-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2026-03-16",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161223-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2026-03-16",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 NNE Chicago Lake, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161456-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-03-16",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161740-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2026-03-16",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603161924-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-03-16",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603162023-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2026-03-16",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 NNE Chicago Lake, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603162331-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-03-16",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T21:35:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2026-03-16",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 51 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T23:52:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2026-03-16",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 52 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-17T00:35:00Z-wind-44.97--85.38",
   "lat": 44.97,
   "lon": -85.38,
   "zip": "",
   "city": "3 NNW Kewadin",
   "date": "2026-03-16",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNW Kewadin, MI. Peak gust: 52 mph. Mesonet station DVI02572 Elk Rapids.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T22:33:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2026-03-16",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 56 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T08:02:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-16",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 54 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T13:48:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-16",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 54 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T14:36:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-03-16",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 56 mph. Mesonet station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T17:45:00Z-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-03-16",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 56 mph. Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T13:15:00Z-wind-45.97--86.17",
   "lat": 45.97,
   "lon": -86.17,
   "zip": "",
   "city": "4 E Manistique",
   "date": "2026-03-16",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Manistique, MI. Peak gust: 51 mph. AWOS station KISQ Schoolcraft Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T20:13:00Z-wind-46.49--86.13",
   "lat": 46.49,
   "lon": -86.13,
   "zip": "",
   "city": "6 ENE Cusino Lake",
   "date": "2026-03-16",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 ENE Cusino Lake, MI. Peak gust: 51 mph. Mesonet station STYM4 Stanley.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T14:03:00Z-wind-46.53--87.55",
   "lat": 46.53,
   "lon": -87.55,
   "zip": "",
   "city": "4 NE Negaunee",
   "date": "2026-03-16",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NE Negaunee, MI. Peak gust: 52 mph. Mesonet station CW4331 WFO-Negaunee Township.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T12:00:00Z-wind-46.31--85.65",
   "lat": 46.31,
   "lon": -85.65,
   "zip": "",
   "city": "3 SE McMillan",
   "date": "2026-03-16",
   "county": "Luce",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE McMillan, MI. Peak gust: 53 mph. Mesonet station MIMML McMillan (MAWN).",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T20:09:00Z-wind-45.75--87.08",
   "lat": 45.75,
   "lon": -87.08,
   "zip": "",
   "city": "Escanaba",
   "date": "2026-03-16",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Escanaba, MI. Peak gust: 53 mph. AWOS station KESC Delta Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T20:12:00Z-wind-45.88--87.49",
   "lat": 45.88,
   "lon": -87.49,
   "zip": "",
   "city": "1 WNW La Branche",
   "date": "2026-03-16",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW La Branche, MI. Peak gust: 53 mph. Mesonet station LBRM4 La Branche RAWS.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T20:27:00Z-wind-45.12--87.62",
   "lat": 45.12,
   "lon": -87.62,
   "zip": "",
   "city": "Menominee",
   "date": "2026-03-16",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Menominee, MI. Peak gust: 53 mph. AWOS station KMNM Menominee Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T11:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-03-16",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 54 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T14:35:00Z-wind-45.97--86.17",
   "lat": 45.97,
   "lon": -86.17,
   "zip": "",
   "city": "4 E Manistique",
   "date": "2026-03-16",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Manistique, MI. Peak gust: 54 mph. AWOS station KISQ Schoolcraft Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T13:32:00Z-wind-46.25--86.71",
   "lat": 46.25,
   "lon": -86.71,
   "zip": "",
   "city": "7 NNE Round Lake",
   "date": "2026-03-16",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 7 NNE Round Lake, MI. Peak gust: 55 mph. Mesonet station DOEM4 Doe Lake RAWS.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T18:55:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-03-16",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 55 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T16:12:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2026-03-16",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 56 mph. GLOS Weather Station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-IWX-SV-W-41-2026-03-16-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-16",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-16. Duration: 35 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #41 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-41"
  },
  {
   "id": "ww-IWX-SV-W-41-2026-03-16-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-16",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-16. Duration: 35 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #41 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-41"
  },
  {
   "id": "ww-APX-FL-W-2-2026-03-16-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-03-16",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-03-16. Duration: 1365 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #2 (1365 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-2"
  },
  {
   "id": "ww-GRR-FL-W-4-2026-03-16-Kent",
   "zip": "",
   "city": "",
   "date": "2026-03-16",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-03-16. Duration: 6265 min. County: Kent. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #4 (6265 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-4"
  },
  {
   "id": "asos-bf-PTK-2026-03-16",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-03-16",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-03-16",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-03-16",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-03-16",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-03-16",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-03-16",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-03-16",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CFS-2026-03-16",
   "lat": 43.4588,
   "lon": -83.4454,
   "zip": "",
   "city": "Caro",
   "date": "2026-03-16",
   "county": "Tuscola",
   "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": "Caro (CFS) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Caro (CFS) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-03-16",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-03-16",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-03-16",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-03-16",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-03-16",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-03-16",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-03-16",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-03-16",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2026-03-16",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-03-16",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2026-03-16",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-03-16",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-16-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2026-03-16",
   "county": "Delta",
   "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": "Mesonet station HBRM4 High Bridge RAWS.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-15-wind-41.87--84.08",
   "lat": 41.87,
   "lon": -84.08,
   "zip": "",
   "city": "Lenawee County Airport",
   "date": "2026-03-15",
   "county": "Lenawee",
   "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 KADG ASOS.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-15-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-15",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603152116-wind-41.87--84.08",
   "lat": 41.87,
   "lon": -84.08,
   "zip": "",
   "city": "Lenawee County Airport",
   "date": "2026-03-15",
   "county": "Lenawee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Lenawee County Airport, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603160356-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-15",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-15T15:37:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-03-15",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 51 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-15T16:57:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-03-15",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 51 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-15T17:49:00Z-wind-45.65--84.52",
   "lat": 45.65,
   "lon": -84.52,
   "zip": "",
   "city": "2 WNW Cheboygan",
   "date": "2026-03-15",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Cheboygan, MI. Peak gust: 51 mph. AWOS station KSLH Cheboygan - Cheboygan County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-15T19:38:00Z-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2026-03-15",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Rogers City, MI. Peak gust: 51 mph. AWOS station KPZQ Rogers City - Presque Isle County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-15T14:31:00Z-wind-44.38--83.60",
   "lat": 44.38,
   "lon": -83.6,
   "zip": "",
   "city": "4 S Sid Town",
   "date": "2026-03-15",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Sid Town, MI. Peak gust: 53 mph. Mesonet station SCKM4 Silver Creek.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-16T02:49:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-03-15",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 54 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-IWX-SV-W-38-2026-03-15-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 21 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #38 (21 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-38"
  },
  {
   "id": "ww-IWX-SV-W-38-2026-03-15-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 21 min. Counties: Branch, St. Joseph. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #38 (21 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-38"
  },
  {
   "id": "iem-ww-IWX-SV-W-38-St. Joseph-wind-2026-03-15",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-15",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-38"
  },
  {
   "id": "iem-ww-IWX-SV-W-38-St. Joseph-hail-2026-03-15",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-15",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-38"
  },
  {
   "id": "ww-IWX-SV-W-39-2026-03-15-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 24 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #39 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-39"
  },
  {
   "id": "ww-IWX-SV-W-39-2026-03-15-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 24 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #39 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-39"
  },
  {
   "id": "ww-IWX-SV-W-39-2026-03-15-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 24 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #39 (24 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-39"
  },
  {
   "id": "ww-IWX-SV-W-39-2026-03-15-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-15",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-15. Duration: 24 min. Counties: Branch, Hillsdale. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #39 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-39"
  },
  {
   "id": "asos-bf-YIP-2026-03-15",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-03-15",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-03-15",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-03-15",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ERY-2026-03-15",
   "lat": 46.3111,
   "lon": -85.4572,
   "zip": "",
   "city": "NEWBERRY",
   "date": "2026-03-15",
   "county": "Luce",
   "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": "NEWBERRY (ERY) recorded a 93 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — NEWBERRY (ERY) [365d backfill 2026-08]",
   "windSpeedMph": 93,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-03-15",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-03-15",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-03-15",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-03-15",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-03-15",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-03-15",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P59-2026-03-15",
   "lat": 47.4674,
   "lon": -87.8751,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-03-15",
   "county": "Keweenaw",
   "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": "Copper Harbor (P59) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Copper Harbor (P59) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-AZO-2026-03-15",
   "lat": 42.2347,
   "lon": -85.5519,
   "zip": "",
   "city": "KALAMAZOO",
   "date": "2026-03-15",
   "county": "Kalamazoo",
   "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": "KALAMAZOO (AZO) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — KALAMAZOO (AZO) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MGN-2026-03-15",
   "lat": 45.4256,
   "lon": -84.9134,
   "zip": "",
   "city": "HARBOR SPRINGS",
   "date": "2026-03-15",
   "county": "Emmet",
   "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": "HARBOR SPRINGS (MGN) recorded a 68 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HARBOR SPRINGS (MGN) [365d backfill 2026-08]",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ADG-2026-03-15",
   "lat": 41.8677,
   "lon": -84.0773,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-03-15",
   "county": "Fulton",
   "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": "ADRIAN (ADG) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ADRIAN (ADG) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-03-15",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-03-15",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-03-15-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-03-15",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-DET-2026-03-14",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-03-14",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1320192-2026-03-13",
   "lon": 211320,
   "zip": "",
   "city": "Lapeer",
   "date": "2026-03-13",
   "county": "Lapeer",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An intense low-pressure system tracking through the northern Great Lakes brought damaging winds of 50 to 71 mph to much of southeast Michigan. The strongest gusts were concentrated along and south of the M-59 corridor, where numerous trees and power lines were downed across the Detroit Metro area. Both Detroit City Airport and Ann Arbor Airport recorded peak gusts of 71 mph during the height of the storm. The most intense winds occurred in the afternoon following the passage of a strong cold front, leaving around 200,000 DTE Energy customers without power at the peak of the event. Tragically, the storm claimed the life of a Huntington Woods public works employee, who was struck by a falling tree limb while working to clear a roadway during the evening hours.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1320192",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1320193-2026-03-13",
   "lon": 211320,
   "zip": "",
   "city": "St. Clair",
   "date": "2026-03-13",
   "county": "St. Clair",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An intense low-pressure system tracking through the northern Great Lakes brought damaging winds of 50 to 71 mph to much of southeast Michigan. The strongest gusts were concentrated along and south of the M-59 corridor, where numerous trees and power lines were downed across the Detroit Metro area. Both Detroit City Airport and Ann Arbor Airport recorded peak gusts of 71 mph during the height of the storm. The most intense winds occurred in the afternoon following the passage of a strong cold front, leaving around 200,000 DTE Energy customers without power at the peak of the event. Tragically, the storm claimed the life of a Huntington Woods public works employee, who was struck by a falling tree limb while working to clear a roadway during the evening hours.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1320193",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1324503-2026-03-13",
   "lon": 211320,
   "zip": "",
   "city": "Sanilac",
   "date": "2026-03-13",
   "county": "Sanilac",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An intense low-pressure system tracking through the northern Great Lakes brought damaging winds of 50 to 71 mph to much of southeast Michigan. The strongest gusts were concentrated along and south of the M-59 corridor, where numerous trees and power lines were downed across the Detroit Metro area. Both Detroit City Airport and Ann Arbor Airport recorded peak gusts of 71 mph during the height of the storm. The most intense winds occurred in the afternoon following the passage of a strong cold front, leaving around 200,000 DTE Energy customers without power at the peak of the event. Tragically, the storm claimed the life of a Huntington Woods public works employee, who was struck by a falling tree limb while working to clear a roadway during the evening hours.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1324503",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1324505-2026-03-13",
   "lon": 211320,
   "zip": "",
   "city": "Tuscola",
   "date": "2026-03-13",
   "county": "Tuscola",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An intense low-pressure system tracking through the northern Great Lakes brought damaging winds of 50 to 71 mph to much of southeast Michigan. The strongest gusts were concentrated along and south of the M-59 corridor, where numerous trees and power lines were downed across the Detroit Metro area. Both Detroit City Airport and Ann Arbor Airport recorded peak gusts of 71 mph during the height of the storm. The most intense winds occurred in the afternoon following the passage of a strong cold front, leaving around 200,000 DTE Energy customers without power at the peak of the event. Tragically, the storm claimed the life of a Huntington Woods public works employee, who was struck by a falling tree limb while working to clear a roadway during the evening hours.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1324505",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1320190-2026-03-13",
   "lon": 211320,
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-03-13",
   "county": "Shiawassee",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "An intense low-pressure system tracking through the northern Great Lakes brought damaging winds of 50 to 71 mph to much of southeast Michigan. The strongest gusts were concentrated along and south of the M-59 corridor, where numerous trees and power lines were downed across the Detroit Metro area. Both Detroit City Airport and Ann Arbor Airport recorded peak gusts of 71 mph during the height of the storm. The most intense winds occurred in the afternoon following the passage of a strong cold front, leaving around 200,000 DTE Energy customers without power at the peak of the event. Tragically, the storm claimed the life of a Huntington Woods public works employee, who was struck by a falling tree limb while working to clear a roadway during the evening hours.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1320190",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2026-03-13",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-03-13",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-03-13",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-03-13",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-03-13",
   "county": "Ottawa",
   "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": "Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-13",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-03-13",
   "county": "Kalamazoo",
   "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 KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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 station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2026-03-13",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2026-03-13",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-13",
   "county": "Berrien",
   "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 station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.80--85.43",
   "lat": 41.8,
   "lon": -85.43,
   "zip": "",
   "city": "1 W Sturgis",
   "date": "2026-03-13",
   "county": "St. Joseph",
   "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 KIRS Sturgis Kirsch.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.67--83.42",
   "lat": 42.67,
   "lon": -83.42,
   "zip": "",
   "city": "1 W WATERFORD",
   "date": "2026-03-13",
   "county": "Oakland",
   "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 KPTK PONTIAC.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "2 WNW Benton Harbor",
   "date": "2026-03-13",
   "county": "Berrien",
   "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": "Mesonet station DVI11762 Saint Joseph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2026-03-13",
   "county": "Schoolcraft",
   "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": "Mesonet station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.65--85.76",
   "lat": 42.65,
   "lon": -85.76,
   "zip": "",
   "city": "2 N Hopkins",
   "date": "2026-03-13",
   "county": "Allegan",
   "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": "Mesonet station AX249 HOPKINS.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.53--85.83",
   "lat": 42.53,
   "lon": -85.83,
   "zip": "",
   "city": "1 ENE Allegan",
   "date": "2026-03-13",
   "county": "Allegan",
   "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": "Mesonet station EW9318 Allegan.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "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 East Grand Rapids",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-03-13",
   "county": "Alpena",
   "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 KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.64--85.68",
   "lat": 42.64,
   "lon": -85.68,
   "zip": "",
   "city": "2 WNW Bradley",
   "date": "2026-03-13",
   "county": "Allegan",
   "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": "Mesonet station CW5467 Hopkins.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-03-13",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2026-03-13",
   "county": "Cheboygan",
   "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": "Buoy station MACM4 Mackinaw City_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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 KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-13",
   "county": "Jackson",
   "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 KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARB-2026-03-13",
   "lat": 42.224,
   "lon": -83.7397,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-03-13",
   "county": "Washtenaw",
   "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": "ANN ARBOR (ARB) recorded a 71 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ANN ARBOR (ARB) [365d backfill 2026-08]",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.23--83.53",
   "lat": 42.23,
   "lon": -83.53,
   "zip": "",
   "city": "3 NW BELLEVILLE",
   "date": "2026-03-13",
   "county": "Wayne",
   "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 STATION KYIP DETROIT WILLOW.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-13",
   "county": "Muskegon",
   "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 station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "2 ENE ROMULUS",
   "date": "2026-03-13",
   "county": "Wayne",
   "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 STATION KDTW DETROIT WAYNE.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.40--83.02",
   "lat": 42.4,
   "lon": -83.02,
   "zip": "",
   "city": "2 SSE NORTHEAST DETROIT",
   "date": "2026-03-13",
   "county": "Wayne",
   "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 STATION KDET DETROIT CITY AIR.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.73--83.65",
   "lat": 41.73,
   "lon": -83.65,
   "zip": "",
   "city": "2 SW LAMBERTVILLE",
   "date": "2026-03-13",
   "county": "Monroe",
   "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 KDUH LAMBERTVILLE.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.87--84.08",
   "lat": 41.87,
   "lon": -84.08,
   "zip": "",
   "city": "3 SW ADRIAN",
   "date": "2026-03-13",
   "county": "Lenawee",
   "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": "AWOS STATION KADG 2 SW ADRIAN.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.92--85.03",
   "lat": 41.92,
   "lon": -85.03,
   "zip": "",
   "city": "2 SW Coldwater",
   "date": "2026-03-13",
   "county": "Branch",
   "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 KOEB Coldwater.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.93--83.42",
   "lat": 41.93,
   "lon": -83.42,
   "zip": "",
   "city": "2 NW MONROE",
   "date": "2026-03-13",
   "county": "Monroe",
   "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": "AWOS STATION KTTF MONROE.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "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 1 SSW East Grand Rapids",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-41.97--85.60",
   "lat": 41.97,
   "lon": -85.6,
   "zip": "",
   "city": "2 SW Fishers Lake",
   "date": "2026-03-13",
   "county": "St. Joseph",
   "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 KHAI Three Rivers.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-03-13",
   "county": "Ionia",
   "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 KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130804-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130813-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130815-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130818-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130830-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-13",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130830-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130845-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-03-13",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603130851-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131016-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131111-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131204-wind-42.67--83.42",
   "lat": 42.67,
   "lon": -83.42,
   "zip": "",
   "city": "1 W WATERFORD",
   "date": "2026-03-13",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W WATERFORD, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131324-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131327-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131335-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "16 W Keeler",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 16 W Keeler, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131336-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2026-03-13",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131340-wind-42.65--85.76",
   "lat": 42.65,
   "lon": -85.76,
   "zip": "",
   "city": "2 N Hopkins",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 N Hopkins, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131350-wind-42.53--85.83",
   "lat": 42.53,
   "lon": -85.83,
   "zip": "",
   "city": "1 ENE Allegan",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Allegan, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131354-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131355-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "2 WNW Benton Harbor",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Benton Harbor, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131357-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near East Grand Rapids, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202603131358-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-03-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131400-wind-42.64--85.68",
   "lat": 42.64,
   "lon": -85.68,
   "zip": "",
   "city": "2 WNW Bradley",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Bradley, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131400-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131424-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2026-03-13",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mackinaw City, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131515-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131534-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-13",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131555-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "2 WNW Benton Harbor",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Benton Harbor, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131601-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131625-wind-42.22--83.74",
   "lat": 42.22,
   "lon": -83.74,
   "zip": "",
   "city": "4 S ANN ARBOR",
   "date": "2026-03-13",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S ANN ARBOR, MI. Peak gust: 82 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 82,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131635-wind-42.23--83.53",
   "lat": 42.23,
   "lon": -83.53,
   "zip": "",
   "city": "3 NW BELLEVILLE",
   "date": "2026-03-13",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NW BELLEVILLE, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131643-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131649-wind-42.23--83.33",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "2 ENE ROMULUS",
   "date": "2026-03-13",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE ROMULUS, MI. Peak gust: 82 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 82,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131658-wind-42.40--83.02",
   "lat": 42.4,
   "lon": -83.02,
   "zip": "",
   "city": "2 SSE NORTHEAST DETROIT",
   "date": "2026-03-13",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE NORTHEAST DETROIT, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS DTX — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131742-wind-41.73--83.65",
   "lat": 41.73,
   "lon": -83.65,
   "zip": "",
   "city": "2 SW LAMBERTVILLE",
   "date": "2026-03-13",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW LAMBERTVILLE, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131750-wind-41.87--84.08",
   "lat": 41.87,
   "lon": -84.08,
   "zip": "",
   "city": "3 SW ADRIAN",
   "date": "2026-03-13",
   "county": "Lenawee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SW ADRIAN, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131751-wind-41.92--85.03",
   "lat": 41.92,
   "lon": -85.03,
   "zip": "",
   "city": "2 SW Coldwater",
   "date": "2026-03-13",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Coldwater, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603131752-wind-41.93--83.42",
   "lat": 41.93,
   "lon": -83.42,
   "zip": "",
   "city": "2 NW MONROE",
   "date": "2026-03-13",
   "county": "Monroe",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NW MONROE, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132013-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW East Grand Rapids, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202603132023-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132041-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-03-13",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132054-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132210-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132222-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-03-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603132237-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW East Grand Rapids, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202603132353-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T20:33:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2026-03-13",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 51 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:43:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-03-13",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 54 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T20:02:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2026-03-13",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 54 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:42:00Z-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2026-03-13",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mackinaw City, MI. Peak gust: 55 mph. Buoy station MACM4 Mackinaw City, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:27:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-03-13",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 51 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T14:00:00Z-wind-43.18--85.74",
   "lat": 43.18,
   "lon": -85.74,
   "zip": "",
   "city": "2 NW Sparta",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NW Sparta, MI. Peak gust: 51 mph. Mesonet station MISPN 2.0 NW Sparta (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T14:10:00Z-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 51 mph. Mesonet station BDLM4 Plainwell.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:35:00Z-wind-42.17--86.13",
   "lat": 42.17,
   "lon": -86.13,
   "zip": "",
   "city": "3 SE Hartford",
   "date": "2026-03-13",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE Hartford, MI. Peak gust: 51 mph. Mesonet station DVI12180 Hartford.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:25:00Z-wind-43.00--86.10",
   "lat": 43,
   "lon": -86.1,
   "zip": "",
   "city": "6 SSW Nunica",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 SSW Nunica, MI. Peak gust: 52 mph. Mesonet station DVI10249 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:40:00Z-wind-43.43--86.00",
   "lat": 43.43,
   "lon": -86,
   "zip": "",
   "city": "1 SSE Reeman",
   "date": "2026-03-13",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Reeman, MI. Peak gust: 52 mph. AWOS station KFFX Fremont Municipal Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:55:00Z-wind-42.90--85.74",
   "lat": 42.9,
   "lon": -85.74,
   "zip": "",
   "city": "1 SE Grandville",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SE Grandville, MI. Peak gust: 52 mph. Mesonet station DW6683 Grandville.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:00:00Z-wind-42.22--85.15",
   "lat": 42.22,
   "lon": -85.15,
   "zip": "",
   "city": "6 SW Ceresco",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 SW Ceresco, MI. Peak gust: 52 mph. Mesonet station MICER 6.8 S Battle Creek (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:16:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-03-13",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 52 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T21:18:00Z-wind-43.20--85.59",
   "lat": 43.2,
   "lon": -85.59,
   "zip": "",
   "city": "3 SW Cedar Springs",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SW Cedar Springs, MI. Peak gust: 52 mph. Mesonet station AV534 Cedar Springs.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T09:38:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-03-13",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 53 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T14:00:00Z-wind-43.12--85.76",
   "lat": 43.12,
   "lon": -85.76,
   "zip": "",
   "city": "3 E Wright",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 E Wright, MI. Peak gust: 53 mph. Mesonet station MISPT 2.7 E Wright (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:10:00Z-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 53 mph. Mesonet station BDLM4 Plainwell.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:00:00Z-wind-42.16--85.83",
   "lat": 42.16,
   "lon": -85.83,
   "zip": "",
   "city": "1 ESE Lawton",
   "date": "2026-03-13",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Lawton, MI. Peak gust: 53 mph. Mesonet station MILAW 0.9 SE Lawton (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:35:00Z-wind-43.00--86.10",
   "lat": 43,
   "lon": -86.1,
   "zip": "",
   "city": "6 SSW Nunica",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 SSW Nunica, MI. Peak gust: 53 mph. Mesonet station DVI10249 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T08:15:00Z-wind-43.06--86.25",
   "lat": 43.06,
   "lon": -86.25,
   "zip": "",
   "city": "1 W Grand Haven",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Grand Haven, MI. Peak gust: 54 mph. Mesonet station GW5092 GRAND HAVEN.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T08:18:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:45:00Z-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2026-03-13",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Grand Valley, MI. Peak gust: 54 mph. Mesonet station GW5392 ALLENDALE.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T14:00:00Z-wind-42.18--86.18",
   "lat": 42.18,
   "lon": -86.18,
   "zip": "",
   "city": "2 SSW Hartford",
   "date": "2026-03-13",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Hartford, MI. Peak gust: 54 mph. Mesonet station MIKLR 2.2 SW Hartford (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T08:57:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-13",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 55 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T09:00:00Z-wind-42.34--85.18",
   "lat": 42.34,
   "lon": -85.18,
   "zip": "",
   "city": "1 N Battle Creek",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Battle Creek, MI. Peak gust: 55 mph. Mesonet station NGA46 Kellogg Community College.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T09:07:00Z-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-03-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 55 mph. AWOS station KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:23:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-13",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 55 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:00:00Z-wind-42.18--86.18",
   "lat": 42.18,
   "lon": -86.18,
   "zip": "",
   "city": "2 SSW Hartford",
   "date": "2026-03-13",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Hartford, MI. Peak gust: 55 mph. Mesonet station MIKLR 2.2 SW Hartford (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:00:00Z-wind-42.26--85.64",
   "lat": 42.26,
   "lon": -85.64,
   "zip": "",
   "city": "2 E Oshtemo",
   "date": "2026-03-13",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Oshtemo, MI. Peak gust: 55 mph. Mesonet station MIWMU Msuwmu.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T21:55:00Z-wind-43.62--84.73",
   "lat": 43.62,
   "lon": -84.73,
   "zip": "",
   "city": "3 ENE Mount Pleasant",
   "date": "2026-03-13",
   "county": "Isabella",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Mount Pleasant, MI. Peak gust: 55 mph. AWOS station KMOP Mt Pleasant Muni Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T13:45:00Z-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-03-13",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Dorr, MI. Peak gust: 56 mph. Mesonet station AX192 WAYLAND.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:00:00Z-wind-42.34--85.18",
   "lat": 42.34,
   "lon": -85.18,
   "zip": "",
   "city": "1 N Battle Creek",
   "date": "2026-03-13",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Battle Creek, MI. Peak gust: 56 mph. Mesonet station NGA46 Kellogg Community College.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T16:58:00Z-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-03-13",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 56 mph. AWOS station KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T17:01:00Z-wind-41.92--84.58",
   "lat": 41.92,
   "lon": -84.58,
   "zip": "",
   "city": "3 ESE Hillsdale",
   "date": "2026-03-13",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ESE Hillsdale, MI. Peak gust: 52 mph. AWOS station KJYM Hillsdale.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:59:00Z-wind-41.92--85.03",
   "lat": 41.92,
   "lon": -85.03,
   "zip": "",
   "city": "2 SW Coldwater",
   "date": "2026-03-13",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Coldwater, MI. Peak gust: 55 mph. AWOS station KOEB Coldwater.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T15:00:00Z-wind-42.08--86.36",
   "lat": 42.08,
   "lon": -86.36,
   "zip": "",
   "city": "2 WSW Spinks Corners",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WSW Spinks Corners, MI. Peak gust: 56 mph. Mesonet station MISWM 2.0 W Spinks Corners (MAWN).",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T17:41:00Z-wind-41.92--84.58",
   "lat": 41.92,
   "lon": -84.58,
   "zip": "",
   "city": "3 ESE Hillsdale",
   "date": "2026-03-13",
   "county": "Hillsdale",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ESE Hillsdale, MI. Peak gust: 56 mph. AWOS station KJYM Hillsdale.",
   "sourceDetail": "NWS IWX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-13T10:22:00Z-wind-45.75--87.08",
   "lat": 45.75,
   "lon": -87.08,
   "zip": "",
   "city": "Escanaba",
   "date": "2026-03-13",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Escanaba, MI. Peak gust: 53 mph. AWOS station KESC Delta Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-03-13",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-03-13",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBL-2026-03-13",
   "lat": 44.2725,
   "lon": -86.2469,
   "zip": "",
   "city": "MANISTEE",
   "date": "2026-03-13",
   "county": "Manistee",
   "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": "MANISTEE (MBL) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MANISTEE (MBL) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TEW-2026-03-13",
   "lat": 42.5658,
   "lon": -84.4232,
   "zip": "",
   "city": "MASON",
   "date": "2026-03-13",
   "county": "Ingham",
   "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": "MASON (TEW) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MASON (TEW) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ADG-2026-03-13",
   "lat": 41.8677,
   "lon": -84.0773,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-03-13",
   "county": "Fulton",
   "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": "ADRIAN (ADG) recorded a 63 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ADRIAN (ADG) [365d backfill 2026-08]",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2026-03-13",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-03-13",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DUH-2026-03-13",
   "lat": 41.7358,
   "lon": -83.6553,
   "zip": "",
   "city": "LAMBERTVILLE",
   "date": "2026-03-13",
   "county": "Monroe",
   "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": "LAMBERTVILLE (DUH) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — LAMBERTVILLE (DUH) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2026-03-13",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-03-13",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-APN-2026-03-13",
   "lat": 45.0717,
   "lon": -83.5644,
   "zip": "",
   "city": "ALPENA",
   "date": "2026-03-13",
   "county": "Alpena",
   "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": "ALPENA (APN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ALPENA (APN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-OZW-2026-03-13",
   "lat": 42.6294,
   "lon": -83.9822,
   "zip": "",
   "city": "HOWELL",
   "date": "2026-03-13",
   "county": "Livingston",
   "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": "HOWELL (OZW) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOWELL (OZW) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TTF-2026-03-13",
   "lat": 41.9399,
   "lon": -83.4347,
   "zip": "",
   "city": "MONROE",
   "date": "2026-03-13",
   "county": "Monroe",
   "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": "MONROE (TTF) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MONROE (TTF) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IRS-2026-03-13",
   "lat": 41.8133,
   "lon": -85.4389,
   "zip": "",
   "city": "STURGIS/KIRSCH",
   "date": "2026-03-13",
   "county": "St. Joseph",
   "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": "STURGIS/KIRSCH (IRS) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — STURGIS/KIRSCH (IRS) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HYX-2026-03-13",
   "lat": 43.4334,
   "lon": -83.8623,
   "zip": "",
   "city": "SAGINAW/BROWNE",
   "date": "2026-03-13",
   "county": "Saginaw",
   "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": "SAGINAW/BROWNE (HYX) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW/BROWNE (HYX) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-VLL-2026-03-13",
   "lat": 42.5429,
   "lon": -83.1779,
   "zip": "",
   "city": "Troy",
   "date": "2026-03-13",
   "county": "Oakland",
   "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": "Troy (VLL) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Troy (VLL) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-AZO-2026-03-13",
   "lat": 42.2347,
   "lon": -85.5519,
   "zip": "",
   "city": "KALAMAZOO",
   "date": "2026-03-13",
   "county": "Kalamazoo",
   "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": "KALAMAZOO (AZO) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — KALAMAZOO (AZO) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HAI-2026-03-13",
   "lat": 41.9598,
   "lon": -85.5934,
   "zip": "",
   "city": "Three Rivers",
   "date": "2026-03-13",
   "county": "St. Joseph",
   "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": "Three Rivers (HAI) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Three Rivers (HAI) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-RMY-2026-03-13",
   "lat": 42.2512,
   "lon": -84.9554,
   "zip": "",
   "city": "MARSHALL",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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": "MARSHALL (RMY) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MARSHALL (RMY) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-03-13",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-03-13",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2026-03-13",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2026-03-13",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-03-13",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-03-13",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-03-13",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MTC-2026-03-13",
   "lat": 42.6083,
   "lon": -82.8355,
   "zip": "",
   "city": "SELFRIDGE ANGB",
   "date": "2026-03-13",
   "county": "Macomb",
   "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": "SELFRIDGE ANGB (MTC) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SELFRIDGE ANGB (MTC) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-03-13",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-03-13",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-03-13",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-03-13",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-03-13",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-03-13",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-03-13",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-03-13",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 62 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-Y70-2026-03-13",
   "lat": 42.938,
   "lon": -85.0606,
   "zip": "",
   "city": "Ionia",
   "date": "2026-03-13",
   "county": "Ionia",
   "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": "Ionia (Y70) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Ionia (Y70) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-03-13",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-03-13",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 72 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-OEB-2026-03-13",
   "lat": 41.9333,
   "lon": -85.0525,
   "zip": "",
   "city": "COLDWATER",
   "date": "2026-03-13",
   "county": "Branch",
   "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": "COLDWATER (OEB) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — COLDWATER (OEB) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-IWX-HW-W-1-Cass-wind-2026-03-13",
   "zip": "",
   "city": "Cass",
   "date": "2026-03-13",
   "county": "Cass",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Cass.",
   "sourceDetail": "NWS IWX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-HW-W-1"
  },
  {
   "id": "iem-ww-IWX-HW-W-1-St. Joseph-wind-2026-03-13",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-13",
   "county": "St. Joseph",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for St. Joseph.",
   "sourceDetail": "NWS IWX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-HW-W-1"
  },
  {
   "id": "iem-ww-IWX-HW-W-1-Branch-wind-2026-03-13",
   "zip": "",
   "city": "Branch",
   "date": "2026-03-13",
   "county": "Branch",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Branch.",
   "sourceDetail": "NWS IWX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-HW-W-1"
  },
  {
   "id": "iem-ww-IWX-HW-W-1-Hillsdale-wind-2026-03-13",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-03-13",
   "county": "Hillsdale",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Hillsdale.",
   "sourceDetail": "NWS IWX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-HW-W-1"
  },
  {
   "id": "iem-ww-IWX-HW-W-1-Berrien-wind-2026-03-13",
   "zip": "",
   "city": "Berrien",
   "date": "2026-03-13",
   "county": "Berrien",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Berrien.",
   "sourceDetail": "NWS IWX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-HW-W-1"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-03-13",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-03-13",
   "county": "Ottawa",
   "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": "Mesonet station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "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 KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-13",
   "county": "Berrien",
   "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 KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "16 W Keeler",
   "date": "2026-03-13",
   "county": "Berrien",
   "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": "Mesonet station DVI11762 Saint Joseph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.13--86.47",
   "lat": 42.13,
   "lon": -86.47,
   "zip": "",
   "city": "16 W Keeler",
   "date": "2026-03-13",
   "county": "Berrien",
   "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": "Mesonet station DVI11762 Saint Joseph.",
   "sourceDetail": "NWS IWX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-13",
   "county": "Kent",
   "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 station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-03-13",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2026-03-13",
   "county": "Kent",
   "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 1 SSW East Grand Rapids",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2026-03-13-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-03-13",
   "county": "Clinton",
   "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 KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-03-13-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2026-03-13",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ww-IWX-FL-W-6-2026-03-12-Berrien",
   "zip": "",
   "city": "",
   "date": "2026-03-12",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-03-12. Duration: 1986 min. County: Berrien. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #6 (1986 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-6"
  },
  {
   "id": "asos-bf-BFA-2026-03-12",
   "lat": 45.1658,
   "lon": -84.9241,
   "zip": "",
   "city": "Boyne Falls",
   "date": "2026-03-12",
   "county": "Charlevoix",
   "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": "Boyne Falls (BFA) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Boyne Falls (BFA) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-11-flood-43.49--83.40",
   "lat": 43.49,
   "lon": -83.4,
   "zip": "",
   "city": "Caro",
   "date": "2026-03-11",
   "county": "Tuscola",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Caro Police Department reported flooded roads throughout the city of Caro.",
   "sourceDetail": "NWS DTX — Law Enforcement via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-11T22:34:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-03-11",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 53 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-16-2026-03-11-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-11. Duration: 20 min. County: Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #16 (20 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-16"
  },
  {
   "id": "ww-GRR-SV-W-16-2026-03-11-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-11. Duration: 20 min. County: Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #16 (20 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-16"
  },
  {
   "id": "ww-GRR-SV-W-17-2026-03-11-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-11. Duration: 36 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #17 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-17"
  },
  {
   "id": "ww-GRR-SV-W-17-2026-03-11-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-11. Duration: 36 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #17 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-17"
  },
  {
   "id": "ww-IWX-SV-W-30-2026-03-11-Hillsdale-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-11. Duration: 25 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #30 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-30"
  },
  {
   "id": "ww-IWX-SV-W-30-2026-03-11-Hillsdale-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-11. Duration: 25 min. County: Hillsdale. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #30 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-30"
  },
  {
   "id": "ww-DTX-FL-W-1-2026-03-11-Saginaw",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS DTX on 2026-03-11. Duration: 2806 min. County: Saginaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flood Warning #1 (2806 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FL-W-1"
  },
  {
   "id": "ww-GRR-FL-W-3-2026-03-11-Clinton",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-03-11. Duration: 9321 min. County: Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #3 (9321 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-3"
  },
  {
   "id": "ww-IWX-FL-W-2-2026-03-11-Branch",
   "zip": "",
   "city": "",
   "date": "2026-03-11",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS IWX on 2026-03-11. Duration: 999 min. Counties: Branch, St. Joseph. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Flood Warning #2 (999 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-2"
  },
  {
   "id": "iem-ww-IWX-FL-W-2-St. Joseph-flood-2026-03-11",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-11",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 0.72,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "FL W for St. Joseph.",
   "sourceDetail": "NWS IWX — FL/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-FL-W-2"
  },
  {
   "id": "sps-2026-03-11-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-03-11",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-11-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2026-03-11",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Sanilac — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-11-lenawee-hail",
   "zip": "",
   "city": "Lenawee",
   "date": "2026-03-11",
   "county": "Lenawee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Lenawee — wind gusts up to 50 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-11-livingston-hail",
   "zip": "",
   "city": "Livingston",
   "date": "2026-03-11",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-11-wayne-hail",
   "zip": "",
   "city": "Wayne",
   "date": "2026-03-11",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-11-monroe-hail",
   "zip": "",
   "city": "Monroe",
   "date": "2026-03-11",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1327116-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "GRAND RAPIDS",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327116",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1327117-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "BORCULO",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327117",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327147-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "BAUER",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water over the road near 40th and Baldwin.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327147",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327118-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "JAMESTOWN",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Over a dozen trees were knocked down or uprooted. Power outages across the county.",
   "sourceDetail": "Verified by Public — NCEI Event #1327118",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327119-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "BYRON CENTER",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "A few shallow trees were uprooted and power outages affected the Byron Center area.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327119",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327121-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "BAUER",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327121",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327122-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "HUDSONVILLE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327122",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.75
  },
  {
   "id": "ncei-1327149-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "NOORDELOOS",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water rescues from cars stranded in flood waters. Flooding at Riley Road at both 120th and 112th.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327149",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327124-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "HUDSONVILLE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327124",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 2.5
  },
  {
   "id": "ncei-1327125-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "HUDSONVILLE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327125",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 2.75
  },
  {
   "id": "ncei-1327126-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "HUDSONVILLE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327126",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1327127-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "HUDSONVILLE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327127",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 2
  },
  {
   "id": "ncei-1327132-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "TALLMADGE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327132",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327151-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "GRANDVILLE ARPT",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Intersection of Byron Center and Floyd flooded.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327151",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202603110144-hail-42.94--85.62",
   "lat": 42.94,
   "lon": -85.62,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near East Grand Rapids, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327135-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "TALLMADGE",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327135",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.5
  },
  {
   "id": "ncei-1327136-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "BAUER",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327136",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.75
  },
  {
   "id": "ncei-1327152-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "EASTMONT",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Standing water on the road in Front Home at Bel-Air and Kent Blvd.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327152",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327145-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "EAGLE MILLS",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Up to a foot of water across I-196. Multiple vehicles stranded at exit 76.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327145",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202603110247-hail-43.18--84.71",
   "lat": 43.18,
   "lon": -84.71,
   "zip": "",
   "city": "Middleton",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Middleton, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603110023-hail-42.98--85.66",
   "lat": 42.98,
   "lon": -85.66,
   "zip": "",
   "city": "2 N Grand Rapids",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 N Grand Rapids, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603110059-hail-42.89--86.02",
   "lat": 42.89,
   "lon": -86.02,
   "zip": "",
   "city": "4 ESE Olive Center",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 ESE Olive Center, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603110117-hail-42.91--85.88",
   "lat": 42.91,
   "lon": -85.88,
   "zip": "",
   "city": "1 SE Bauer",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SE Bauer, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603110119-hail-42.88--85.89",
   "lat": 42.88,
   "lon": -85.89,
   "zip": "",
   "city": "2 NW Hudsonville",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NW Hudsonville, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202603110128-hail-42.90--85.84",
   "lat": 42.9,
   "lon": -85.84,
   "zip": "",
   "city": "1 SSW Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SSW Jenison, MI. Hail size: 2\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202603110126-hail-42.89--85.87",
   "lat": 42.89,
   "lon": -85.87,
   "zip": "",
   "city": "2 NNW Hudsonville",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNW Hudsonville, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-202603110125-hail-42.91--85.83",
   "lat": 42.91,
   "lon": -85.83,
   "zip": "",
   "city": "Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Jenison, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202603110125-hail-42.91--85.85",
   "lat": 42.91,
   "lon": -85.85,
   "zip": "",
   "city": "1 W Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Jenison, MI. Hail size: 2\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202603110131-hail-42.92--85.81",
   "lat": 42.92,
   "lon": -85.81,
   "zip": "",
   "city": "1 E Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 E Jenison, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603110131-hail-42.91--85.82",
   "lat": 42.91,
   "lon": -85.82,
   "zip": "",
   "city": "Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Jenison, MI. Hail size: 2\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2
  },
  {
   "id": "iem-202603110137-hail-42.93--85.82",
   "lat": 42.93,
   "lon": -85.82,
   "zip": "",
   "city": "1 N Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N Jenison, MI. Hail size: 1.5\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-202603110139-hail-42.92--85.86",
   "lat": 42.92,
   "lon": -85.86,
   "zip": "",
   "city": "1 W Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Jenison, MI. Hail size: 1.75\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.91--85.88",
   "lat": 42.91,
   "lon": -85.88,
   "zip": "",
   "city": "1 SE Bauer",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "2 to 3 inches of water estimated over the road near 40th and Baldwin.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.83--86.08",
   "lat": 42.83,
   "lon": -86.08,
   "zip": "",
   "city": "3 NE Beechwood",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooding reported at 120th and Riley and 112th and Riley - Water Rescue happening currently. Victim states many cars in the neighborhood are partially underwater due to flooding.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.91--85.87",
   "lat": 42.91,
   "lon": -85.87,
   "zip": "",
   "city": "2 ESE Bauer",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "4 to 6 inches of standing water.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.89--85.72",
   "lat": 42.89,
   "lon": -85.72,
   "zip": "",
   "city": "1 W Wyoming",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Estimated 6 inches of standing water on road near Byron Center ave. and Floyd.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.97--85.61",
   "lat": 42.97,
   "lon": -85.61,
   "zip": "",
   "city": "1 N East Grand Rapids",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Estimated 12 inches of standing water on the road in front home at Bel-Air and Kent Blvd..",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.81--86.12",
   "lat": 42.81,
   "lon": -86.12,
   "zip": "",
   "city": "1 NNE Beechwood",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Street flooding on James St. between 136th and Butternut. 6 to 8 inches of standing water.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.91--85.75",
   "lat": 42.91,
   "lon": -85.75,
   "zip": "",
   "city": "1 NNE Grandville",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Estimated 18 inches of water over road at Chicago Dr. and 28th Street. Roadway impassable.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.93--85.69",
   "lat": 42.93,
   "lon": -85.69,
   "zip": "",
   "city": "3 NNE Wyoming",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "8 inches of water covering right two lanes of Burton at intersection of Burton and Clyde Park.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-43.21--85.75",
   "lat": 43.21,
   "lon": -85.75,
   "zip": "",
   "city": "Kent City",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "8 inches of water over roadway at M-37 and Peach Ridge.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.93--85.62",
   "lat": 42.93,
   "lon": -85.62,
   "zip": "",
   "city": "1 SW East Grand Rapids",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report from mPING: Street/road flooding; Street/road closed; Vehicles stranded.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-10-flood-42.97--85.70",
   "lat": 42.97,
   "lon": -85.7,
   "zip": "",
   "city": "2 WNW Grand Rapids",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "6 to 10 inches of water across entire interstate with multiple vehicles stranded on I-196 at Exit 76.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202603110120-hail-42.90--85.84",
   "lat": 42.9,
   "lon": -85.84,
   "zip": "",
   "city": "1 SSW Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SSW Jenison, MI. Hail size: 2.5\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.5
  },
  {
   "id": "iem-202603110120-hail-42.89--85.87",
   "lat": 42.89,
   "lon": -85.87,
   "zip": "",
   "city": "2 NNW Hudsonville",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 NNW Hudsonville, MI. Hail size: 2.75\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 2.75
  },
  {
   "id": "iem-202603110136-hail-42.93--85.82",
   "lat": 42.93,
   "lon": -85.82,
   "zip": "",
   "city": "1 N Jenison",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 N Jenison, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-03-11T03:15:00Z-wind-42.13--86.42",
   "lat": 42.13,
   "lon": -86.42,
   "zip": "",
   "city": "1 N Benton Heights",
   "date": "2026-03-10",
   "county": "Berrien",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 N Benton Heights, MI. Peak gust: 51 mph. ASOS station KBEH Benton Harbor.",
   "sourceDetail": "NWS IWX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-11-2026-03-10-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Ionia, Montcalm, Clinton, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #11 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-11"
  },
  {
   "id": "ww-GRR-SV-W-12-2026-03-10-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 36 min. Counties: Kent, Ionia. Storm tags: wind: 60.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #12 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-12"
  },
  {
   "id": "ww-GRR-SV-W-12-2026-03-10-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 36 min. Counties: Kent, Ionia. Storm tags: wind: 60.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #12 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "GRR-SV-W-12"
  },
  {
   "id": "ww-GRR-SV-W-12-2026-03-10-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 36 min. Counties: Kent, Ionia. Storm tags: wind: 60.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #12 (36 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-12"
  },
  {
   "id": "ww-GRR-SV-W-12-2026-03-10-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 36 min. Counties: Kent, Ionia. Storm tags: wind: 60.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #12 (36 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "GRR-SV-W-12"
  },
  {
   "id": "ww-GRR-SV-W-8-2026-03-10-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 43 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #8 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-8"
  },
  {
   "id": "ww-GRR-SV-W-8-2026-03-10-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 43 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #8 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-8"
  },
  {
   "id": "ww-GRR-SV-W-8-2026-03-10-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 43 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #8 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-8"
  },
  {
   "id": "ww-GRR-SV-W-8-2026-03-10-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 43 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #8 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-8"
  },
  {
   "id": "ww-GRR-SV-W-14-2026-03-10-Montcalm-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 56 min. Counties: Montcalm, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #14 (56 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-14"
  },
  {
   "id": "ww-GRR-SV-W-14-2026-03-10-Montcalm-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 56 min. Counties: Montcalm, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #14 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-14"
  },
  {
   "id": "ww-GRR-SV-W-14-2026-03-10-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 56 min. Counties: Montcalm, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #14 (56 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-14"
  },
  {
   "id": "ww-GRR-SV-W-14-2026-03-10-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 56 min. Counties: Montcalm, Gratiot. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #14 (56 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-14"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Newaygo-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Newaygo-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Newaygo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-13-2026-03-10-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Muskegon, Ottawa, Kent, Newaygo. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #13 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-13"
  },
  {
   "id": "ww-GRR-SV-W-9-2026-03-10-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Allegan, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #9 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-9"
  },
  {
   "id": "ww-GRR-SV-W-9-2026-03-10-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Allegan, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #9 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-9"
  },
  {
   "id": "ww-GRR-SV-W-9-2026-03-10-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Allegan, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #9 (42 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-9"
  },
  {
   "id": "ww-GRR-SV-W-9-2026-03-10-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 42 min. Counties: Allegan, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #9 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-9"
  },
  {
   "id": "ww-GRR-SV-W-10-2026-03-10-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #10 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-10"
  },
  {
   "id": "ww-GRR-SV-W-10-2026-03-10-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #10 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-10"
  },
  {
   "id": "ww-GRR-SV-W-10-2026-03-10-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #10 (64 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-10"
  },
  {
   "id": "ww-GRR-SV-W-10-2026-03-10-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 64 min. Counties: Kent, Ottawa. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #10 (64 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-10"
  },
  {
   "id": "ww-GRR-SV-W-15-2026-03-10-Gratiot-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 17 min. County: Gratiot. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #15 (17 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-15"
  },
  {
   "id": "ww-GRR-SV-W-15-2026-03-10-Gratiot-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-10. Duration: 17 min. County: Gratiot. Storm tags: wind: 50.0, hail: 1.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #15 (17 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "GRR-SV-W-15"
  },
  {
   "id": "ww-IWX-SV-W-24-2026-03-10-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 42 min. Counties: Cass, Berrien. Storm tags: wind: 70.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #24 (42 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-24"
  },
  {
   "id": "ww-IWX-SV-W-24-2026-03-10-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 42 min. Counties: Cass, Berrien. Storm tags: wind: 70.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #24 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "IWX-SV-W-24"
  },
  {
   "id": "ww-IWX-SV-W-24-2026-03-10-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 42 min. Counties: Cass, Berrien. Storm tags: wind: 70.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #24 (42 min)",
   "windSpeedMph": 70,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-24"
  },
  {
   "id": "ww-IWX-SV-W-24-2026-03-10-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 42 min. Counties: Cass, Berrien. Storm tags: wind: 70.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #24 (42 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "IWX-SV-W-24"
  },
  {
   "id": "ww-IWX-SV-W-22-2026-03-10-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 14 min. County: Cass. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #22 (14 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-22"
  },
  {
   "id": "ww-IWX-SV-W-22-2026-03-10-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-10. Duration: 14 min. County: Cass. Storm tags: wind: 60.0, hail: 1.5\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #22 (14 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.5,
   "warningProductKey": "IWX-SV-W-22"
  },
  {
   "id": "ww-DTX-SV-W-4-2026-03-10-Saginaw-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-10. Duration: 82 min. County: Saginaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #4 (82 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-4"
  },
  {
   "id": "ww-DTX-SV-W-4-2026-03-10-Saginaw-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Saginaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-10. Duration: 82 min. County: Saginaw. Storm tags: wind: 50.0, hail: 1.25\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #4 (82 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "DTX-SV-W-4"
  },
  {
   "id": "ww-GRR-FF-W-2-2026-03-10-Clinton",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 201 min. Counties: Clinton, Gratiot, Ionia, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #2 (201 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-2"
  },
  {
   "id": "ww-GRR-FF-W-2-2026-03-10-Gratiot",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 201 min. Counties: Clinton, Gratiot, Ionia, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #2 (201 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-2"
  },
  {
   "id": "ww-GRR-FF-W-2-2026-03-10-Ionia",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 201 min. Counties: Clinton, Gratiot, Ionia, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #2 (201 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-2"
  },
  {
   "id": "ww-GRR-FF-W-2-2026-03-10-Montcalm",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Montcalm",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 201 min. Counties: Clinton, Gratiot, Ionia, Montcalm. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #2 (201 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-2"
  },
  {
   "id": "ww-GRR-FF-W-1-2026-03-10-Kent",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 231 min. Counties: Kent, Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #1 (231 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-1"
  },
  {
   "id": "ww-GRR-FF-W-1-2026-03-10-Ottawa",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 231 min. Counties: Kent, Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #1 (231 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-1"
  },
  {
   "id": "ww-GRR-FF-W-3-2026-03-10-Kent",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 190 min. Counties: Kent, Muskegon, Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #3 (190 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-3"
  },
  {
   "id": "ww-GRR-FF-W-3-2026-03-10-Muskegon",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 190 min. Counties: Kent, Muskegon, Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #3 (190 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-3"
  },
  {
   "id": "ww-GRR-FF-W-3-2026-03-10-Ottawa",
   "zip": "",
   "city": "",
   "date": "2026-03-10",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS GRR on 2026-03-10. Duration: 190 min. Counties: Kent, Muskegon, Ottawa. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flash Flood Warning #3 (190 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FF-W-3"
  },
  {
   "id": "ncei-1327133-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "EAST GRAND RAPIDS",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327133",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327138-2026-03-10",
   "lon": 212244,
   "zip": "",
   "city": "MIDDLETON",
   "date": "2026-03-10",
   "county": "Gratiot",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Large hail and heavy rain impacted lower Michigan on March 10-11. Between 1 to 3 inches of rain fell in a short period of time, resulting in localized flash flooding and closed interstates with trapped cars in several counties.",
   "sourceDetail": "Verified by Public — NCEI Event #1327138",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-03-10-kent-hail",
   "zip": "",
   "city": "Kent",
   "date": "2026-03-10",
   "county": "Kent",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Kent — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-10-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-03-10",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-10-tuscola-hail",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-03-10",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-10-saginaw-hail",
   "zip": "",
   "city": "Saginaw",
   "date": "2026-03-10",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-10-oakland-hail",
   "zip": "",
   "city": "Oakland",
   "date": "2026-03-10",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-10-huron-hail",
   "zip": "",
   "city": "Huron",
   "date": "2026-03-10",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-03-09-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-03-09",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603091506-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-03-09",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-09T14:51:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-09",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 54 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-03-08-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-08",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202603081825-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-03-08",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-08T17:02:00Z-wind-43.72--85.50",
   "lat": 43.72,
   "lon": -85.5,
   "zip": "",
   "city": "1 NW Big Rapids",
   "date": "2026-03-08",
   "county": "Mecosta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Big Rapids, MI. Peak gust: 51 mph. AWOS station KRQB Big Rapids Roben-hood Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-08T16:56:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-03-08",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 52 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-03-08T17:53:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-03-08",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 54 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-FL-W-2-2026-03-08-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-03-08",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-03-08. Duration: 652 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #2 (652 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-2"
  },
  {
   "id": "asos-bf-CMX-2026-03-08",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-03-08",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-FL-W-1-2026-03-07-Ingham",
   "zip": "",
   "city": "",
   "date": "2026-03-07",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2026-03-07. Duration: 2064 min. County: Ingham. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #1 (2064 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-1"
  },
  {
   "id": "sps-2026-03-07-mason-wind",
   "zip": "",
   "city": "Mason",
   "date": "2026-03-07",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-07-manistee-wind",
   "zip": "",
   "city": "Manistee",
   "date": "2026-03-07",
   "county": "Manistee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Manistee — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1317678-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "EDWARDSBURG",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "A disorganized circulation touched down northwest of the|intersection of Runkle St and Conrad Rd, destroying an attached|garage, and destroying the center part of the home (back windows failed and resulted in front of house blowing out). One fatality, a 12 year|old boy, was confirmed at the home as he was located in the attached garage at the time. A female resident was also injured. The tornado continued|northeast, causing damage to mainly trees with some minor roof|damage as it moved across Yankee St, east of Dailey Rd. The|tornado then widen and intensified with the peak damage occurring|along Harris St, between Hess Rd and M-62 where numerous trees|were snapped or uprooted. Some damage to pole barns and homes|(mainly roofs) was noted. The tornado crossed M-62  and continued|northeast, crossing portions of Oil City Rd and Monette St to|Curtis, Day and Chain Lakes before lifting just east of the|intersection of South and Walnut Rd.",
   "sourceDetail": "Verified by NWS Employee — NCEI Event #1317678",
   "tornadoScale": "EF1",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-202603062020-hail-41.91--86.01",
   "lat": 41.91,
   "lon": -86.01,
   "zip": "",
   "city": "Cassopolis",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Cassopolis, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1317681-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "THREE RIVERS",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Another tornado from the same supercell that produced the|Edwardsburg tornado touched down near Roberts Rd and M60 just|southwest of Three Rivers on Friday afternoon. The tornado|quickly intensified and produced EF-2 damage with estimated wind|speeds of 120-130 mph. Here, the tornado hit a Menards, removing|the roof on the southwest and northwest portions of the building,|along with an exterior wall collapse. One section of an nearby|Uhaul facility was also completely destroyed. The tornado|continued through the heart of Three Rivers, producing EF-1 and|isolated pockets of EF-2 damage to residences and businesses|(including the hospital). The tornado crossed the St. Joseph|River, producing extensive damage to a lumber yard before|uprooting many trees in a local cemetery. The tornado produced|another pocket of EF-2 damage to a double-wide mobile home and a|brand new school transportation facility. Multiple school|trailers were tossed either across the street or inside the|transportation facility itself which had its roof removed. As the|tornado became cut off from the main supercell, it began to jog|more eastward. It produced more damage north of Centreville|including a large barn and additional trees snapped.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1317681",
   "tornadoScale": "EF2",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1317721-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "PINE RIDGE",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo received of hail up to a quarter in diameter. Photo taken on Marcellus Rd.",
   "sourceDetail": "Verified by Public — NCEI Event #1317721",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1317722-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "THREE RIVERS ARPT",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo on Facebook shows a hailstone that measured 1.75 inches.  This stone reported fell between Mendon and Three Rivers.",
   "sourceDetail": "Verified by Public — NCEI Event #1317722",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.75
  },
  {
   "id": "ncei-1317723-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "MENDON",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo on Facebook shows hail estimated to be between 1 to 1.5 inches in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1317723",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.5
  },
  {
   "id": "ncei-1327106-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "ATHENS",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327106",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1317686-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "SHERWOOD",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "The most intense and deadly tornado of the cyclic tornadic|supercell touched down in northwest Branch county, northwest of|Union Lake between Blossom Rd and Mendon Rd. This tornado was|well photographed from multiple angles, and it quickly turned|into a multi-vortex wedge. After destroying a pole barn and|damaging a residence, the tornado deposited a 500 gallon propane|tank in a field. Drone footage also showed ground scouring in the|same field. The tornado continued northeast and caused the most|widespread and intense damage along Prairie Rose Ln. Every|residence along this stretch was either heavily damaged or|completely destroyed. Tragically, three individuals lost their|lives here when their manufactured homes were lofted and tossed.|One of these trailers was well anchored and tossed approximately|100 yards, badly twisting the frame. Numerous vehicles were also|tossed in this area. The maximum peak intensity of 160 mph was|estimated to be at the corner of Tuttle Rd and Prairie Rose Ln.|This 2 story block home was completely destroyed. Construction|quality and older building codes of all homes in this area|contributed to their failure and precluded the survey team from|being able to rate higher than an EF-3. The tornado continued off|to the northeast into Union City producing EF-1 to EF2 damage|along the way before dissipating at the Branch/Calhoun county|line. Special thanks to the various subject matter experts on the|Quick Response Team that helped NWS Northern Indiana determine|this tornado's intensity.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1317686",
   "tornadoScale": "EF3",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327107-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "BURLINGTON",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Severe tree damage and some property damage found in this area.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1327107",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327108-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "TEKONSHA",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Exit sign on the highway was blown over.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1327108",
   "windSpeedMph": 56,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327109-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "TEKONSHA",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "EF-0 tornado with peak winds around 85 mph began |just west of the intersection of P Drive South and 18 1/2 Mile |Road. The damage path ended near N Drive South between 20 Mile |Road and 21 1/2 Mile Road. Several trees were uprooted along the |path, and some unhealthy trunk snaps. There was minor damage to |some structures, including a roof off a chicken coop, and an |exposed farm outbuilding with some walls collapsed and metal roof|material scattered downfield. The end point had an uprooted tree|or two, but also numerous trees that had limbs recently torn off |presumably not associated with the tornado, as the only torn |limbs were those hanging over the road right-of-way.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1327109",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1327110-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "HOPWOOD ACRES",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327110",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327113-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "EAST LANSING ARPT",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327113",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327114-2026-03-06",
   "lon": 212243,
   "zip": "",
   "city": "PACKARD",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe weather impacted lower Michigan on March 6th. 1 tornado occurred in the Grand Rapids County Warning Area while 3 occurred in the Northern Indiana County Warning Area.",
   "sourceDetail": "Verified by Public — NCEI Event #1327114",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1327146-2026-03-06",
   "lon": 212244,
   "zip": "",
   "city": "LANSING",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "low",
   "eventType": "flood",
   "confidence": 0.95,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Water covering US-127 at Grand River Avenue.",
   "sourceDetail": "Verified by Emergency Manager — NCEI Event #1327146",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1320042-2026-03-06",
   "lon": 211282,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-03-06",
   "county": "Washtenaw",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A thunderstorm produced 1 inch hail in Macomb Township.",
   "sourceDetail": "Verified by Public — NCEI Event #1320042",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.88
  },
  {
   "id": "ncei-1320043-2026-03-06",
   "lon": 211282,
   "zip": "",
   "city": "MACOMB",
   "date": "2026-03-06",
   "county": "Macomb",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A thunderstorm produced 1 inch hail in Macomb Township.",
   "sourceDetail": "Verified by Public — NCEI Event #1320043",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-06-hail-41.94--85.63",
   "lat": 41.94,
   "lon": -85.63,
   "zip": "",
   "city": "Three Rivers",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo of hail up to a quarter in diameter in a photo taken on Marcellus Rd in Three Rivers. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-lsr-2026-03-06-hail-41.98--85.55",
   "lat": 41.98,
   "lon": -85.55,
   "zip": "",
   "city": "1 ESE Fishers Lake",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Photo on Facebook shows a hailstone measured to be 1.75 inches. Public reports it fell between Mendon and Three Rivers. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.75
  },
  {
   "id": "iem-lsr-2026-03-06-hail-41.99--85.62",
   "lat": 41.99,
   "lon": -85.62,
   "zip": "",
   "city": "2 SE Moore Park",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "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 IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202603062127-hail-42.08--85.23",
   "lat": 42.08,
   "lon": -85.23,
   "zip": "",
   "city": "1 SE Athens",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 SE Athens, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202603070013-hail-42.73--84.55",
   "lat": 42.73,
   "lon": -84.55,
   "zip": "",
   "city": "2 N Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 2 N Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070017-hail-42.72--84.54",
   "lat": 42.72,
   "lon": -84.54,
   "zip": "",
   "city": "1 NE Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070019-hail-42.73--84.56",
   "lat": 42.73,
   "lon": -84.56,
   "zip": "",
   "city": "1 NNW Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NNW Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Broadcast Media via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070027-hail-42.74--84.47",
   "lat": 42.74,
   "lon": -84.47,
   "zip": "",
   "city": "1 NE East Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NE East Lansing, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202603070029-hail-42.68--84.59",
   "lat": 42.68,
   "lon": -84.59,
   "zip": "",
   "city": "3 SW Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SW Lansing, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202603070126-hail-42.28--83.75",
   "lat": 42.28,
   "lon": -83.75,
   "zip": "",
   "city": "1 W Ann Arbor",
   "date": "2026-03-06",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Ann Arbor, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "iem-202603070239-hail-42.71--82.98",
   "lat": 42.71,
   "lon": -82.98,
   "zip": "",
   "city": "1 NW Macomb",
   "date": "2026-03-06",
   "county": "Macomb",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 NW Macomb, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-03-06-flood-42.74--84.51",
   "lat": 42.74,
   "lon": -84.51,
   "zip": "",
   "city": "1 WNW East Lansing",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "North Bound US 127 Closed at Grand River Ave due to water covering the Highway.",
   "sourceDetail": "NWS GRR — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T21:38:00Z-tornado-42.09--85.18",
   "lat": 42.09,
   "lon": -85.18,
   "zip": "",
   "city": "3 NW Union City",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 3 NW Union City, MI.",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T21:58:00Z-tornado-42.13--84.94",
   "lat": 42.13,
   "lon": -84.94,
   "zip": "",
   "city": "4 NE Tekonsha",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 NE Tekonsha, MI. An EF0 Tornado with top winds of 85 mph began just west of the intersection of P Drive South and 18 1/2 Mile Road. The damage path ended near N Drive South between 20 Mile Road and 21 1/2 Mile Road. Start time 4:58 pm and end time 5:03 pm. Path length 2.75 miles.",
   "sourceDetail": "NWS GRR — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T19:09:00Z-tornado-41.81--86.11",
   "lat": 41.81,
   "lon": -86.11,
   "zip": "",
   "city": "2 WNW Edwardsburg",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 WNW Edwardsburg, MI. *** 1 FATAL *** A disorganized circulation touched down northwest of the intersection of Runkle St and Conrad Rd, destroying an attached garage and damaging the front of a home. One fatality, a 12 year old boy, was confirmed at the home. The tornado continued northeast, causing damage to mainly trees with some minor roof damage as it moved across Yankee St, east of Dailey Rd. The tornado then widen and intensified with the peak damage occurring along Harris St, between Hess Rd and M-62 where numerous trees were snapped or uprooted. Some damage to pole barns and homes (mainly roofs) was noted. The tornado crossed M-62 and continued northeast, crossing portions of Oil City Rd and Monette St to Curtis, Day and Chain Lakes before lifting just east of the intersection of South and Walnut Rd.",
   "sourceDetail": "NWS IWX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06-tornado-41.94--85.71",
   "lat": 41.94,
   "lon": -85.71,
   "zip": "",
   "city": "1 ESE Clear Lake",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "*** 10 INJ *** Another tornado from the same supercell that produced the Edwardsburg tornado touched down near Stoldt Rd and Coon Hollow Rd southwest of Three Rivers. The tornado quickly intensified and produced EF-2 damage with estimated wind speeds of 120-130 mph. Here, the tornado hit a Menards, removing the roof on the southwest and northwest portions of the building, along with an exterior wall collapse. One section of an nearby Uhaul facility was also completely destroyed. The tornado continued through the heart of Three Rivers, producing EF-1 and isolated pockets of EF-2 damage to residences and businesses (including the hospital). The tornado crossed the St. Joseph River, producing extensive damage to a lumber yard before uprooting many trees in a local cemetery. The tornado produced another pocket of EF-2 damage to a double-wide mobile home and a brand new school transportation facility. Multiple school trailers were tossed either across the street or inside the transportation facility itself which had its roof removed. As the tornado became cut off from the main supercell, it began to jog more eastward. It produced more damage north of Centreville including a large barn and additional trees snapped.",
   "sourceDetail": "NWS IWX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T20:18:00Z-tornado-41.84--86.00",
   "lat": 41.84,
   "lon": -86,
   "zip": "",
   "city": "2 NNW Juno Lake",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 NNW Juno Lake, MI. Tree down and toppled center pivot in this location. Time estimated by radar.",
   "sourceDetail": "NWS IWX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T20:19:00Z-tornado-41.83--86.05",
   "lat": 41.83,
   "lon": -86.05,
   "zip": "",
   "city": "2 NW Eagle Lake",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 2 NW Eagle Lake, MI. Several trees snapped and damage to a home on Harris Street near M62. Photos on X. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T20:33:00Z-tornado-42.05--85.22",
   "lat": 42.05,
   "lon": -85.22,
   "zip": "",
   "city": "4 NNE Sherwood",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 NNE Sherwood, MI. *** 3 FATAL, 12 INJ *** The most intense and deadly tornado of the cyclic tornadic supercell touched down in northwest Branch county, northwest of Union Lake between Blossom Rd and Mendon Rd. This tornado was well photographed from multiple angles, and it quickly turned into a multi-vortex wedge. After destroying a pole barn and damaging a residence, the tornado deposited a 500 gallon propane tank in a field. Drone footage also showed ground scouring in the same field. The tornado continued northeast and caused the most widespread and intense damage along Prairie Rose Ln. Every residence along this stretch was either heavily damaged or completely destroyed. Tragically, three individuals lost their lives here when their manufactured homes were lofted and tossed. One of these trailers was well anchored and tossed approximately 100 yards, badly twisting the frame. Numerous vehicles were also tossed in this area. The maximum peak intensity of 160 mph was estimated to be at the corner of Tuttle Rd and Prairie Rose Ln. This 2 story block home was completely destroyed. Construction quality and older building codes of all homes in this area contributed to their failure and precluded the survey team from being able to rate higher than an EF-3. The tornado continued off to the northeast into Union City producing EF-1 to EF2 damage along the way before dissipating at the Branch/Calhoun county line.",
   "sourceDetail": "NWS IWX — NWS Storm Survey via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06-tornado-41.93--85.66",
   "lat": 41.93,
   "lon": -85.66,
   "zip": "",
   "city": "2 SW Three Rivers",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Video sent in showing a tornado hitting the Menards store and lifted at least a portion of the roof off on main building. Their storage unit nearby was also damaged by the tornado. Debris seen flying around the circulation on the video, taken near US 131/M-60 merger. Time estimated by radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06-tornado-41.92--85.68",
   "lat": 41.92,
   "lon": -85.68,
   "zip": "",
   "city": "3 WSW Three Rivers",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Video relayed by broadcast media taken looking north at Three Rivers Waste Management facility. Tornado observed on the ground. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Broadcast Media via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06-tornado-41.95--85.63",
   "lat": 41.95,
   "lon": -85.63,
   "zip": "",
   "city": "Three Rivers",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Numerous videos from storm chasers, trained spotters, broadcast media, and the public confirm a tornado in Three Rivers Michigan. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Storm Chaser via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2026-03-06T21:38:00Z-tornado-42.06--85.16",
   "lat": 42.06,
   "lon": -85.16,
   "zip": "",
   "city": "1 W Union City",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 W Union City, MI. Storm chaser video confirmed tornado near Union City. Location estimated based on radar.",
   "sourceDetail": "NWS IWX — Storm Chaser via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-GRR-SV-W-7-2026-03-06-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 20 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #7 (20 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-7"
  },
  {
   "id": "ww-GRR-SV-W-7-2026-03-06-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 20 min. County: Calhoun. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #7 (20 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-7"
  },
  {
   "id": "ww-GRR-SV-W-3-2026-03-06-Calhoun-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 53 min. County: Calhoun. Storm tags: wind: 50.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #3 (53 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-3"
  },
  {
   "id": "ww-GRR-SV-W-3-2026-03-06-Calhoun-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 53 min. County: Calhoun. Storm tags: wind: 50.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #3 (53 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-3"
  },
  {
   "id": "ww-IWX-SV-W-16-2026-03-06-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 25 min. Counties: St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #16 (25 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-16"
  },
  {
   "id": "ww-IWX-SV-W-16-2026-03-06-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 25 min. Counties: St. Joseph, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #16 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-16"
  },
  {
   "id": "iem-ww-IWX-SV-W-16-St. Joseph-wind-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-16"
  },
  {
   "id": "iem-ww-IWX-SV-W-16-St. Joseph-hail-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-16"
  },
  {
   "id": "ww-GRR-SV-W-2-2026-03-06-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 24 min. County: Kalamazoo. Storm tags: wind: 50.0, hail: 1.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #2 (24 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-2"
  },
  {
   "id": "ww-GRR-SV-W-2-2026-03-06-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 24 min. County: Kalamazoo. Storm tags: wind: 50.0, hail: 1.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #2 (24 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.75,
   "warningProductKey": "GRR-SV-W-2"
  },
  {
   "id": "iem-ww-IWX-SV-W-17-St. Joseph-wind-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "SV W for St. Joseph. Max wind tag: 60 mph.",
   "sourceDetail": "NWS IWX — SV/W",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-17"
  },
  {
   "id": "iem-ww-IWX-SV-W-17-St. Joseph-hail-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.72,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "SV W for St. Joseph. Max hail tag: 0.75\".",
   "sourceDetail": "NWS IWX — SV/W",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-17"
  },
  {
   "id": "ww-IWX-SV-W-17-2026-03-06-Branch-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 35 min. Counties: St. Joseph, Branch. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #17 (35 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-17"
  },
  {
   "id": "ww-IWX-SV-W-17-2026-03-06-Branch-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 35 min. Counties: St. Joseph, Branch. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #17 (35 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-17"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Clinton-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-6-2026-03-06-Clinton-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 45 min. Counties: Eaton, Ingham, Clinton. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #6 (45 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-6"
  },
  {
   "id": "ww-GRR-SV-W-4-2026-03-06-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 65 min. County: Jackson. Storm tags: wind: 50.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #4 (65 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-4"
  },
  {
   "id": "ww-GRR-SV-W-4-2026-03-06-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 65 min. County: Jackson. Storm tags: wind: 50.0, hail: 1.0\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #4 (65 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-4"
  },
  {
   "id": "ww-DTX-SV-W-3-2026-03-06-Shiawassee-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-06. Duration: 48 min. County: Shiawassee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #3 (48 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-3"
  },
  {
   "id": "ww-DTX-SV-W-3-2026-03-06-Shiawassee-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Shiawassee",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-03-06. Duration: 48 min. County: Shiawassee. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #3 (48 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-3"
  },
  {
   "id": "ww-GRR-SV-W-5-2026-03-06-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 66 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #5 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-5"
  },
  {
   "id": "ww-GRR-SV-W-5-2026-03-06-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 66 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #5 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-5"
  },
  {
   "id": "ww-GRR-SV-W-5-2026-03-06-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 66 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #5 (66 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-5"
  },
  {
   "id": "ww-GRR-SV-W-5-2026-03-06-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-03-06. Duration: 66 min. Counties: Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #5 (66 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-5"
  },
  {
   "id": "ww-IWX-SV-W-15-2026-03-06-Berrien-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 37 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #15 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-15"
  },
  {
   "id": "ww-IWX-SV-W-15-2026-03-06-Berrien-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Berrien",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 37 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #15 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-15"
  },
  {
   "id": "ww-IWX-SV-W-15-2026-03-06-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 37 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #15 (37 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-15"
  },
  {
   "id": "ww-IWX-SV-W-15-2026-03-06-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2026-03-06. Duration: 37 min. Counties: Berrien, Cass. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #15 (37 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "IWX-SV-W-15"
  },
  {
   "id": "iem-ww-GRR-TO-W-1-Calhoun-tornado-2026-03-06",
   "zip": "",
   "city": "Calhoun",
   "date": "2026-03-06",
   "county": "Calhoun",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Calhoun.",
   "sourceDetail": "NWS GRR — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-TO-W-1"
  },
  {
   "id": "iem-ww-IWX-TO-W-2-Cass-tornado-2026-03-06",
   "zip": "",
   "city": "Cass",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-2"
  },
  {
   "id": "iem-ww-IWX-TO-W-2-St. Joseph-tornado-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-2"
  },
  {
   "id": "iem-ww-IWX-TO-W-4-St. Joseph-tornado-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-4"
  },
  {
   "id": "iem-ww-IWX-TO-W-4-Branch-tornado-2026-03-06",
   "zip": "",
   "city": "Branch",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Branch.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-4"
  },
  {
   "id": "iem-ww-IWX-TO-W-3-Branch-tornado-2026-03-06",
   "zip": "",
   "city": "Branch",
   "date": "2026-03-06",
   "county": "Branch",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Branch.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-3"
  },
  {
   "id": "iem-ww-IWX-TO-W-3-St. Joseph-tornado-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-3"
  },
  {
   "id": "iem-ww-IWX-TO-W-5-Hillsdale-tornado-2026-03-06",
   "zip": "",
   "city": "Hillsdale",
   "date": "2026-03-06",
   "county": "Hillsdale",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Hillsdale.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-5"
  },
  {
   "id": "iem-ww-IWX-TO-W-1-Cass-tornado-2026-03-06",
   "zip": "",
   "city": "Cass",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Cass.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-1"
  },
  {
   "id": "iem-ww-IWX-TO-W-1-St. Joseph-tornado-2026-03-06",
   "zip": "",
   "city": "St. Joseph",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for St. Joseph.",
   "sourceDetail": "NWS IWX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-TO-W-1"
  },
  {
   "id": "iem-lsr-2026-03-06-hail-42.01--85.46",
   "lat": 42.01,
   "lon": -85.46,
   "zip": "",
   "city": "Mendon",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Hail estimated to be between 1 to 1.5 inches in diameter seen in a photo on Facebook from Mendon_ MI. Time estimated via radar.",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.5
  },
  {
   "id": "iem-geo-2026-03-06-tornado-41.93--85.65",
   "lat": 41.93,
   "lon": -85.65,
   "zip": "",
   "city": "1 SW Three Rivers",
   "date": "2026-03-06",
   "county": "St. Joseph",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "tornado",
   "confidence": 0.9,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Numerous reports of significant damage on the southwest side of Three Rivers. Storm chasers and Emergency Management confirmed multiple tornado touchdowns prior to the damage.",
   "sourceDetail": "NWS IWX — Emergency Mngr via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ncei-1317720-2026-03-06",
   "lon": 210302,
   "zip": "",
   "city": "CASSOPOLIS",
   "date": "2026-03-06",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Video shows quarter-size hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1317720",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2026-03-06-clinton-wind",
   "zip": "",
   "city": "Clinton",
   "date": "2026-03-06",
   "county": "Clinton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clinton — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2026-03-06",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-genesee-hail",
   "zip": "",
   "city": "Genesee",
   "date": "2026-03-06",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-washtenaw-hail",
   "zip": "",
   "city": "Washtenaw",
   "date": "2026-03-06",
   "county": "Washtenaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Washtenaw — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2026-03-06",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-macomb-hail",
   "zip": "",
   "city": "Macomb",
   "date": "2026-03-06",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 30 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-03-06-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-03-06",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1311971-2026-03-03",
   "lon": 210302,
   "zip": "",
   "city": "SHERWOOD",
   "date": "2026-03-03",
   "county": "Branch",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Picture shared on social media of a hailstone larger than a quarter.",
   "sourceDetail": "Verified by Public — NCEI Event #1311971",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.4
  },
  {
   "id": "ncei-1321381-2026-02-28",
   "lon": 211500,
   "zip": "",
   "city": "Houghton",
   "date": "2026-02-28",
   "county": "Houghton",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "The ASOS station KCMX Houghton County Memorial Airport reported a brief wind gust of 52 knots at 7:53 PM EST on the 27th, with frequent gusts of 40-50 knots through the afternoon and evening. Houghton County had around 50 power outages by midnight.",
   "sourceDetail": "Verified by ASOS — NCEI Event #1321381",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1321417-2026-02-28",
   "lon": 211500,
   "zip": "",
   "city": "Keweenaw",
   "date": "2026-02-28",
   "county": "Keweenaw",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "The ASOS station KCMX Houghton County Memorial Airport in nearby Houghton county reported a brief wind gust of 52 knots at 7:53 PM EST on the 27th, with frequent gusts of 40-50 knots through the afternoon and evening. In Keweenaw County over 10% of the county lost power.",
   "sourceDetail": "Verified by ASOS — NCEI Event #1321417",
   "windSpeedMph": 50,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2026-02-28-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2026-02-28",
   "county": "Chippewa",
   "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": "Buoy station SWPM4 S.W. Pier_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280630-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2026-02-28",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T05:37:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2026-02-28",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 51 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T05:47:00Z-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2026-02-28",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 51 mph. AWOS station KSAW Sawyer Airport.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T06:33:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2026-02-28",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 55 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-02-27",
   "county": "Ontonagon",
   "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": "Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-02-27",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-46.48--88.99",
   "lat": 46.48,
   "lon": -88.99,
   "zip": "",
   "city": "1 ESE Trout Creek",
   "date": "2026-02-27",
   "county": "Houghton",
   "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": "Mesonet station MC028 Trout Creek MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-02-27",
   "county": "Houghton",
   "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 station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2026-02-27",
   "county": "Emmet",
   "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 KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-27-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-02-27",
   "county": "Alger",
   "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 KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CVX-2026-02-27",
   "lat": 45.3047,
   "lon": -85.2747,
   "zip": "",
   "city": "CHARLEVOIX",
   "date": "2026-02-27",
   "county": "Charlevoix",
   "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": "CHARLEVOIX (CVX) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — CHARLEVOIX (CVX) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280020-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2026-02-27",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280024-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-02-27",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 76 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 76,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280042-wind-46.48--88.99",
   "lat": 46.48,
   "lon": -88.99,
   "zip": "",
   "city": "1 ESE Trout Creek",
   "date": "2026-02-27",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Trout Creek, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280048-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-02-27",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280256-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2026-02-27",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280303-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-02-27",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602280424-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2026-02-27",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T02:42:00Z-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2026-02-27",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mackinaw City, MI. Peak gust: 52 mph. Buoy station MACM4 Mackinaw City, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T03:49:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-02-27",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 52 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-27T12:32:00Z-wind-44.68--84.13",
   "lat": 44.68,
   "lon": -84.13,
   "zip": "",
   "city": "1 N Mio",
   "date": "2026-02-27",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Mio, MI. Peak gust: 53 mph. Mesonet station MMOM4 Mio.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T02:38:00Z-wind-46.00--84.36",
   "lat": 46,
   "lon": -84.36,
   "zip": "",
   "city": "1 N Cedarville",
   "date": "2026-02-27",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cedarville, MI. Peak gust: 53 mph. Mesonet station MC072 M-134-W At Cedarville - La 16.9.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T04:03:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2026-02-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 53 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T04:00:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2026-02-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 54 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T04:06:00Z-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2026-02-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 54 mph. Buoy station SWPM4 S.W. Pier, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T04:05:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2026-02-27",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 55 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T01:00:00Z-wind-46.28--87.42",
   "lat": 46.28,
   "lon": -87.42,
   "zip": "",
   "city": "1 ESE Gwinn",
   "date": "2026-02-27",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Gwinn, MI. Peak gust: 52 mph. Mesonet station MC010 Gwinn MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T03:02:00Z-wind-46.35--87.12",
   "lat": 46.35,
   "lon": -87.12,
   "zip": "",
   "city": "1 W Sundell",
   "date": "2026-02-27",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Sundell, MI. Peak gust: 52 mph. Mesonet station MC038 Sundell MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-27T22:29:00Z-wind-46.95--88.45",
   "lat": 46.95,
   "lon": -88.45,
   "zip": "",
   "city": "3 NNE Arnheim",
   "date": "2026-02-27",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Arnheim, MI. Peak gust: 53 mph. Mesonet station MC031 Arnheim MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-27T23:15:00Z-wind-46.52--90.12",
   "lat": 46.52,
   "lon": -90.12,
   "zip": "",
   "city": "4 NW Bessemer",
   "date": "2026-02-27",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NW Bessemer, MI. Peak gust: 53 mph. AWOS station KIWD Ironwood Airport.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T02:50:00Z-wind-46.33--86.47",
   "lat": 46.33,
   "lon": -86.47,
   "zip": "",
   "city": "1 S Shingleton",
   "date": "2026-02-27",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Shingleton, MI. Peak gust: 53 mph. Mesonet station MC071 Shingleton MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T03:00:00Z-wind-46.31--85.65",
   "lat": 46.31,
   "lon": -85.65,
   "zip": "",
   "city": "3 SE McMillan",
   "date": "2026-02-27",
   "county": "Luce",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE McMillan, MI. Peak gust: 53 mph. Mesonet station MIMML McMillan (MAWN).",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T03:02:00Z-wind-46.35--86.04",
   "lat": 46.35,
   "lon": -86.04,
   "zip": "",
   "city": "4 W Seney",
   "date": "2026-02-27",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 W Seney, MI. Peak gust: 53 mph. Mesonet station MC006 Seney MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T02:50:00Z-wind-46.30--85.45",
   "lat": 46.3,
   "lon": -85.45,
   "zip": "",
   "city": "5 SE Newberry",
   "date": "2026-02-27",
   "county": "Luce",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SE Newberry, MI. Peak gust: 54 mph. AWOS station KERY Newberry.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T00:48:00Z-wind-46.48--89.95",
   "lat": 46.48,
   "lon": -89.95,
   "zip": "",
   "city": "1 W Wakefield",
   "date": "2026-02-27",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Wakefield, MI. Peak gust: 55 mph. Mesonet station MC026 Wakefield MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T03:50:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-02-27",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 55 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-28T01:00:00Z-wind-46.84--88.38",
   "lat": 46.84,
   "lon": -88.38,
   "zip": "",
   "city": "1 SE Pequaming",
   "date": "2026-02-27",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SE Pequaming, MI. Peak gust: 56 mph. Mesonet station EW2255 Lanse.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MCD-2026-02-27",
   "lat": 45.865,
   "lon": -84.6372,
   "zip": "",
   "city": "MACKINAC ISLAND",
   "date": "2026-02-27",
   "county": "Mackinac",
   "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": "MACKINAC ISLAND (MCD) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MACKINAC ISLAND (MCD) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PLN-2026-02-27",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2026-02-27",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-02-27",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-02-27",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-MQT-HW-W-1-Keweenaw-wind-2026-02-27",
   "zip": "",
   "city": "Keweenaw",
   "date": "2026-02-27",
   "county": "Keweenaw",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Keweenaw.",
   "sourceDetail": "NWS MQT — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-HW-W-1"
  },
  {
   "id": "iem-ww-MQT-HW-W-1-Houghton-wind-2026-02-27",
   "zip": "",
   "city": "Houghton",
   "date": "2026-02-27",
   "county": "Houghton",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Houghton.",
   "sourceDetail": "NWS MQT — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-HW-W-1"
  },
  {
   "id": "iem-geo-2026-02-24T17:59:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-02-24",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-24T19:39:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2026-02-24",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 51 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ERY-2026-02-23",
   "lat": 46.3111,
   "lon": -85.4572,
   "zip": "",
   "city": "NEWBERRY",
   "date": "2026-02-23",
   "county": "Luce",
   "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": "NEWBERRY (ERY) recorded a 75 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — NEWBERRY (ERY) [365d backfill 2026-08]",
   "windSpeedMph": 75,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-20T11:13:00Z-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2026-02-20",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Holland, MI. Peak gust: 51 mph. Mesonet station MC097 US-31 Mile Marker 47.0 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-20T11:52:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-02-20",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 51 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-20T11:42:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-02-20",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 52 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-20T13:51:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-02-20",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 55 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-02-20",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-02-20",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARB-2026-02-20",
   "lat": 42.224,
   "lon": -83.7397,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-02-20",
   "county": "Washtenaw",
   "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": "ANN ARBOR (ARB) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ANN ARBOR (ARB) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602182236-hail-42.66--84.07",
   "lat": 42.66,
   "lon": -84.07,
   "zip": "",
   "city": "Fowlerville",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Fowlerville, MI. Hail size: 1.25\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1321131-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "PARSHALLVILLE",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1321131",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1321132-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "ROSE CENTER",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1321132",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1321133-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "(PTK)PONTIAC ARPT",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Official NWS Observations — NCEI Event #1321133",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-202602182331-hail-42.78--83.24",
   "lat": 42.78,
   "lon": -83.24,
   "zip": "",
   "city": "Lake Orion",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Lake Orion, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "ncei-1321135-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "ADAIR",
   "date": "2026-02-18",
   "county": "St. Clair",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1321135",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-202602182215-hail-42.71--84.41",
   "lat": 42.71,
   "lon": -84.41,
   "zip": "",
   "city": "Okemos",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Okemos, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202602182229-hail-42.56--84.30",
   "lat": 42.56,
   "lon": -84.3,
   "zip": "",
   "city": "Dansville",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Dansville, MI. Hail size: 1\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202602182258-hail-42.75--83.69",
   "lat": 42.75,
   "lon": -83.69,
   "zip": "",
   "city": "3 E Tyrone Township",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 E Tyrone Township, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202602182307-hail-42.73--83.62",
   "lat": 42.73,
   "lon": -83.62,
   "zip": "",
   "city": "4 W Davisburg",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 W Davisburg, MI. Hail size: 1\".",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202602182321-hail-42.65--83.43",
   "lat": 42.65,
   "lon": -83.43,
   "zip": "",
   "city": "4 E White Lake",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 4 E White Lake, MI. Hail size: 0.75\".",
   "sourceDetail": "NWS DTX — Official NWS Obs via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.75
  },
  {
   "id": "iem-lsr-2026-02-18-hail-42.79--82.57",
   "lat": 42.79,
   "lon": -82.57,
   "zip": "",
   "city": "3 SW GW0162 Saint Clair",
   "date": "2026-02-18",
   "county": "St. Clair",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Social media report with images of half dollar sized hail in China Twp.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-geo-2026-02-18T13:27:00Z-wind-45.65--84.52",
   "lat": 45.65,
   "lon": -84.52,
   "zip": "",
   "city": "2 WNW Cheboygan",
   "date": "2026-02-18",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Cheboygan, MI. Peak gust: 51 mph. AWOS station KSLH Cheboygan - Cheboygan County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-2-2026-02-18-Oakland-wind",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-02-18. Duration: 54 min. County: Oakland. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #2 (54 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-2"
  },
  {
   "id": "ww-DTX-SV-W-2-2026-02-18-Oakland-hail",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-02-18. Duration: 54 min. County: Oakland. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #2 (54 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-2"
  },
  {
   "id": "ww-GRR-SV-W-1-2026-02-18-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-02-18. Duration: 25 min. County: Ingham. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #1 (25 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-1"
  },
  {
   "id": "ww-GRR-SV-W-1-2026-02-18-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2026-02-18. Duration: 25 min. County: Ingham. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #1 (25 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-1"
  },
  {
   "id": "ww-DTX-SV-W-1-2026-02-18-Livingston-wind",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-02-18. Duration: 44 min. County: Livingston. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #1 (44 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-1"
  },
  {
   "id": "ww-DTX-SV-W-1-2026-02-18-Livingston-hail",
   "zip": "",
   "city": "",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2026-02-18. Duration: 44 min. County: Livingston. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #1 (44 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "DTX-SV-W-1"
  },
  {
   "id": "asos-bf-CMX-2026-02-18",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-02-18",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1321130-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "FOWLERVILLE",
   "date": "2026-02-18",
   "county": "Livingston",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Public — NCEI Event #1321130",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "ncei-1321134-2026-02-18",
   "lon": 211470,
   "zip": "",
   "city": "LAKE ORION",
   "date": "2026-02-18",
   "county": "Oakland",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Thunderstorms along the M-59 corridor produced several hail reports, with sizes up to 1.25 inches in diameter.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1321134",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 0.75
  },
  {
   "id": "sps-2026-02-18-shiawassee-hail",
   "zip": "",
   "city": "Shiawassee",
   "date": "2026-02-18",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-02-18-lapeer-hail",
   "zip": "",
   "city": "Lapeer",
   "date": "2026-02-18",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-02-18-macomb-hail",
   "zip": "",
   "city": "Macomb",
   "date": "2026-02-18",
   "county": "Macomb",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Macomb — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-02-18-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2026-02-18",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for St. Clair — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-02-16-leelanau-hail",
   "zip": "",
   "city": "Leelanau",
   "date": "2026-02-16",
   "county": "Leelanau",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Leelanau — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2026-02-06-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-02-06",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-06-wind-46.49--87.23",
   "lat": 46.49,
   "lon": -87.23,
   "zip": "",
   "city": "3 WSW Shot Point",
   "date": "2026-02-06",
   "county": "Marquette",
   "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": "Mesonet station MC001 Harvey MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PLN-2026-02-06",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2026-02-06",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-02-06-wind-45.06--83.43",
   "lat": 45.06,
   "lon": -83.43,
   "zip": "",
   "city": "1 SSE Alpena",
   "date": "2026-02-06",
   "county": "Alpena",
   "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": "Buoy station LPNM4 Alpena_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602061251-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-02-06",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602061323-wind-46.49--87.23",
   "lat": 46.49,
   "lon": -87.23,
   "zip": "",
   "city": "3 WSW Shot Point",
   "date": "2026-02-06",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 WSW Shot Point, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602061804-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2026-02-06",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202602062054-wind-45.06--83.43",
   "lat": 45.06,
   "lon": -83.43,
   "zip": "",
   "city": "1 SSE Alpena",
   "date": "2026-02-06",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Alpena, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T16:12:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 51 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:07:00Z-wind-45.33--83.58",
   "lat": 45.33,
   "lon": -83.58,
   "zip": "",
   "city": "6 WNW Presque Isle",
   "date": "2026-02-06",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 WNW Presque Isle, MI. Peak gust: 51 mph. Mesonet station MC053 Presque Isle 32.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:42:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 51 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:00:00Z-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 52 mph. Buoy station SWPM4 S.W. Pier, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:32:00Z-wind-46.19--84.56",
   "lat": 46.19,
   "lon": -84.56,
   "zip": "",
   "city": "4 SSE Rudyard",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE Rudyard, MI. Peak gust: 52 mph. Mesonet station MC009 Mi-01 Rudyard.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:44:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-02-06",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 52 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:00:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 52 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:45:00Z-wind-46.00--84.36",
   "lat": 46,
   "lon": -84.36,
   "zip": "",
   "city": "1 N Cedarville",
   "date": "2026-02-06",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cedarville, MI. Peak gust: 52 mph. Mesonet station MC072 M-134-W At Cedarville - La 16.9.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:15:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-02-06",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 53 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:52:00Z-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2026-02-06",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Rogers City, MI. Peak gust: 53 mph. AWOS station KPZQ Rogers City - Presque Isle County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T17:16:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2026-02-06",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 54 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:04:00Z-wind-46.01--85.01",
   "lat": 46.01,
   "lon": -85.01,
   "zip": "",
   "city": "2 ESE Brevort",
   "date": "2026-02-06",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ESE Brevort, MI. Peak gust: 54 mph. Mesonet station MC004 Mi-01 Brevort.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T20:13:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-02-06",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 54 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T22:14:00Z-wind-43.57--86.07",
   "lat": 43.57,
   "lon": -86.07,
   "zip": "",
   "city": "2 W Hesperia",
   "date": "2026-02-06",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 W Hesperia, MI. Peak gust: 51 mph. Mesonet station MC147 M-20 Mile Marker 16.6.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T18:00:00Z-wind-43.97--86.40",
   "lat": 43.97,
   "lon": -86.4,
   "zip": "",
   "city": "2 ENE Ludington",
   "date": "2026-02-06",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Ludington, MI. Peak gust: 52 mph. AWOS station KLDM Ludington Mason County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T19:40:00Z-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-02-06",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 55 mph. Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T12:45:00Z-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2026-02-06",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 51 mph. AWOS station KSAW Sawyer Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T13:16:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-02-06",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-02-06T14:20:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2026-02-06",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 52 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2026-02-06",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2026-02-06",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P59-2026-02-06",
   "lat": 47.4674,
   "lon": -87.8751,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-02-06",
   "county": "Keweenaw",
   "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": "Copper Harbor (P59) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Copper Harbor (P59) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1320342-2026-02-02",
   "lon": 211347,
   "zip": "",
   "city": "DANSVILLE",
   "date": "2026-02-02",
   "county": "Ingham",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "An isolated thunderstorm produced brief large hail over Ingham County.",
   "sourceDetail": "Verified by Trained Spotter — NCEI Event #1320342",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-geo-2026-01-22T11:00:00Z-wind-45.14--85.65",
   "lat": 45.14,
   "lon": -85.65,
   "zip": "",
   "city": "1 WNW Northport",
   "date": "2026-01-22",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Northport, MI. Peak gust: 51 mph. Mesonet station MINTH 1.5 W Northport (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-22T09:37:00Z-wind-45.36--85.18",
   "lat": 45.36,
   "lon": -85.18,
   "zip": "",
   "city": "4 W Bayshore",
   "date": "2026-01-22",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 W Bayshore, MI. Peak gust: 52 mph. Mesonet station MC019 Us31s-Mm005.7.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P59-2026-01-22",
   "lat": 47.4674,
   "lon": -87.8751,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-01-22",
   "county": "Keweenaw",
   "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": "Copper Harbor (P59) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Copper Harbor (P59) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-01-19",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-01-19",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-45.03--85.69",
   "lat": 45.03,
   "lon": -85.69,
   "zip": "",
   "city": "4 ENE Leland",
   "date": "2026-01-19",
   "county": "Leelanau",
   "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": "Mesonet station MIWLD Westleland.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-01-19",
   "county": "Grand Traverse",
   "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 KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-01-19",
   "county": "Mason",
   "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": "Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-19-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-01-19",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601190724-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-01-19",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601191215-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2026-01-19",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601191400-wind-45.03--85.69",
   "lat": 45.03,
   "lon": -85.69,
   "zip": "",
   "city": "4 ENE Leland",
   "date": "2026-01-19",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 ENE Leland, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601191419-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2026-01-19",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601191440-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2026-01-19",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601191628-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-01-19",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T15:04:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2026-01-19",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 52 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T17:21:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2026-01-19",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 54 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T14:47:00Z-wind-45.36--85.18",
   "lat": 45.36,
   "lon": -85.18,
   "zip": "",
   "city": "4 W Bayshore",
   "date": "2026-01-19",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 W Bayshore, MI. Peak gust: 55 mph. Mesonet station MC019 Us31s-Mm005.7.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T15:31:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2026-01-19",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 55 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T14:25:00Z-wind-43.95--86.46",
   "lat": 43.95,
   "lon": -86.46,
   "zip": "",
   "city": "1 WSW Ludington",
   "date": "2026-01-19",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Ludington, MI. Peak gust: 53 mph. Mesonet station DVI08297 Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T10:03:00Z-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2026-01-19",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 54 mph. Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T12:42:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2026-01-19",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 54 mph. Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T13:00:00Z-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2026-01-19",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Holland, MI. Peak gust: 54 mph. Mesonet station MC097 US-31 Mile Marker 47.0 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T15:30:00Z-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2026-01-19",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 56 mph. Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T10:43:00Z-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2026-01-19",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 51 mph. AWOS station KSAW Sawyer Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T10:55:00Z-wind-46.27--87.12",
   "lat": 46.27,
   "lon": -87.12,
   "zip": "",
   "city": "2 NW Kiva",
   "date": "2026-01-19",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NW Kiva, MI. Peak gust: 51 mph. Mesonet station MC037 Kiva MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T14:08:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2026-01-19",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 52 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-19T11:44:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-01-19",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 55 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2026-01-19",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2026-01-19",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2026-01-19",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2026-01-19",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-14-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-01-14",
   "county": "Dickinson",
   "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 KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-14-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-01-14",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-14-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-01-14",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-14-wind-46.49--87.23",
   "lat": 46.49,
   "lon": -87.23,
   "zip": "",
   "city": "3 WSW Shot Point",
   "date": "2026-01-14",
   "county": "Marquette",
   "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": "Mesonet station MC001 Harvey MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601140533-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2026-01-14",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601140751-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-01-14",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601140824-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-01-14",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601141228-wind-46.49--87.23",
   "lat": 46.49,
   "lon": -87.23,
   "zip": "",
   "city": "3 WSW Shot Point",
   "date": "2026-01-14",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 WSW Shot Point, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-14T10:51:00Z-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2026-01-14",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 50 mph. AWOS station KSAW Sawyer Airport. Estimated wind gusts in the local area were 40 to 50 mph in the Gwinn and K.I. Sawyer areas with frequent white-outs this morning.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-14T13:56:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2026-01-14",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 53 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-14T05:46:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2026-01-14",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 56 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-14T10:38:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-01-14",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 56 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2026-01-14",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2026-01-14",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-13-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2026-01-13",
   "county": "Marquette",
   "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": "U-MICH and NMU Mesonet station GISM4_ 11 N Trowbridge Park.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601140400-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2026-01-13",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P59-2026-01-13",
   "lat": 47.4674,
   "lon": -87.8751,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2026-01-13",
   "county": "Keweenaw",
   "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": "Copper Harbor (P59) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Copper Harbor (P59) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P53-2026-01-13",
   "lat": 46.4119,
   "lon": -86.6508,
   "zip": "",
   "city": "Munising",
   "date": "2026-01-13",
   "county": "Alger",
   "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": "Munising (P53) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Munising (P53) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IMT-2026-01-13",
   "lat": 45.8184,
   "lon": -88.1146,
   "zip": "",
   "city": "IRON MOUNTAIN",
   "date": "2026-01-13",
   "county": "Florence",
   "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": "IRON MOUNTAIN (IMT) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — IRON MOUNTAIN (IMT) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-FA-W-1-2026-01-10-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-01-10",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Areal Flood Warning issued by NWS APX on 2026-01-10. Duration: 711 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Areal Flood Warning #1 (711 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FA-W-1"
  },
  {
   "id": "ww-APX-FL-W-1-2026-01-10-Arenac",
   "zip": "",
   "city": "",
   "date": "2026-01-10",
   "county": "Arenac",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS APX on 2026-01-10. Duration: 816 min. County: Arenac. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flood Warning #1 (816 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FL-W-1"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-01-09",
   "county": "Alpena",
   "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 KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-43.09--85.56",
   "lat": 43.09,
   "lon": -85.56,
   "zip": "",
   "city": "3 ENE Belmont",
   "date": "2026-01-09",
   "county": "Kent",
   "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": "Mesonet station GW6887 ROCKFORD.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-01-09",
   "county": "Allegan",
   "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 KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2026-01-09",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2026-01-09",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-8D4-2026-01-09",
   "lat": 43.1274,
   "lon": -85.6791,
   "zip": "",
   "city": "Sparta",
   "date": "2026-01-09",
   "county": "Kent",
   "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": "Sparta (8D4) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Sparta (8D4) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-01-09",
   "county": "Calhoun",
   "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 station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-01-09",
   "county": "Calhoun",
   "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 KRMY Marshall Brooks Field.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-01-09",
   "county": "Jackson",
   "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 station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2026-01-09-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-01-09",
   "county": "Ionia",
   "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 KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601090505-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2026-01-09",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601090557-wind-43.09--85.56",
   "lat": 43.09,
   "lon": -85.56,
   "zip": "",
   "city": "3 ENE Belmont",
   "date": "2026-01-09",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Belmont, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091051-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2026-01-09",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091155-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2026-01-09",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091258-wind-43.13--85.68",
   "lat": 43.13,
   "lon": -85.68,
   "zip": "",
   "city": "3 SE Sparta",
   "date": "2026-01-09",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE Sparta, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091304-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2026-01-09",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091335-wind-42.23--84.95",
   "lat": 42.23,
   "lon": -84.95,
   "zip": "",
   "city": "2 SSE Marshall",
   "date": "2026-01-09",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Marshall, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091435-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2026-01-09",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 77 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 77,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202601091526-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2026-01-09",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T05:12:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2026-01-09",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 52 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T05:23:00Z-wind-44.27--85.42",
   "lat": 44.27,
   "lon": -85.42,
   "zip": "",
   "city": "1 N Cadillac",
   "date": "2026-01-09",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cadillac, MI. Peak gust: 52 mph. AWOS station KCAD Cadillac - Wexford Count Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T05:31:00Z-wind-44.68--84.73",
   "lat": 44.68,
   "lon": -84.73,
   "zip": "",
   "city": "2 NNW Grayling",
   "date": "2026-01-09",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NNW Grayling, MI. Peak gust: 54 mph. AWOS station KGOV Grayling - Army Airfield.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T07:20:00Z-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2026-01-09",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Rogers City, MI. Peak gust: 54 mph. AWOS station KPZQ Rogers City - Presque Isle County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T06:08:00Z-wind-45.15--84.19",
   "lat": 45.15,
   "lon": -84.19,
   "zip": "",
   "city": "1 E Clear Lake State Pa",
   "date": "2026-01-09",
   "county": "Montmorency",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 E Clear Lake State Pa, MI. Peak gust: 55 mph. Mesonet station ATAM4 Atlanta.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T13:10:00Z-wind-42.66--85.65",
   "lat": 42.66,
   "lon": -85.65,
   "zip": "",
   "city": "1 SSW Wayland",
   "date": "2026-01-09",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Wayland, MI. Peak gust: 51 mph. Mesonet station BDLM4 Plainwell.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T14:00:00Z-wind-42.71--84.48",
   "lat": 42.71,
   "lon": -84.48,
   "zip": "",
   "city": "2 SSE East Lansing",
   "date": "2026-01-09",
   "county": "Ingham",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE East Lansing, MI. Peak gust: 51 mph. Mesonet station MIHTC 1.8 S East Lansing (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T14:48:00Z-wind-42.57--84.82",
   "lat": 42.57,
   "lon": -84.82,
   "zip": "",
   "city": "1 E Charlotte",
   "date": "2026-01-09",
   "county": "Eaton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 E Charlotte, MI. Peak gust: 51 mph. AWOS station KFPK Charlotte Fitch Beach Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T11:45:00Z-wind-42.93--85.65",
   "lat": 42.93,
   "lon": -85.65,
   "zip": "",
   "city": "2 S Grand Rapids",
   "date": "2026-01-09",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Grand Rapids, MI. Peak gust: 52 mph. Mesonet station EW7706 Grand Rapids.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T11:45:00Z-wind-42.83--85.83",
   "lat": 42.83,
   "lon": -85.83,
   "zip": "",
   "city": "Jamestown",
   "date": "2026-01-09",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Jamestown, MI. Peak gust: 52 mph. Mesonet station CW9987 Jamestown.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:50:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2026-01-09",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 52 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T11:55:00Z-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2026-01-09",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Grand Valley, MI. Peak gust: 53 mph. Mesonet station GW5392 ALLENDALE.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:00:00Z-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2026-01-09",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Dorr, MI. Peak gust: 53 mph. Mesonet station AX192 WAYLAND.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T11:01:00Z-wind-42.98--86.10",
   "lat": 42.98,
   "lon": -86.1,
   "zip": "",
   "city": "5 NNW Olive Center",
   "date": "2026-01-09",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 NNW Olive Center, MI. Peak gust: 54 mph. Mesonet station GW3616 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:10:00Z-wind-42.65--85.76",
   "lat": 42.65,
   "lon": -85.76,
   "zip": "",
   "city": "2 N Hopkins",
   "date": "2026-01-09",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 N Hopkins, MI. Peak gust: 54 mph. Mesonet station AX249 HOPKINS.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:20:00Z-wind-42.64--85.68",
   "lat": 42.64,
   "lon": -85.68,
   "zip": "",
   "city": "2 WNW Bradley",
   "date": "2026-01-09",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Bradley, MI. Peak gust: 54 mph. Mesonet station CW5467 Hopkins.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:13:00Z-wind-43.43--86.00",
   "lat": 43.43,
   "lon": -86,
   "zip": "",
   "city": "1 SSE Reeman",
   "date": "2026-01-09",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Reeman, MI. Peak gust: 55 mph. AWOS station KFFX Fremont Municipal Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:42:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2026-01-09",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 55 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T13:58:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2026-01-09",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 55 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T10:34:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2026-01-09",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 56 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-09T12:05:00Z-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2026-01-09",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near East Grand Rapids, MI. Peak gust: 56 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-CFS-2026-01-09",
   "lat": 43.4588,
   "lon": -83.4454,
   "zip": "",
   "city": "Caro",
   "date": "2026-01-09",
   "county": "Tuscola",
   "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": "Caro (CFS) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Caro (CFS) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2026-01-09",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2026-01-09",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2026-01-09",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2026-01-09",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-01-09",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-01-09",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ADG-2026-01-09",
   "lat": 41.8677,
   "lon": -84.0773,
   "zip": "",
   "city": "ADRIAN",
   "date": "2026-01-09",
   "county": "Fulton",
   "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": "ADRIAN (ADG) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ADRIAN (ADG) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2026-01-09",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2026-01-09",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-RMY-2026-01-09",
   "lat": 42.2512,
   "lon": -84.9554,
   "zip": "",
   "city": "MARSHALL",
   "date": "2026-01-09",
   "county": "Calhoun",
   "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": "MARSHALL (RMY) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MARSHALL (RMY) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2026-01-09",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2026-01-09",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2026-01-09",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2026-01-09",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2026-01-09",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2026-01-09",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2026-01-09",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2026-01-09",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 67 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2026-01-09",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2026-01-09",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ONZ-2026-01-09",
   "lat": 42.0991,
   "lon": -83.1615,
   "zip": "",
   "city": "DETROIT/GROSSE I",
   "date": "2026-01-09",
   "county": "Wayne",
   "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": "DETROIT/GROSSE I (ONZ) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/GROSSE I (ONZ) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARB-2026-01-09",
   "lat": 42.224,
   "lon": -83.7397,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2026-01-09",
   "county": "Washtenaw",
   "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": "ANN ARBOR (ARB) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ANN ARBOR (ARB) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MTC-2026-01-09",
   "lat": 42.6083,
   "lon": -82.8355,
   "zip": "",
   "city": "SELFRIDGE ANGB",
   "date": "2026-01-09",
   "county": "Macomb",
   "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": "SELFRIDGE ANGB (MTC) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SELFRIDGE ANGB (MTC) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-APN-2026-01-09",
   "lat": 45.0717,
   "lon": -83.5644,
   "zip": "",
   "city": "ALPENA",
   "date": "2026-01-09",
   "county": "Alpena",
   "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": "ALPENA (APN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ALPENA (APN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2026-01-09",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2026-01-09",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 66 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-Y70-2026-01-09",
   "lat": 42.938,
   "lon": -85.0606,
   "zip": "",
   "city": "Ionia",
   "date": "2026-01-09",
   "county": "Ionia",
   "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": "Ionia (Y70) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Ionia (Y70) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2026-01-09",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2026-01-09",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2026-01-09-tuscola-wind",
   "zip": "",
   "city": "Tuscola",
   "date": "2026-01-09",
   "county": "Tuscola",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Tuscola — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-01-09-ionia-wind",
   "zip": "",
   "city": "Ionia",
   "date": "2026-01-09",
   "county": "Ionia",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ionia — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2026-01-09-huron-wind",
   "zip": "",
   "city": "Huron",
   "date": "2026-01-09",
   "county": "Huron",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 62,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Huron — wind gusts up to 55 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-APN-2026-01-08",
   "lat": 45.0717,
   "lon": -83.5644,
   "zip": "",
   "city": "ALPENA",
   "date": "2026-01-08",
   "county": "Alpena",
   "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": "ALPENA (APN) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ALPENA (APN) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2026-01-08",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2026-01-08",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-02T11:06:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2026-01-02",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-02T12:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2026-01-02",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 53 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-31T20:00:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-31",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 51 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-31T21:03:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-31",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2026-01-01T03:02:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-31",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 53 mph. ASOS station KP53 Munising Lakeshore. The period of the Non-Tstm Wnd Gst event was 24 hours.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2025-12-30",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2025-12-30",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2025-12-29",
   "county": "Jackson",
   "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 KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-SAW-2025-12-29",
   "lat": 46.3536,
   "lon": -87.3954,
   "zip": "",
   "city": "GWINN/SAWYER AFB",
   "date": "2025-12-29",
   "county": "Marquette",
   "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": "GWINN/SAWYER AFB (SAW) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GWINN/SAWYER AFB (SAW) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-29",
   "county": "Keweenaw",
   "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 station KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-29",
   "county": "Marquette",
   "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": "U-MICH and NMU Mesonet station /GISM4/_ 11 N Trowbridge Park.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2025-12-29",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2025-12-29",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2025-12-29",
   "county": "Calhoun",
   "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 KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-29",
   "county": "Ontonagon",
   "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": "Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2025-12-29",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2025-12-29",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-29",
   "county": "Muskegon",
   "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 station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2025-12-29",
   "county": "Chippewa",
   "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": "Buoy station SWPM4 S.W. Pier_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-29",
   "county": "Chippewa",
   "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": "Buoy station PTIM4 Point Iroquois_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.27--87.12",
   "lat": 46.27,
   "lon": -87.12,
   "zip": "",
   "city": "2 NW Kiva",
   "date": "2025-12-29",
   "county": "Marquette",
   "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": "Mesonet station MC037 Kiva MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-29",
   "county": "Houghton",
   "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 station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2025-12-29",
   "county": "Delta",
   "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": "Mesonet station HBRM4 High Bridge RAWS.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-29",
   "county": "Alger",
   "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 station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.22--86.31",
   "lat": 44.22,
   "lon": -86.31,
   "zip": "",
   "city": "2 SSE Manistee",
   "date": "2025-12-29",
   "county": "Manistee",
   "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": "Mesonet station MC048 Manistee Site 8.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-29",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.35--86.27",
   "lat": 44.35,
   "lon": -86.27,
   "zip": "",
   "city": "3 WSW Onekama",
   "date": "2025-12-29",
   "county": "Manistee",
   "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": "Mesonet station EW5499 Onekama.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-12-29",
   "county": "Schoolcraft",
   "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": "Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-43.95--86.46",
   "lat": 43.95,
   "lon": -86.46,
   "zip": "",
   "city": "1 WSW Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "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": "Mesonet station DVI08297 Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "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": "Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.06--85.70",
   "lat": 45.06,
   "lon": -85.7,
   "zip": "",
   "city": "4 NE Leland",
   "date": "2025-12-29",
   "county": "Leelanau",
   "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": "Mesonet station MC113 Ess 1 Mm-22 At North Eagle Hwy.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-43.06--86.25",
   "lat": 43.06,
   "lon": -86.25,
   "zip": "",
   "city": "1 W Grand Haven",
   "date": "2025-12-29",
   "county": "Ottawa",
   "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": "Mesonet station GW5092 GRAND HAVEN.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CVX-2025-12-29",
   "lat": 45.3047,
   "lon": -85.2747,
   "zip": "",
   "city": "CHARLEVOIX",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "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": "CHARLEVOIX (CVX) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — CHARLEVOIX (CVX) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-12-29",
   "county": "Allegan",
   "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": "Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBL-2025-12-29",
   "lat": 44.2725,
   "lon": -86.2469,
   "zip": "",
   "city": "MANISTEE",
   "date": "2025-12-29",
   "county": "Manistee",
   "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": "MANISTEE (MBL) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MANISTEE (MBL) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-12-29",
   "county": "Ottawa",
   "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": "Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "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 station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-12-29",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.56--87.40",
   "lat": 46.56,
   "lon": -87.4,
   "zip": "",
   "city": "1 NNW Marquette",
   "date": "2025-12-29",
   "county": "Marquette",
   "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": "Dispatch has multiple reports of trees and branches on power lines along with low hanging power lines in Marquette Township and the City of Marquette. Some of the wires have been reported as snapped.",
   "sourceDetail": "NWS MQT — Law Enforcement via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-12-29",
   "county": "Dickinson",
   "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 KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PLN-2025-12-29",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2025-12-29",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.03--85.69",
   "lat": 45.03,
   "lon": -85.69,
   "zip": "",
   "city": "4 ENE Leland",
   "date": "2025-12-29",
   "county": "Leelanau",
   "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": "Mesonet station MIWLD West leland.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.76--85.52",
   "lat": 44.76,
   "lon": -85.52,
   "zip": "",
   "city": "4 W Bates",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "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": "Mesonet station MC112 Mdot Site.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-12-29",
   "county": "Chippewa",
   "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": "Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.90--83.45",
   "lat": 44.9,
   "lon": -83.45,
   "zip": "",
   "city": "1 WSW Ossineke",
   "date": "2025-12-29",
   "county": "Alpena",
   "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": "Report from trained spotter of gust to 65mph around 3pm_ amid other gusts to 35-40mph. Significant blowing snow.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 65,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2025-12-29",
   "county": "Presque Isle",
   "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 KPZQ Rogers City - Presque Isle County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-44.25--83.46",
   "lat": 44.25,
   "lon": -83.46,
   "zip": "",
   "city": "3 SSE East Tawas",
   "date": "2025-12-29",
   "county": "Iosco",
   "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": "Mesonet station XTAW Tawas Point.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290505-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2025-12-29",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290535-wind-46.35--87.40",
   "lat": 46.35,
   "lon": -87.4,
   "zip": "",
   "city": "5 S Sands",
   "date": "2025-12-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 S Sands, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290607-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-29",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290630-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290647-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-12-29",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290658-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2025-12-29",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290700-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-29",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290704-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2025-12-29",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290851-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-29",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290942-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 83 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 83,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290954-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 75 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 75,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291004-wind-46.27--87.12",
   "lat": 46.27,
   "lon": -87.12,
   "zip": "",
   "city": "2 NW Kiva",
   "date": "2025-12-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NW Kiva, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291013-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-29",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291023-wind-46.13--86.58",
   "lat": 46.13,
   "lon": -86.58,
   "zip": "",
   "city": "6 NNE Chicago Lake",
   "date": "2025-12-29",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 NNE Chicago Lake, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291035-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-29",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 74 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291204-wind-44.22--86.31",
   "lat": 44.22,
   "lon": -86.31,
   "zip": "",
   "city": "2 SSE Manistee",
   "date": "2025-12-29",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Manistee, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291224-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-29",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291315-wind-44.35--86.27",
   "lat": 44.35,
   "lon": -86.27,
   "zip": "",
   "city": "3 WSW Onekama",
   "date": "2025-12-29",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 WSW Onekama, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291319-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-12-29",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291335-wind-43.95--86.46",
   "lat": 43.95,
   "lon": -86.46,
   "zip": "",
   "city": "1 WSW Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Ludington, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291340-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291345-wind-45.06--85.70",
   "lat": 45.06,
   "lon": -85.7,
   "zip": "",
   "city": "4 NE Leland",
   "date": "2025-12-29",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NE Leland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291415-wind-43.06--86.25",
   "lat": 43.06,
   "lon": -86.25,
   "zip": "",
   "city": "1 W Grand Haven",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Grand Haven, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291429-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291430-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-12-29",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291435-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2025-12-29",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291436-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291440-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291530-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-12-29",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291600-wind-46.56--87.40",
   "lat": 46.56,
   "lon": -87.4,
   "zip": "",
   "city": "1 NNW Marquette",
   "date": "2025-12-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Marquette, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS MQT — Law Enforcement via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202512291634-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-12-29",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291639-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291732-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291800-wind-45.03--85.69",
   "lat": 45.03,
   "lon": -85.69,
   "zip": "",
   "city": "4 ENE Leland",
   "date": "2025-12-29",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 ENE Leland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291904-wind-44.76--85.52",
   "lat": 44.76,
   "lon": -85.52,
   "zip": "",
   "city": "4 W Bates",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 W Bates, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291938-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512291946-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 69 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 69,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512292000-wind-44.90--83.45",
   "lat": 44.9,
   "lon": -83.45,
   "zip": "",
   "city": "1 WSW Ossineke",
   "date": "2025-12-29",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "severe",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Ossineke, MI. Peak gust: 75 mph.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 75,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202512292014-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2025-12-29",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Rogers City, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512292016-wind-44.25--83.46",
   "lat": 44.25,
   "lon": -83.46,
   "zip": "",
   "city": "3 SSE East Tawas",
   "date": "2025-12-29",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SSE East Tawas, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T13:56:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2025-12-29",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 51 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T17:08:00Z-wind-44.76--86.06",
   "lat": 44.76,
   "lon": -86.06,
   "zip": "",
   "city": "4 S Empire",
   "date": "2025-12-29",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Empire, MI. Peak gust: 51 mph. Mesonet station SBDM4 Bear.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:04:00Z-wind-46.00--84.36",
   "lat": 46,
   "lon": -84.36,
   "zip": "",
   "city": "1 N Cedarville",
   "date": "2025-12-29",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cedarville, MI. Peak gust: 52 mph. Mesonet station MC072 M-134-W At Cedarville - La 16.9.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T16:05:00Z-wind-44.97--85.38",
   "lat": 44.97,
   "lon": -85.38,
   "zip": "",
   "city": "3 NNW Kewadin",
   "date": "2025-12-29",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNW Kewadin, MI. Peak gust: 52 mph. Mesonet station DVI02572 Elk Rapids.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T16:10:00Z-wind-44.27--85.42",
   "lat": 44.27,
   "lon": -85.42,
   "zip": "",
   "city": "1 N Cadillac",
   "date": "2025-12-29",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cadillac, MI. Peak gust: 52 mph. AWOS station KCAD Cadillac - Wexford Count Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T16:28:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 52 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T19:00:00Z-wind-45.14--85.65",
   "lat": 45.14,
   "lon": -85.65,
   "zip": "",
   "city": "1 WNW Northport",
   "date": "2025-12-29",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Northport, MI. Peak gust: 52 mph. Mesonet station MINTH 1.5 W Northport (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:46:00Z-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2025-12-29",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 53 mph. AWOS station KFKS Frankfort - Dow Memorial Field.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:48:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-29",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 53 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T13:59:00Z-wind-44.22--85.81",
   "lat": 44.22,
   "lon": -85.81,
   "zip": "",
   "city": "7 ENE Dublin",
   "date": "2025-12-29",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 7 ENE Dublin, MI. Peak gust: 53 mph. Mesonet station MC047 Wellston Ess Site 7.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:00:00Z-wind-44.82--85.44",
   "lat": 44.82,
   "lon": -85.44,
   "zip": "",
   "city": "3 N Bates",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 N Bates, MI. Peak gust: 53 mph. Mesonet station MIWMT Williamsburg.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T18:20:00Z-wind-44.68--84.73",
   "lat": 44.68,
   "lon": -84.73,
   "zip": "",
   "city": "2 NNW Grayling",
   "date": "2025-12-29",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NNW Grayling, MI. Peak gust: 53 mph. AWOS station KGOV Grayling - Army Airfield.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T19:18:00Z-wind-46.25--84.47",
   "lat": 46.25,
   "lon": -84.47,
   "zip": "",
   "city": "1 SSE Kinross",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Kinross, MI. Peak gust: 53 mph. AWOS station KCIU Kinross - Chippewa County International Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:30:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2025-12-29",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 54 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:31:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 54 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T16:29:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-12-29",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 54 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T18:11:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2025-12-29",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 54 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T19:32:00Z-wind-44.68--84.13",
   "lat": 44.68,
   "lon": -84.13,
   "zip": "",
   "city": "1 N Mio",
   "date": "2025-12-29",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Mio, MI. Peak gust: 54 mph. Mesonet station MMOM4 Mio.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T19:35:00Z-wind-44.45--83.40",
   "lat": 44.45,
   "lon": -83.4,
   "zip": "",
   "city": "1 SW Wurtsmith Airfield",
   "date": "2025-12-29",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Wurtsmith Airfield, MI. Peak gust: 54 mph. AWOS station KOSC Oscoda - Wurtsmith AFB.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T11:18:00Z-wind-45.70--85.57",
   "lat": 45.7,
   "lon": -85.57,
   "zip": "",
   "city": "1 W Beaver Island",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Beaver Island, MI. Peak gust: 55 mph. AWOS station KSJX Beaver Island.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T20:16:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-12-29",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 55 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T16:25:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2025-12-29",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 56 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T19:10:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-12-29",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 56 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T07:34:00Z-wind-42.98--86.10",
   "lat": 42.98,
   "lon": -86.1,
   "zip": "",
   "city": "5 NNW Olive Center",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 NNW Olive Center, MI. Peak gust: 51 mph. Mesonet station GW3616 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:34:00Z-wind-42.86--84.91",
   "lat": 42.86,
   "lon": -84.91,
   "zip": "",
   "city": "1 SW Portland",
   "date": "2025-12-29",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Portland, MI. Peak gust: 51 mph. Mesonet station MC149 I-96 Mile Marker 76.0.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:00:00Z-wind-43.74--86.36",
   "lat": 43.74,
   "lon": -86.36,
   "zip": "",
   "city": "1 SW Weare",
   "date": "2025-12-29",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Weare, MI. Peak gust: 51 mph. Mesonet station MIHRT 1.2 SW Weare (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T07:15:00Z-wind-42.73--85.65",
   "lat": 42.73,
   "lon": -85.65,
   "zip": "",
   "city": "4 E Dorr",
   "date": "2025-12-29",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Dorr, MI. Peak gust: 52 mph. Mesonet station AX192 WAYLAND.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T07:19:00Z-wind-43.05--85.91",
   "lat": 43.05,
   "lon": -85.91,
   "zip": "",
   "city": "2 ESE Coopersville",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ESE Coopersville, MI. Peak gust: 52 mph. Mesonet station MC109 Mi-03 Coopersville.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T13:12:00Z-wind-43.97--86.40",
   "lat": 43.97,
   "lon": -86.4,
   "zip": "",
   "city": "2 ENE Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Ludington, MI. Peak gust: 52 mph. AWOS station KLDM Ludington Mason County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:19:00Z-wind-43.56--86.39",
   "lat": 43.56,
   "lon": -86.39,
   "zip": "",
   "city": "2 W New Era",
   "date": "2025-12-29",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 W New Era, MI. Peak gust: 52 mph. Mesonet station MC160 US 31 Mile Marker 140.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:04:00Z-wind-42.46--86.11",
   "lat": 42.46,
   "lon": -86.11,
   "zip": "",
   "city": "2 SW Pullman",
   "date": "2025-12-29",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Pullman, MI. Peak gust: 52 mph. Mesonet station FW1266 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:06:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2025-12-29",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 53 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:45:00Z-wind-43.00--86.10",
   "lat": 43,
   "lon": -86.1,
   "zip": "",
   "city": "6 SSW Nunica",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 SSW Nunica, MI. Peak gust: 53 mph. Mesonet station DVI10249 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:00:00Z-wind-43.68--86.41",
   "lat": 43.68,
   "lon": -86.41,
   "zip": "",
   "city": "Mears",
   "date": "2025-12-29",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mears, MI. Peak gust: 53 mph. Mesonet station MIMEA Mears (MAWN).",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:09:00Z-wind-43.64--86.33",
   "lat": 43.64,
   "lon": -86.33,
   "zip": "",
   "city": "3 NE Shelby",
   "date": "2025-12-29",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Shelby, MI. Peak gust: 53 mph. AWOS station C049 2 NE Shelby.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T07:29:00Z-wind-42.85--85.58",
   "lat": 42.85,
   "lon": -85.58,
   "zip": "",
   "city": "1 N Dutton",
   "date": "2025-12-29",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dutton, MI. Peak gust: 54 mph. Mesonet station MC154 M-6 Mile Marker 12.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:45:00Z-wind-43.69--85.52",
   "lat": 43.69,
   "lon": -85.52,
   "zip": "",
   "city": "2 SW Big Rapids",
   "date": "2025-12-29",
   "county": "Mecosta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Big Rapids, MI. Peak gust: 54 mph. Mesonet station MC143 US-131 Mile Marker 138.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:49:00Z-wind-43.57--86.07",
   "lat": 43.57,
   "lon": -86.07,
   "zip": "",
   "city": "2 W Hesperia",
   "date": "2025-12-29",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 W Hesperia, MI. Peak gust: 54 mph. Mesonet station MC147 M-20 Mile Marker 16.6.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:15:00Z-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WSW Grand Valley, MI. Peak gust: 54 mph. Mesonet station GW5392 ALLENDALE.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:45:00Z-wind-42.81--85.98",
   "lat": 42.81,
   "lon": -85.98,
   "zip": "",
   "city": "2 E Zeeland",
   "date": "2025-12-29",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Zeeland, MI. Peak gust: 55 mph. Mesonet station MC155 I-196 Mile Marker 55.5.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:45:00Z-wind-43.41--86.31",
   "lat": 43.41,
   "lon": -86.31,
   "zip": "",
   "city": "2 ENE Whitehall",
   "date": "2025-12-29",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Whitehall, MI. Peak gust: 55 mph. Mesonet station MC159 US 31 Mile Marker 128.8.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T14:53:00Z-wind-43.96--86.46",
   "lat": 43.96,
   "lon": -86.46,
   "zip": "",
   "city": "1 W Ludington",
   "date": "2025-12-29",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Ludington, MI. Peak gust: 55 mph. Video from storm chaser of wind measured on beach with handheld anemometer.",
   "sourceDetail": "NWS GRR — Storm Chaser via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-12-29T06:15:00Z-wind-42.22--85.78",
   "lat": 42.22,
   "lon": -85.78,
   "zip": "",
   "city": "1 NNE Mattawan",
   "date": "2025-12-29",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNE Mattawan, MI. Peak gust: 56 mph. Mesonet station MC168 I-94 Mile Marker 65.9.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T06:49:00Z-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2025-12-29",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Holland, MI. Peak gust: 56 mph. Mesonet station MC097 US-31 Mile Marker 47.0 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T08:15:00Z-wind-43.22--85.57",
   "lat": 43.22,
   "lon": -85.57,
   "zip": "",
   "city": "1 W Cedar Springs",
   "date": "2025-12-29",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Cedar Springs, MI. Peak gust: 56 mph. Mesonet station MC151 US-131 Mile Marker 104.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T10:16:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-29",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 56 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:15:00Z-wind-43.43--86.00",
   "lat": 43.43,
   "lon": -86,
   "zip": "",
   "city": "1 SSE Reeman",
   "date": "2025-12-29",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Reeman, MI. Peak gust: 56 mph. AWOS station KFFX Fremont Municipal Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T13:15:00Z-wind-45.97--86.17",
   "lat": 45.97,
   "lon": -86.17,
   "zip": "",
   "city": "4 E Manistique",
   "date": "2025-12-29",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Manistique, MI. Peak gust: 51 mph. AWOS station KISQ Schoolcraft Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:19:00Z-wind-46.33--86.47",
   "lat": 46.33,
   "lon": -86.47,
   "zip": "",
   "city": "1 S Shingleton",
   "date": "2025-12-29",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Shingleton, MI. Peak gust: 52 mph. Mesonet station MC071 Shingleton MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T15:49:00Z-wind-45.79--87.08",
   "lat": 45.79,
   "lon": -87.08,
   "zip": "",
   "city": "3 N Escanaba",
   "date": "2025-12-29",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 N Escanaba, MI. Peak gust: 52 mph. Mesonet station MC106 Escanaba River Bridge MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T17:15:00Z-wind-45.97--86.17",
   "lat": 45.97,
   "lon": -86.17,
   "zip": "",
   "city": "4 E Manistique",
   "date": "2025-12-29",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Manistique, MI. Peak gust: 52 mph. AWOS station KISQ Schoolcraft Co. Airport.",
   "sourceDetail": "NWS MQT — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T10:59:00Z-wind-46.35--87.12",
   "lat": 46.35,
   "lon": -87.12,
   "zip": "",
   "city": "1 W Sundell",
   "date": "2025-12-29",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Sundell, MI. Peak gust: 55 mph. Mesonet station MC038 Sundell MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T11:14:00Z-wind-47.39--88.28",
   "lat": 47.39,
   "lon": -88.28,
   "zip": "",
   "city": "Phoenix",
   "date": "2025-12-29",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Phoenix, MI. Peak gust: 55 mph. Mesonet station MC067 Phoenix MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T12:34:00Z-wind-45.55--87.27",
   "lat": 45.55,
   "lon": -87.27,
   "zip": "",
   "city": "8 ESE Gourley",
   "date": "2025-12-29",
   "county": "Menominee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 ESE Gourley, MI. Peak gust: 55 mph. Mesonet station MC034 Cedar River MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T10:16:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-12-29",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 56 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T10:49:00Z-wind-46.16--86.98",
   "lat": 46.16,
   "lon": -86.98,
   "zip": "",
   "city": "3 S Trenary",
   "date": "2025-12-29",
   "county": "Delta",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 S Trenary, MI. Peak gust: 56 mph. Mesonet station MC036 Trenary MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T18:49:00Z-wind-46.49--87.19",
   "lat": 46.49,
   "lon": -87.19,
   "zip": "",
   "city": "2 SW Shot Point",
   "date": "2025-12-29",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SW Shot Point, MI. Peak gust: 56 mph. Spotter ID MQT-01. 49 mph winds at shot point beach over the last 24hrs. Grill, chairs blown off of our deck . No power since 130am last night. Waves 20. Shore line flooding. Delayed report.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-GRR-FL-W-7-2025-12-29-Ingham",
   "zip": "",
   "city": "",
   "date": "2025-12-29",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2025-12-29. Duration: 851 min. Counties: Ingham, Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #7 (851 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-7"
  },
  {
   "id": "ww-GRR-FL-W-7-2025-12-29-Clinton",
   "zip": "",
   "city": "",
   "date": "2025-12-29",
   "county": "Clinton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flood Warning issued by NWS GRR on 2025-12-29. Duration: 851 min. Counties: Ingham, Clinton. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Flood Warning #7 (851 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-FL-W-7"
  },
  {
   "id": "asos-bf-DTW-2025-12-29",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2025-12-29",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IMT-2025-12-29",
   "lat": 45.8184,
   "lon": -88.1146,
   "zip": "",
   "city": "IRON MOUNTAIN",
   "date": "2025-12-29",
   "county": "Florence",
   "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": "IRON MOUNTAIN (IMT) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — IRON MOUNTAIN (IMT) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ARB-2025-12-29",
   "lat": 42.224,
   "lon": -83.7397,
   "zip": "",
   "city": "ANN ARBOR",
   "date": "2025-12-29",
   "county": "Washtenaw",
   "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": "ANN ARBOR (ARB) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — ANN ARBOR (ARB) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FNT-2025-12-29",
   "lat": 42.9667,
   "lon": -83.7494,
   "zip": "",
   "city": "FLINT",
   "date": "2025-12-29",
   "county": "Genesee",
   "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": "FLINT (FNT) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — FLINT (FNT) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2025-12-29",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2025-12-29",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DUH-2025-12-29",
   "lat": 41.7358,
   "lon": -83.6553,
   "zip": "",
   "city": "LAMBERTVILLE",
   "date": "2025-12-29",
   "county": "Monroe",
   "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": "LAMBERTVILLE (DUH) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — LAMBERTVILLE (DUH) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HTL-2025-12-29",
   "lat": 44.3598,
   "lon": -84.6711,
   "zip": "",
   "city": "HOUGHTON LAKE",
   "date": "2025-12-29",
   "county": "Roscommon",
   "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": "HOUGHTON LAKE (HTL) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOUGHTON LAKE (HTL) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LAN-2025-12-29",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "Lansing",
   "date": "2025-12-29",
   "county": "Clinton",
   "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": "Lansing (LAN) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Lansing (LAN) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MCD-2025-12-29",
   "lat": 45.865,
   "lon": -84.6372,
   "zip": "",
   "city": "MACKINAC ISLAND",
   "date": "2025-12-29",
   "county": "Mackinac",
   "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": "MACKINAC ISLAND (MCD) recorded a 97 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MACKINAC ISLAND (MCD) [365d backfill 2026-08]",
   "windSpeedMph": 97,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2025-12-29",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2025-12-29",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 56 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-OEB-2025-12-29",
   "lat": 41.9333,
   "lon": -85.0525,
   "zip": "",
   "city": "COLDWATER",
   "date": "2025-12-29",
   "county": "Branch",
   "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": "COLDWATER (OEB) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — COLDWATER (OEB) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2025-12-29",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2025-12-29",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2025-12-29",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2025-12-29",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2025-12-29",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2025-12-29",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-JXN-2025-12-29",
   "lat": 42.2598,
   "lon": -84.4594,
   "zip": "",
   "city": "JACKSON/REYNOLDS",
   "date": "2025-12-29",
   "county": "Jackson",
   "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": "JACKSON/REYNOLDS (JXN) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — JACKSON/REYNOLDS (JXN) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PZQ-2025-12-29",
   "lat": 45.4071,
   "lon": -83.8129,
   "zip": "",
   "city": "Rogers City",
   "date": "2025-12-29",
   "county": "Presque Isle",
   "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": "Rogers City (PZQ) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Rogers City (PZQ) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BFA-2025-12-29",
   "lat": 45.1658,
   "lon": -84.9241,
   "zip": "",
   "city": "Boyne Falls",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "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": "Boyne Falls (BFA) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Boyne Falls (BFA) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-YIP-2025-12-29",
   "lat": 42.2379,
   "lon": -83.5304,
   "zip": "",
   "city": "DETROIT/WILLOW",
   "date": "2025-12-29",
   "county": "Wayne",
   "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": "DETROIT/WILLOW (YIP) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WILLOW (YIP) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2025-12-29",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2025-12-29",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2025-12-29",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2025-12-29",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BTL-2025-12-29",
   "lat": 42.3073,
   "lon": -85.2515,
   "zip": "",
   "city": "BATTLE CREEK",
   "date": "2025-12-29",
   "county": "Calhoun",
   "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": "BATTLE CREEK (BTL) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BATTLE CREEK (BTL) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2025-12-29",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2025-12-29",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 60 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Midland-wind-2025-12-29",
   "zip": "",
   "city": "Midland",
   "date": "2025-12-29",
   "county": "Midland",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Midland.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Bay-wind-2025-12-29",
   "zip": "",
   "city": "Bay",
   "date": "2025-12-29",
   "county": "Bay",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Bay.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Huron-wind-2025-12-29",
   "zip": "",
   "city": "Huron",
   "date": "2025-12-29",
   "county": "Huron",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Huron.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Sanilac-wind-2025-12-29",
   "zip": "",
   "city": "Sanilac",
   "date": "2025-12-29",
   "county": "Sanilac",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Sanilac.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Shiawassee-wind-2025-12-29",
   "zip": "",
   "city": "Shiawassee",
   "date": "2025-12-29",
   "county": "Shiawassee",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Shiawassee.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Wayne-wind-2025-12-29",
   "zip": "",
   "city": "Wayne",
   "date": "2025-12-29",
   "county": "Wayne",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Wayne.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Lenawee-wind-2025-12-29",
   "zip": "",
   "city": "Lenawee",
   "date": "2025-12-29",
   "county": "Lenawee",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Lenawee.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Monroe-wind-2025-12-29",
   "zip": "",
   "city": "Monroe",
   "date": "2025-12-29",
   "county": "Monroe",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Monroe.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Saginaw-wind-2025-12-29",
   "zip": "",
   "city": "Saginaw",
   "date": "2025-12-29",
   "county": "Saginaw",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Saginaw.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Tuscola-wind-2025-12-29",
   "zip": "",
   "city": "Tuscola",
   "date": "2025-12-29",
   "county": "Tuscola",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Tuscola.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Genesee-wind-2025-12-29",
   "zip": "",
   "city": "Genesee",
   "date": "2025-12-29",
   "county": "Genesee",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Genesee.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Lapeer-wind-2025-12-29",
   "zip": "",
   "city": "Lapeer",
   "date": "2025-12-29",
   "county": "Lapeer",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Lapeer.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-St. Clair-wind-2025-12-29",
   "zip": "",
   "city": "St. Clair",
   "date": "2025-12-29",
   "county": "St. Clair",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for St. Clair.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Livingston-wind-2025-12-29",
   "zip": "",
   "city": "Livingston",
   "date": "2025-12-29",
   "county": "Livingston",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Livingston.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Oakland-wind-2025-12-29",
   "zip": "",
   "city": "Oakland",
   "date": "2025-12-29",
   "county": "Oakland",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Oakland.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Macomb-wind-2025-12-29",
   "zip": "",
   "city": "Macomb",
   "date": "2025-12-29",
   "county": "Macomb",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Macomb.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-DTX-HW-W-1-Washtenaw-wind-2025-12-29",
   "zip": "",
   "city": "Washtenaw",
   "date": "2025-12-29",
   "county": "Washtenaw",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Washtenaw.",
   "sourceDetail": "NWS DTX — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Jackson-wind-2025-12-29",
   "zip": "",
   "city": "Jackson",
   "date": "2025-12-29",
   "county": "Jackson",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Jackson.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Isabella-wind-2025-12-29",
   "zip": "",
   "city": "Isabella",
   "date": "2025-12-29",
   "county": "Isabella",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Isabella.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Gratiot-wind-2025-12-29",
   "zip": "",
   "city": "Gratiot",
   "date": "2025-12-29",
   "county": "Gratiot",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Gratiot.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Clinton-wind-2025-12-29",
   "zip": "",
   "city": "Clinton",
   "date": "2025-12-29",
   "county": "Clinton",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Clinton.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-ww-GRR-HW-W-2-Ingham-wind-2025-12-29",
   "zip": "",
   "city": "Ingham",
   "date": "2025-12-29",
   "county": "Ingham",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Ingham.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-2"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-29",
   "county": "Charlevoix",
   "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 KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-29-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-29",
   "county": "Emmet",
   "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 KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-28-wind-42.20--85.92",
   "lat": 42.2,
   "lon": -85.92,
   "zip": "",
   "city": "2 WSW Paw Paw",
   "date": "2025-12-28",
   "county": "Van Buren",
   "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": "Mesonet station MC166 I-94 Mile Marker 58.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-28-wind-46.72--89.15",
   "lat": 46.72,
   "lon": -89.15,
   "zip": "",
   "city": "2 SE Rockland",
   "date": "2025-12-28",
   "county": "Ontonagon",
   "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": "Mesonet station MC027 Rockland MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-28-wind-42.22--85.84",
   "lat": 42.22,
   "lon": -85.84,
   "zip": "",
   "city": "2 E Paw Paw",
   "date": "2025-12-28",
   "county": "Van Buren",
   "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": "Mesonet station MC167 I-94 Mile Marker 63.0.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290130-wind-42.20--85.92",
   "lat": 42.2,
   "lon": -85.92,
   "zip": "",
   "city": "2 WSW Paw Paw",
   "date": "2025-12-28",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WSW Paw Paw, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290134-wind-46.72--89.15",
   "lat": 46.72,
   "lon": -89.15,
   "zip": "",
   "city": "2 SE Rockland",
   "date": "2025-12-28",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Rockland, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512290135-wind-42.22--85.84",
   "lat": 42.22,
   "lon": -85.84,
   "zip": "",
   "city": "2 E Paw Paw",
   "date": "2025-12-28",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Paw Paw, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T03:49:00Z-wind-43.41--85.08",
   "lat": 43.41,
   "lon": -85.08,
   "zip": "",
   "city": "2 W Edmore",
   "date": "2025-12-28",
   "county": "Montcalm",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 W Edmore, MI. Peak gust: 52 mph. Mesonet station MC145 M-46 Mile Marker 71.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T01:31:00Z-wind-42.52--85.77",
   "lat": 42.52,
   "lon": -85.77,
   "zip": "",
   "city": "4 E Allegan",
   "date": "2025-12-28",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 E Allegan, MI. Peak gust: 53 mph. Mesonet station DW6933 Allegan.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T02:05:00Z-wind-42.23--85.72",
   "lat": 42.23,
   "lon": -85.72,
   "zip": "",
   "city": "3 SW Oshtemo",
   "date": "2025-12-28",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SW Oshtemo, MI. Peak gust: 53 mph. Mesonet station MC170 I-94 Mile Marker 69.2.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T02:29:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2025-12-28",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 56 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T04:16:00Z-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2025-12-28",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 56 mph. AWOS station KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-29T02:19:00Z-wind-46.55--89.63",
   "lat": 46.55,
   "lon": -89.63,
   "zip": "",
   "city": "2 SSE Merriweather",
   "date": "2025-12-28",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Merriweather, MI. Peak gust: 53 mph. Mesonet station MC065 Merriweather MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P59-2025-12-28",
   "lat": 47.4674,
   "lon": -87.8751,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-28",
   "county": "Keweenaw",
   "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": "Copper Harbor (P59) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Copper Harbor (P59) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-26T10:15:00Z-wind-46.00--84.36",
   "lat": 46,
   "lon": -84.36,
   "zip": "",
   "city": "1 N Cedarville",
   "date": "2025-12-26",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cedarville, MI. Peak gust: 51 mph. Mesonet station MC072 M-134-W At Cedarville - La 16.9.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-26T12:22:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2025-12-26",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 51 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-24T00:21:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-12-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 51 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-24T01:54:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 53 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-24T02:12:00Z-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2025-12-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 53 mph. Buoy station SWPM4 S.W. Pier, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-24T02:36:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-12-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 53 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-23T20:59:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-23",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 55 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T09:12:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-21",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 55 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-20",
   "county": "Houghton",
   "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 station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-20",
   "county": "Marquette",
   "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 Granite Island",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-20",
   "county": "Ontonagon",
   "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": "Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBL-2025-12-20",
   "lat": 44.2725,
   "lon": -86.2469,
   "zip": "",
   "city": "MANISTEE",
   "date": "2025-12-20",
   "county": "Manistee",
   "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": "MANISTEE (MBL) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MANISTEE (MBL) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "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 station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-44.76--85.52",
   "lat": 44.76,
   "lon": -85.52,
   "zip": "",
   "city": "4 W Bates",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "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": "Mesonet station MC112 Mdot Site.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2025-12-20",
   "county": "Cheboygan",
   "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": "Buoy station MACM4 Mackinaw City_ MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-20",
   "county": "Emmet",
   "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 KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-12-20",
   "county": "Otsego",
   "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 station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-44.88--85.68",
   "lat": 44.88,
   "lon": -85.68,
   "zip": "",
   "city": "1 NE Bingham",
   "date": "2025-12-20",
   "county": "Leelanau",
   "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": "Mesonet station MINWM 0.8 NE Bingham (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-20",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-45.40--84.61",
   "lat": 45.4,
   "lon": -84.61,
   "zip": "",
   "city": "1 SSE Indian River",
   "date": "2025-12-20",
   "county": "Cheboygan",
   "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": "Mesonet station DVI03746 Indian River.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-45.50--84.10",
   "lat": 45.5,
   "lon": -84.1,
   "zip": "",
   "city": "1 NNE Huron Beach",
   "date": "2025-12-20",
   "county": "Presque Isle",
   "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 near Huron Beach reported wind gust of 61mph.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "reported"
  },
  {
   "id": "asos-bf-FKS-2025-12-20",
   "lat": 44.6252,
   "lon": -86.2008,
   "zip": "",
   "city": "Frankfort",
   "date": "2025-12-20",
   "county": "Benzie",
   "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": "Frankfort (FKS) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Frankfort (FKS) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-12-20",
   "county": "Chippewa",
   "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 KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-20",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-44.68--84.13",
   "lat": 44.68,
   "lon": -84.13,
   "zip": "",
   "city": "1 N Mio",
   "date": "2025-12-20",
   "county": "Oscoda",
   "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": "Mesonet station MMOM4 Mio.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-20-wind-44.25--83.46",
   "lat": 44.25,
   "lon": -83.46,
   "zip": "",
   "city": "3 SSE East Tawas",
   "date": "2025-12-20",
   "county": "Iosco",
   "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": "Mesonet station XTAW Tawas Point.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CVX-2025-12-20",
   "lat": 45.3047,
   "lon": -85.2747,
   "zip": "",
   "city": "CHARLEVOIX",
   "date": "2025-12-20",
   "county": "Charlevoix",
   "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": "CHARLEVOIX (CVX) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — CHARLEVOIX (CVX) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512201939-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-20",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202010-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-20",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 74 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202259-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-20",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202327-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2025-12-20",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202328-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202329-wind-44.76--85.52",
   "lat": 44.76,
   "lon": -85.52,
   "zip": "",
   "city": "4 W Bates",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 W Bates, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202342-wind-45.78--84.73",
   "lat": 45.78,
   "lon": -84.73,
   "zip": "",
   "city": "Mackinaw City",
   "date": "2025-12-20",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mackinaw City, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202345-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-20",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512202345-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-12-20",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210000-wind-44.88--85.68",
   "lat": 44.88,
   "lon": -85.68,
   "zip": "",
   "city": "1 NE Bingham",
   "date": "2025-12-20",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NE Bingham, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210003-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-20",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210005-wind-45.40--84.61",
   "lat": 45.4,
   "lon": -84.61,
   "zip": "",
   "city": "1 SSE Indian River",
   "date": "2025-12-20",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Indian River, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210011-wind-45.50--84.10",
   "lat": 45.5,
   "lon": -84.1,
   "zip": "",
   "city": "1 NNE Huron Beach",
   "date": "2025-12-20",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNE Huron Beach, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS APX — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202512210020-wind-44.63--86.20",
   "lat": 44.63,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Elberta",
   "date": "2025-12-20",
   "county": "Benzie",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Elberta, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210033-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210125-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-20",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210132-wind-44.68--84.13",
   "lat": 44.68,
   "lon": -84.13,
   "zip": "",
   "city": "1 N Mio",
   "date": "2025-12-20",
   "county": "Oscoda",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Mio, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210215-wind-44.25--83.46",
   "lat": 44.25,
   "lon": -83.46,
   "zip": "",
   "city": "3 SSE East Tawas",
   "date": "2025-12-20",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SSE East Tawas, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512210345-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-20",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T18:24:00Z-wind-44.73--85.57",
   "lat": 44.73,
   "lon": -85.57,
   "zip": "",
   "city": "2 SE Traverse City",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Traverse City, MI. Peak gust: 51 mph. ASOS station KTVC Traverse City - Cherry Capital Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:04:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 51 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T00:42:00Z-wind-44.68--84.73",
   "lat": 44.68,
   "lon": -84.73,
   "zip": "",
   "city": "2 NNW Grayling",
   "date": "2025-12-20",
   "county": "Crawford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 NNW Grayling, MI. Peak gust: 51 mph. AWOS station KGOV Grayling - Army Airfield.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:00:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 51 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:49:00Z-wind-45.65--84.52",
   "lat": 45.65,
   "lon": -84.52,
   "zip": "",
   "city": "2 WNW Cheboygan",
   "date": "2025-12-20",
   "county": "Cheboygan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 WNW Cheboygan, MI. Peak gust: 51 mph. AWOS station KSLH Cheboygan - Cheboygan County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T02:15:00Z-wind-44.45--83.40",
   "lat": 44.45,
   "lon": -83.4,
   "zip": "",
   "city": "1 SW Wurtsmith Airfield",
   "date": "2025-12-20",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SW Wurtsmith Airfield, MI. Peak gust: 51 mph. AWOS station KOSC Oscoda - Wurtsmith AFB.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T19:06:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-12-20",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 52 mph. ASOS station KGLR Gaylord - Otsego County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:13:00Z-wind-45.36--84.95",
   "lat": 45.36,
   "lon": -84.95,
   "zip": "",
   "city": "1 SSE Petoskey",
   "date": "2025-12-20",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Petoskey, MI. Peak gust: 52 mph. Mesonet station AS614 Petoskey.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:54:00Z-wind-44.27--85.42",
   "lat": 44.27,
   "lon": -85.42,
   "zip": "",
   "city": "1 N Cadillac",
   "date": "2025-12-20",
   "county": "Wexford",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Cadillac, MI. Peak gust: 52 mph. AWOS station KCAD Cadillac - Wexford Count Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T22:32:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-20",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 53 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T00:00:00Z-wind-45.36--84.94",
   "lat": 45.36,
   "lon": -84.94,
   "zip": "",
   "city": "2 SE Petoskey",
   "date": "2025-12-20",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Petoskey, MI. Peak gust: 53 mph. Mesonet station MINCM Ncmc.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T00:55:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 53 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:00:00Z-wind-45.14--85.65",
   "lat": 45.14,
   "lon": -85.65,
   "zip": "",
   "city": "1 WNW Northport",
   "date": "2025-12-20",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Northport, MI. Peak gust: 54 mph. Mesonet station MINTH 1.5 W Northport (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:48:00Z-wind-45.36--84.95",
   "lat": 45.36,
   "lon": -84.95,
   "zip": "",
   "city": "1 SSE Petoskey",
   "date": "2025-12-20",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Petoskey, MI. Peak gust: 54 mph. Mesonet station AS614 Petoskey.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:17:00Z-wind-45.07--83.57",
   "lat": 45.07,
   "lon": -83.57,
   "zip": "",
   "city": "6 S Cathro",
   "date": "2025-12-20",
   "county": "Alpena",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 S Cathro, MI. Peak gust: 54 mph. ASOS station KAPN Alpena - Phelps Collins Field.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:18:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 54 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:01:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-12-20",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 55 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T23:30:00Z-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2025-12-20",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 55 mph. Buoy station SWPM4 S.W. Pier, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T00:53:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2025-12-20",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 55 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:10:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2025-12-20",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 56 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T02:00:00Z-wind-42.94--85.61",
   "lat": 42.94,
   "lon": -85.61,
   "zip": "",
   "city": "1 SSW East Grand Rapids",
   "date": "2025-12-20",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW East Grand Rapids, MI. Peak gust: 52 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-12-20T15:40:00Z-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-12-20",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 53 mph. Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:56:00Z-wind-43.43--86.00",
   "lat": 43.43,
   "lon": -86,
   "zip": "",
   "city": "1 SSE Reeman",
   "date": "2025-12-20",
   "county": "Newaygo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Reeman, MI. Peak gust: 54 mph. AWOS station KFFX Fremont Municipal Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:54:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-12-20",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 55 mph. Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T01:55:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2025-12-20",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 55 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T02:08:00Z-wind-43.32--84.68",
   "lat": 43.32,
   "lon": -84.68,
   "zip": "",
   "city": "4 WNW Ithaca",
   "date": "2025-12-20",
   "county": "Gratiot",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Ithaca, MI. Peak gust: 56 mph. AWOS station KAMN Alma.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T18:19:00Z-wind-46.83--89.57",
   "lat": 46.83,
   "lon": -89.57,
   "zip": "",
   "city": "Silver City",
   "date": "2025-12-20",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Silver City, MI. Peak gust: 51 mph. Mesonet station MC069 Silver City.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T00:19:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-12-20",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 52 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-21T02:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-20",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 54 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T20:49:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-12-20",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 55 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-20T21:35:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-20",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 55 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P58-2025-12-20",
   "lat": 44.0219,
   "lon": -82.7931,
   "zip": "",
   "city": "PORT HOPE",
   "date": "2025-12-20",
   "county": "Huron",
   "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": "PORT HOPE (P58) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PORT HOPE (P58) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MBS-2025-12-20",
   "lat": 43.53,
   "lon": -84.08,
   "zip": "",
   "city": "SAGINAW",
   "date": "2025-12-20",
   "county": "Saginaw",
   "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": "SAGINAW (MBS) recorded a 54 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAGINAW (MBS) [365d backfill 2026-08]",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2025-12-20",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2025-12-20",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GLR-2025-12-20",
   "lat": 45.0135,
   "lon": -84.7036,
   "zip": "",
   "city": "GAYLORD",
   "date": "2025-12-20",
   "county": "Otsego",
   "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": "GAYLORD (GLR) recorded a 63 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GAYLORD (GLR) [365d backfill 2026-08]",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2025-12-20",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2025-12-20",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-TVC-2025-12-20",
   "lat": 44.7416,
   "lon": -85.5824,
   "zip": "",
   "city": "TRAVERSE CIT",
   "date": "2025-12-20",
   "county": "Grand Traverse",
   "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": "TRAVERSE CIT (TVC) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — TRAVERSE CIT (TVC) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ANJ-2025-12-20",
   "lat": 46.4792,
   "lon": -84.3684,
   "zip": "",
   "city": "SAULT STE MARIE",
   "date": "2025-12-20",
   "county": "Chippewa",
   "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": "SAULT STE MARIE (ANJ) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAULT STE MARIE (ANJ) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PLN-2025-12-20",
   "lat": 45.5709,
   "lon": -84.7967,
   "zip": "",
   "city": "PELLSTON",
   "date": "2025-12-20",
   "county": "Emmet",
   "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": "PELLSTON (PLN) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PELLSTON (PLN) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2025-12-20",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2025-12-20",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-19-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-19",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-19-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-19",
   "county": "Alger",
   "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 KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512190824-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-19",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512191230-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-12-19",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T11:30:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-12-19",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 51 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T15:51:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-12-19",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 51 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T18:28:00Z-wind-45.40--83.82",
   "lat": 45.4,
   "lon": -83.82,
   "zip": "",
   "city": "1 SSW Rogers City",
   "date": "2025-12-19",
   "county": "Presque Isle",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Rogers City, MI. Peak gust: 51 mph. AWOS station KPZQ Rogers City - Presque Isle County Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T07:44:00Z-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-12-19",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 51 mph. Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T08:05:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2025-12-19",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 51 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T10:36:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-19",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 52 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T14:19:00Z-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-12-19",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 52 mph. Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T07:17:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2025-12-19",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 53 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T15:53:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-12-19",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 53 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T17:30:00Z-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-12-19",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 53 mph. Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T06:14:00Z-wind-43.17--86.26",
   "lat": 43.17,
   "lon": -86.26,
   "zip": "",
   "city": "1 NW Norton Shores",
   "date": "2025-12-19",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Norton Shores, MI. Peak gust: 55 mph. Mesonet station EW5817 Norton Shores.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T06:59:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-12-19",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 52 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-18T17:33:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-18",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 51 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512182222-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-12-18",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T00:19:00Z-wind-46.48--89.95",
   "lat": 46.48,
   "lon": -89.95,
   "zip": "",
   "city": "1 W Wakefield",
   "date": "2025-12-18",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Wakefield, MI. Peak gust: 51 mph. Mesonet station MC026 Wakefield MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T03:48:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-12-18",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 51 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-19T02:39:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-18",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 52 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2025-12-18",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2025-12-18",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2025-12-18-eaton-wind",
   "zip": "",
   "city": "Eaton",
   "date": "2025-12-18",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-12-18-livingston-wind",
   "zip": "",
   "city": "Livingston",
   "date": "2025-12-18",
   "county": "Livingston",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Livingston — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-12-18-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2025-12-18",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2025-12-17-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-17",
   "county": "Ontonagon",
   "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": "Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-17-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-17",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-17-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-17",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512170514-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-12-17",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512170524-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-17",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512170656-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-17",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-ANJ-2025-12-17",
   "lat": 46.4792,
   "lon": -84.3684,
   "zip": "",
   "city": "SAULT STE MARIE",
   "date": "2025-12-17",
   "county": "Chippewa",
   "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": "SAULT STE MARIE (ANJ) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — SAULT STE MARIE (ANJ) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-16-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-16",
   "county": "Houghton",
   "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 KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512170449-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-16",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-CMX-2025-12-16",
   "lat": 47.1684,
   "lon": -88.4891,
   "zip": "",
   "city": "HANCOCK",
   "date": "2025-12-16",
   "county": "Houghton",
   "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": "HANCOCK (CMX) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HANCOCK (CMX) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-06-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-06",
   "county": "Marquette",
   "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": "GISM4 at Granite Island Light Station.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512061140-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-12-06",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-05T08:54:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2025-12-05",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 55 mph. Mesonet station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-12-03-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-03",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202512040056-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-12-03",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-04T00:25:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-12-03",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-12-04T01:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-12-03",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 54 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-30T12:23:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-30",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-30T17:14:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-11-30",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 51 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-27-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-27",
   "county": "Alger",
   "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 station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511271152-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-27",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T07:19:00Z-wind-45.06--85.70",
   "lat": 45.06,
   "lon": -85.7,
   "zip": "",
   "city": "4 NE Leland",
   "date": "2025-11-27",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NE Leland, MI. Peak gust: 51 mph. Mesonet station MC113 Ess 1 Mm-22 At North Eagle Hwy.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T07:00:00Z-wind-44.88--85.68",
   "lat": 44.88,
   "lon": -85.68,
   "zip": "",
   "city": "1 NE Bingham",
   "date": "2025-11-27",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NE Bingham, MI. Peak gust: 54 mph. Mesonet station MINWM 0.8 NE Bingham (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T08:00:00Z-wind-45.14--85.65",
   "lat": 45.14,
   "lon": -85.65,
   "zip": "",
   "city": "1 WNW Northport",
   "date": "2025-11-27",
   "county": "Leelanau",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Northport, MI. Peak gust: 54 mph. Mesonet station MINTH 1.5 W Northport (MAWN).",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2025-11-27",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2025-11-27",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 53 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-11-26",
   "county": "Ottawa",
   "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": "Mesonet station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-46.72--89.15",
   "lat": 46.72,
   "lon": -89.15,
   "zip": "",
   "city": "2 SE Rockland",
   "date": "2025-11-26",
   "county": "Ontonagon",
   "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": "Mesonet station MC027 Rockland MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-47.14--88.82",
   "lat": 47.14,
   "lon": -88.82,
   "zip": "",
   "city": "Freda",
   "date": "2025-11-26",
   "county": "Houghton",
   "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": "Facebook comment: around an inch of snow_ half inch of rain_ but a gust of 52 mph out of the north around 9:15 AM. 21 inch diameter evergreen tree down.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202511261819-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BIV-2025-11-26",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2025-11-26",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-11-26",
   "county": "Keweenaw",
   "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": "Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "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": "Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-11-26",
   "county": "Dickinson",
   "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 KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.19--86.13",
   "lat": 42.19,
   "lon": -86.13,
   "zip": "",
   "city": "2 ESE Hartford",
   "date": "2025-11-26",
   "county": "Van Buren",
   "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": "Mesonet station MC162 I-94 Mile Marker 47.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.62--86.54",
   "lat": 43.62,
   "lon": -86.54,
   "zip": "",
   "city": "1 S Little Point Sable",
   "date": "2025-11-26",
   "county": "Oceana",
   "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": "Mesonet station DVI00019 Shelby.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "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": "Mesonet station MC097 US-31 Mile Marker 47.0 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.78--86.43",
   "lat": 43.78,
   "lon": -86.43,
   "zip": "",
   "city": "Pentwater",
   "date": "2025-11-26",
   "county": "Oceana",
   "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": "Mesonet station DW7500 Pentwater.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.19--86.01",
   "lat": 42.19,
   "lon": -86.01,
   "zip": "",
   "city": "3 SE Lawrence",
   "date": "2025-11-26",
   "county": "Van Buren",
   "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": "Mesonet station MC163 I-94 Mile Marker 53.8.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261330-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261349-wind-46.72--89.15",
   "lat": 46.72,
   "lon": -89.15,
   "zip": "",
   "city": "2 SE Rockland",
   "date": "2025-11-26",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SE Rockland, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261415-wind-47.14--88.82",
   "lat": 47.14,
   "lon": -88.82,
   "zip": "",
   "city": "Freda",
   "date": "2025-11-26",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Freda, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202511261449-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261513-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261545-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261750-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261847-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261924-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-11-26",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511261940-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262000-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262005-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-11-26",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262030-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262030-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262130-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262130-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262134-wind-42.19--86.13",
   "lat": 42.19,
   "lon": -86.13,
   "zip": "",
   "city": "2 ESE Hartford",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ESE Hartford, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262140-wind-43.62--86.54",
   "lat": 43.62,
   "lon": -86.54,
   "zip": "",
   "city": "1 S Little Point Sable",
   "date": "2025-11-26",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Little Point Sable, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262142-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Macatawa, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262145-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262202-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 70 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 70,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262215-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 67 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 67,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262217-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262219-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Holland, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262226-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 71 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 71,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262237-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262240-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262241-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262245-wind-43.78--86.43",
   "lat": 43.78,
   "lon": -86.43,
   "zip": "",
   "city": "Pentwater",
   "date": "2025-11-26",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Pentwater, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262246-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 74 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 74,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262251-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 63 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 63,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262319-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262334-wind-42.19--86.01",
   "lat": 42.19,
   "lon": -86.01,
   "zip": "",
   "city": "3 SE Lawrence",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 SE Lawrence, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262345-wind-42.19--86.13",
   "lat": 42.19,
   "lon": -86.13,
   "zip": "",
   "city": "2 ESE Hartford",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ESE Hartford, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511262345-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 72 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 72,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T19:54:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2025-11-26",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 51 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T02:38:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-11-26",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 52 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T01:36:00Z-wind-45.30--85.27",
   "lat": 45.3,
   "lon": -85.27,
   "zip": "",
   "city": "1 SSW Charlevoix",
   "date": "2025-11-26",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSW Charlevoix, MI. Peak gust: 54 mph. AWOS station KCVX Charlevoix - Municipal Arpt.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T03:59:00Z-wind-44.27--86.25",
   "lat": 44.27,
   "lon": -86.25,
   "zip": "",
   "city": "2 E Parkdale",
   "date": "2025-11-26",
   "county": "Manistee",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Parkdale, MI. Peak gust: 56 mph. AWOS station KMBL Manistee - Blacker Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T14:53:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2025-11-26",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 51 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T15:25:00Z-wind-42.35--86.25",
   "lat": 42.35,
   "lon": -86.25,
   "zip": "",
   "city": "4 SSE South Haven",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 SSE South Haven, MI. Peak gust: 51 mph. AWOS station KLWA South Haven Rgnl Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T15:34:00Z-wind-42.81--85.98",
   "lat": 42.81,
   "lon": -85.98,
   "zip": "",
   "city": "2 E Zeeland",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Zeeland, MI. Peak gust: 51 mph. Mesonet station MC155 I-196 Mile Marker 55.5.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T21:17:00Z-wind-42.93--85.07",
   "lat": 42.93,
   "lon": -85.07,
   "zip": "",
   "city": "4 S Ionia",
   "date": "2025-11-26",
   "county": "Ionia",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 S Ionia, MI. Peak gust: 51 mph. AWOS station KY70 Ionia County Arpt.",
   "sourceDetail": "NWS GRR — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T22:19:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-11-26",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 51 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T09:47:00Z-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2025-11-26",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 52 mph. ASOS station KGRR Gerald R Ford Intl.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T21:44:00Z-wind-42.32--85.23",
   "lat": 42.32,
   "lon": -85.23,
   "zip": "",
   "city": "1 SSE Springfield",
   "date": "2025-11-26",
   "county": "Calhoun",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 SSE Springfield, MI. Peak gust: 52 mph. ASOS station KBTL Battle Creek Executive Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T22:30:00Z-wind-43.78--86.43",
   "lat": 43.78,
   "lon": -86.43,
   "zip": "",
   "city": "Pentwater",
   "date": "2025-11-26",
   "county": "Oceana",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Pentwater, MI. Peak gust: 52 mph. Mesonet station DW7500 Pentwater.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T10:44:00Z-wind-42.22--85.84",
   "lat": 42.22,
   "lon": -85.84,
   "zip": "",
   "city": "2 E Paw Paw",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 E Paw Paw, MI. Peak gust: 53 mph. Mesonet station MC167 I-94 Mile Marker 63.0.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T15:00:00Z-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 53 mph. Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T21:03:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2025-11-26",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 53 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T22:31:00Z-wind-42.95--85.61",
   "lat": 42.95,
   "lon": -85.61,
   "zip": "",
   "city": "East Grand Rapids",
   "date": "2025-11-26",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near East Grand Rapids, MI. Peak gust: 53 mph.",
   "sourceDetail": "NWS GRR — CO-OP Observer via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-11-26T14:04:00Z-wind-42.75--86.12",
   "lat": 42.75,
   "lon": -86.12,
   "zip": "",
   "city": "2 SSW Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSW Holland, MI. Peak gust: 54 mph. Mesonet station MC097 US-31 Mile Marker 47.0 Holland.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T14:45:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 54 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T22:31:00Z-wind-42.85--85.86",
   "lat": 42.85,
   "lon": -85.86,
   "zip": "",
   "city": "1 S Hudsonville",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Hudsonville, MI. Peak gust: 54 mph. Mesonet station MC156 I-196 Mile Marker 62.3.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T14:13:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 S Holland, MI. Peak gust: 56 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T14:35:00Z-wind-43.00--86.10",
   "lat": 43,
   "lon": -86.1,
   "zip": "",
   "city": "6 SSW Nunica",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 6 SSW Nunica, MI. Peak gust: 56 mph. Mesonet station DVI10249 Grand Haven.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T15:15:00Z-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 56 mph. Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T15:30:00Z-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 56 mph. Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T13:59:00Z-wind-46.55--89.63",
   "lat": 46.55,
   "lon": -89.63,
   "zip": "",
   "city": "2 SSE Merriweather",
   "date": "2025-11-26",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 SSE Merriweather, MI. Peak gust: 51 mph. Mesonet station MC065 Merriweather MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T13:55:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-11-26",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-27T02:04:00Z-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-11-26",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 55 mph. Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-26T12:45:00Z-wind-46.48--89.95",
   "lat": 46.48,
   "lon": -89.95,
   "zip": "",
   "city": "1 W Wakefield",
   "date": "2025-11-26",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Wakefield, MI. Peak gust: 56 mph. Mesonet station MC026 Wakefield MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-11-26",
   "county": "Allegan",
   "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": "Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2025-11-26",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2025-11-26",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2025-11-26",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2025-11-26",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-IMT-2025-11-26",
   "lat": 45.8184,
   "lon": -88.1146,
   "zip": "",
   "city": "IRON MOUNTAIN",
   "date": "2025-11-26",
   "county": "Florence",
   "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": "IRON MOUNTAIN (IMT) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — IRON MOUNTAIN (IMT) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-FKS-2025-11-26",
   "lat": 44.6252,
   "lon": -86.2008,
   "zip": "",
   "city": "Frankfort",
   "date": "2025-11-26",
   "county": "Benzie",
   "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": "Frankfort (FKS) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Frankfort (FKS) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-MKG-2025-11-26",
   "lat": 43.1711,
   "lon": -86.2367,
   "zip": "",
   "city": "MUSKEGON",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "MUSKEGON (MKG) recorded a 57 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — MUSKEGON (MKG) [365d backfill 2026-08]",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LWA-2025-11-26",
   "lat": 42.3508,
   "lon": -86.2561,
   "zip": "",
   "city": "South Haven",
   "date": "2025-11-26",
   "county": "Van Buren",
   "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": "South Haven (LWA) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — South Haven (LWA) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Ottawa-wind-2025-11-26",
   "zip": "",
   "city": "Ottawa",
   "date": "2025-11-26",
   "county": "Ottawa",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Ottawa.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Allegan-wind-2025-11-26",
   "zip": "",
   "city": "Allegan",
   "date": "2025-11-26",
   "county": "Allegan",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Allegan.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Van Buren-wind-2025-11-26",
   "zip": "",
   "city": "Van Buren",
   "date": "2025-11-26",
   "county": "Van Buren",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Van Buren.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Mason-wind-2025-11-26",
   "zip": "",
   "city": "Mason",
   "date": "2025-11-26",
   "county": "Mason",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Mason.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Oceana-wind-2025-11-26",
   "zip": "",
   "city": "Oceana",
   "date": "2025-11-26",
   "county": "Oceana",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Oceana.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Muskegon-wind-2025-11-26",
   "zip": "",
   "city": "Muskegon",
   "date": "2025-11-26",
   "county": "Muskegon",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Muskegon.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Kent-wind-2025-11-26",
   "zip": "",
   "city": "Kent",
   "date": "2025-11-26",
   "county": "Kent",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Kent.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Ionia-wind-2025-11-26",
   "zip": "",
   "city": "Ionia",
   "date": "2025-11-26",
   "county": "Ionia",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Ionia.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Isabella-wind-2025-11-26",
   "zip": "",
   "city": "Isabella",
   "date": "2025-11-26",
   "county": "Isabella",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Isabella.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Eaton-wind-2025-11-26",
   "zip": "",
   "city": "Eaton",
   "date": "2025-11-26",
   "county": "Eaton",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Eaton.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Ingham-wind-2025-11-26",
   "zip": "",
   "city": "Ingham",
   "date": "2025-11-26",
   "county": "Ingham",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Ingham.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Newaygo-wind-2025-11-26",
   "zip": "",
   "city": "Newaygo",
   "date": "2025-11-26",
   "county": "Newaygo",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Newaygo.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Clinton-wind-2025-11-26",
   "zip": "",
   "city": "Clinton",
   "date": "2025-11-26",
   "county": "Clinton",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Clinton.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Kalamazoo-wind-2025-11-26",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2025-11-26",
   "county": "Kalamazoo",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Kalamazoo.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Calhoun-wind-2025-11-26",
   "zip": "",
   "city": "Calhoun",
   "date": "2025-11-26",
   "county": "Calhoun",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Calhoun.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Jackson-wind-2025-11-26",
   "zip": "",
   "city": "Jackson",
   "date": "2025-11-26",
   "county": "Jackson",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Jackson.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Mecosta-wind-2025-11-26",
   "zip": "",
   "city": "Mecosta",
   "date": "2025-11-26",
   "county": "Mecosta",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Mecosta.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Montcalm-wind-2025-11-26",
   "zip": "",
   "city": "Montcalm",
   "date": "2025-11-26",
   "county": "Montcalm",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Montcalm.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Gratiot-wind-2025-11-26",
   "zip": "",
   "city": "Gratiot",
   "date": "2025-11-26",
   "county": "Gratiot",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Gratiot.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-ww-GRR-HW-W-1-Barry-wind-2025-11-26",
   "zip": "",
   "city": "Barry",
   "date": "2025-11-26",
   "county": "Barry",
   "source": "IEM High Wind Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 0.72,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "HW W for Barry.",
   "sourceDetail": "NWS GRR — HW/W",
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-HW-W-1"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-11-26",
   "county": "Ottawa",
   "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": "Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "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 KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-11-26",
   "county": "Allegan",
   "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": "Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "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": "Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "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": "Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-26",
   "county": "Mason",
   "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": "Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.19--86.13",
   "lat": 42.19,
   "lon": -86.13,
   "zip": "",
   "city": "2 ESE Hartford",
   "date": "2025-11-26",
   "county": "Van Buren",
   "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": "Mesonet station MC162 I-94 Mile Marker 47.7.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-11-26",
   "county": "Allegan",
   "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 KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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": "Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-26-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-26",
   "county": "Muskegon",
   "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 KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-23T13:18:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-11-23",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 52 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-23T03:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-11-22",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 51 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-16T11:12:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-16",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 56 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T21:43:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-11-15",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 52 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T22:03:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-11-15",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 53 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T21:54:00Z-wind-46.50--84.37",
   "lat": 46.5,
   "lon": -84.37,
   "zip": "",
   "city": "1 NNW Sault Ste. Marie",
   "date": "2025-11-15",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NNW Sault Ste. Marie, MI. Peak gust: 54 mph. Buoy station SWPM4 S.W. Pier, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T21:49:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-11-15",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 55 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T22:12:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-11-15",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 55 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T17:07:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-11-15",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 51 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-15T19:49:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-11-15",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 55 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-12-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-12",
   "county": "Marquette",
   "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": "Granite Island Mesonet Station GISM4.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511122330-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-12",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-13T04:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-11-12",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 52 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-P53-2025-11-12",
   "lat": 46.4119,
   "lon": -86.6508,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-12",
   "county": "Alger",
   "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": "Munising (P53) recorded a 59 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Munising (P53) [365d backfill 2026-08]",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-11T19:40:00Z-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-11",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 51 mph. Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-11T20:36:00Z-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-11-11",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 WNW Roosevelt Park, MI. Peak gust: 52 mph. Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-11T21:05:00Z-wind-43.17--86.23",
   "lat": 43.17,
   "lon": -86.23,
   "zip": "",
   "city": "1 ENE Norton Shores",
   "date": "2025-11-11",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ENE Norton Shores, MI. Peak gust: 53 mph. ASOS station KMKG Muskegon County Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T20:37:00Z-wind-45.57--84.80",
   "lat": 45.57,
   "lon": -84.8,
   "zip": "",
   "city": "1 WNW Pellston",
   "date": "2025-11-05",
   "county": "Emmet",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 WNW Pellston, MI. Peak gust: 51 mph. ASOS station KPLN Pellston - Rgnl Airport Of Emmet County.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T21:26:00Z-wind-46.37--84.43",
   "lat": 46.37,
   "lon": -84.43,
   "zip": "",
   "city": "1 N Dafter",
   "date": "2025-11-05",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 N Dafter, MI. Peak gust: 51 mph. Mesonet station MC041 Dafter T26.",
   "sourceDetail": "NWS APX — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T21:05:00Z-wind-46.47--84.37",
   "lat": 46.47,
   "lon": -84.37,
   "zip": "",
   "city": "1 S Sault Ste. Marie",
   "date": "2025-11-05",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Sault Ste. Marie, MI. Peak gust: 52 mph. AWOS station KANJ Sault Ste Marie - Municipal Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T21:18:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-11-05",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 52 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-06T02:06:00Z-wind-46.48--84.63",
   "lat": 46.48,
   "lon": -84.63,
   "zip": "",
   "city": "4 NNW Bay Mills",
   "date": "2025-11-05",
   "county": "Chippewa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 4 NNW Bay Mills, MI. Peak gust: 54 mph. Buoy station PTIM4 Point Iroquois, MI.",
   "sourceDetail": "NWS APX — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T20:35:00Z-wind-44.35--84.67",
   "lat": 44.35,
   "lon": -84.67,
   "zip": "",
   "city": "1 ESE Roscommon County",
   "date": "2025-11-05",
   "county": "Roscommon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 ESE Roscommon County, MI. Peak gust: 56 mph. ASOS station KHTL Houghton Lake - Roscommon County Airport.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T18:09:00Z-wind-45.82--88.12",
   "lat": 45.82,
   "lon": -88.12,
   "zip": "",
   "city": "1 NW Kingsford",
   "date": "2025-11-05",
   "county": "Dickinson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 NW Kingsford, MI. Peak gust: 51 mph. ASOS station KIMT Ford Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T20:58:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-11-05",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 51 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-05T22:47:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-05",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 51 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-HTL-2025-11-05",
   "lat": 44.3598,
   "lon": -84.6711,
   "zip": "",
   "city": "HOUGHTON LAKE",
   "date": "2025-11-05",
   "county": "Roscommon",
   "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": "HOUGHTON LAKE (HTL) recorded a 50 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOUGHTON LAKE (HTL) [365d backfill 2026-08]",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-03-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-03",
   "county": "Marquette",
   "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": "U-MICH and NMU Mesonet station GISM4_ 11 N Trowbridge Park_ Granite Island.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511031640-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-03",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 64 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 64,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T06:40:00Z-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-11-03",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 8 NNW Ludington, MI. Peak gust: 54 mph. Mesonet station BSBM4 Big Sable Point.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T12:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-11-03",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 51 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T13:04:00Z-wind-46.87--89.31",
   "lat": 46.87,
   "lon": -89.31,
   "zip": "",
   "city": "Ontonagon",
   "date": "2025-11-03",
   "county": "Ontonagon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Ontonagon, MI. Peak gust: 53 mph. Mesonet station MC066 Ontonagon MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T16:03:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-11-03",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 54 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 54,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-02-wind-47.37--88.17",
   "lat": 47.37,
   "lon": -88.17,
   "zip": "",
   "city": "Mount Horace Greeley",
   "date": "2025-11-02",
   "county": "Keweenaw",
   "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": "U-MICH Mesonet station MHGM4_ Mount Horace Greeley_ 5SW Deleware.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-02-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-11-02",
   "county": "Keweenaw",
   "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 KP59 Copper Harbor.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-11-02-wind-45.80--86.40",
   "lat": 45.8,
   "lon": -86.4,
   "zip": "",
   "city": "7 E Garden",
   "date": "2025-11-02",
   "county": "Schoolcraft",
   "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": "*Notably higher than other nearby obs.",
   "sourceDetail": "NWS MQT — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 54,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2025-11-02-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-02",
   "county": "Marquette",
   "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": "U-MICH and NMU Mesonet station GISM4_ 11 N Trowbridge Park_ Granite Island.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511022040-wind-47.37--88.17",
   "lat": 47.37,
   "lon": -88.17,
   "zip": "",
   "city": "Mount Horace Greeley",
   "date": "2025-11-02",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Mount Horace Greeley, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511022048-wind-47.47--87.88",
   "lat": 47.47,
   "lon": -87.88,
   "zip": "",
   "city": "Copper Harbor",
   "date": "2025-11-02",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Copper Harbor, MI. Peak gust: 60 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 60,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202511022100-wind-45.80--86.40",
   "lat": 45.8,
   "lon": -86.4,
   "zip": "",
   "city": "7 E Garden",
   "date": "2025-11-02",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 7 E Garden, MI. Peak gust: 62 mph.",
   "sourceDetail": "NWS MQT — CO-OP Observer via Iowa Mesonet",
   "windSpeedMph": 62,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202511030220-wind-46.72--87.41",
   "lat": 46.72,
   "lon": -87.41,
   "zip": "",
   "city": "Granite Island",
   "date": "2025-11-02",
   "county": "Marquette",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Granite Island, MI. Peak gust: 68 mph.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet",
   "windSpeedMph": 68,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T04:39:00Z-wind-45.70--85.57",
   "lat": 45.7,
   "lon": -85.57,
   "zip": "",
   "city": "1 W Beaver Island",
   "date": "2025-11-02",
   "county": "Charlevoix",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 W Beaver Island, MI. Peak gust: 51 mph. AWOS station KSJX Beaver Island.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T01:40:00Z-wind-46.09--85.45",
   "lat": 46.09,
   "lon": -85.45,
   "zip": "",
   "city": "1 S Naubinway",
   "date": "2025-11-02",
   "county": "Mackinac",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 1 S Naubinway, MI. Peak gust: 52 mph.",
   "sourceDetail": "NWS APX — C-Man Station via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-11-02T20:19:00Z-wind-46.26--89.18",
   "lat": 46.26,
   "lon": -89.18,
   "zip": "",
   "city": "Watersmeet",
   "date": "2025-11-02",
   "county": "Gogebic",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Watersmeet, MI. Peak gust: 51 mph. Mesonet station MC070 Watersmeet MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-02T22:19:00Z-wind-45.97--86.20",
   "lat": 45.97,
   "lon": -86.2,
   "zip": "",
   "city": "2 ENE Manistique",
   "date": "2025-11-02",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 2 ENE Manistique, MI. Peak gust: 51 mph. Mesonet station MC039 Manistique MDOT.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-02T23:35:00Z-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-11-02",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 53 mph. ASOS station KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-11-03T02:36:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2025-11-02",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 55 mph. GLOS Weather station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-GRR-2025-10-21",
   "lat": 42.8821,
   "lon": -85.523,
   "zip": "",
   "city": "Grand Rapids",
   "date": "2025-10-21",
   "county": "Kent",
   "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": "Grand Rapids (GRR) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Grand Rapids (GRR) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-10-21",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.9,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202510212000-wind-42.88--85.52",
   "lat": 42.88,
   "lon": -85.52,
   "zip": "",
   "city": "2 SSW Cascade",
   "date": "2025-10-21",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSW Cascade, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T20:15:00Z-wind-42.10--83.16",
   "lat": 42.1,
   "lon": -83.16,
   "zip": "",
   "city": "Grosse Ile Airport",
   "date": "2025-10-21",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Grosse Ile Airport, MI. Peak gust: 51 mph.",
   "sourceDetail": "NWS DTX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T16:31:00Z-wind-42.26--84.44",
   "lat": 42.26,
   "lon": -84.44,
   "zip": "",
   "city": "2 WNW Jackson",
   "date": "2025-10-21",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 WNW Jackson, MI. Peak gust: 51 mph. Mesonet station CW5542 Jackson.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T20:01:00Z-wind-42.78--84.58",
   "lat": 42.78,
   "lon": -84.58,
   "zip": "",
   "city": "3 NNE Edgemont Park",
   "date": "2025-10-21",
   "county": "Clinton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NNE Edgemont Park, MI. Peak gust: 51 mph. ASOS station KLAN Lansing.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T22:38:00Z-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-10-21",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 51 mph. ASOS station KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T19:15:00Z-wind-43.37--86.42",
   "lat": 43.37,
   "lon": -86.42,
   "zip": "",
   "city": "5 SW Whitehall",
   "date": "2025-10-21",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 5 SW Whitehall, MI. Peak gust: 52 mph. Mesonet station DW2963 Whitehall.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T23:04:00Z-wind-42.65--86.19",
   "lat": 42.65,
   "lon": -86.19,
   "zip": "",
   "city": "1 ENE Douglas",
   "date": "2025-10-21",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 ENE Douglas, MI. Peak gust: 52 mph. Mesonet station MC148 I-196 Mile Marker 38.1.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T20:58:00Z-wind-42.27--84.47",
   "lat": 42.27,
   "lon": -84.47,
   "zip": "",
   "city": "3 ENE Sandstone",
   "date": "2025-10-21",
   "county": "Jackson",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 ENE Sandstone, MI. Peak gust: 53 mph. ASOS station KJXN Jackson County-Reynolds Field Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T20:19:00Z-wind-42.22--85.84",
   "lat": 42.22,
   "lon": -85.84,
   "zip": "",
   "city": "2 E Paw Paw",
   "date": "2025-10-21",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 E Paw Paw, MI. Peak gust: 55 mph. Mesonet station MC167 I-94 Mile Marker 63.0.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T22:19:00Z-wind-42.23--85.55",
   "lat": 42.23,
   "lon": -85.55,
   "zip": "",
   "city": "3 NE Portage",
   "date": "2025-10-21",
   "county": "Kalamazoo",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 3 NE Portage, MI. Peak gust: 55 mph. ASOS station KAZO Kalamazoo/BC Intl Airport.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T19:40:00Z-wind-44.05--86.51",
   "lat": 44.05,
   "lon": -86.51,
   "zip": "",
   "city": "8 NNW Ludington",
   "date": "2025-10-21",
   "county": "Mason",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 8 NNW Ludington, MI. Peak gust: 51 mph. Mesonet station BSBM4 7 NW Ludington.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T22:20:00Z-wind-43.23--86.34",
   "lat": 43.23,
   "lon": -86.34,
   "zip": "",
   "city": "4 WNW Roosevelt Park",
   "date": "2025-10-21",
   "county": "Muskegon",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near 4 WNW Roosevelt Park, MI. Peak gust: 51 mph. Mesonet station MKGM4 Muskegon Pier.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-21T19:12:00Z-wind-42.77--86.20",
   "lat": 42.77,
   "lon": -86.2,
   "zip": "",
   "city": "Macatawa",
   "date": "2025-10-21",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "MARINE TSTM WIND reported near Macatawa, MI. Peak gust: 59 mph. Buoy station HLNM4 Holland Harbor.",
   "sourceDetail": "NWS GRR — Buoy via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-DTX-SV-W-84-2025-10-21-Monroe-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-21",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2025-10-21. Duration: 30 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #84 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-84"
  },
  {
   "id": "ww-DTX-SV-W-84-2025-10-21-Monroe-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-21",
   "county": "Monroe",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2025-10-21. Duration: 30 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #84 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-84"
  },
  {
   "id": "ww-DTX-SV-W-84-2025-10-21-Wayne-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-21",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2025-10-21. Duration: 30 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #84 (30 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-SV-W-84"
  },
  {
   "id": "ww-DTX-SV-W-84-2025-10-21-Wayne-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-21",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS DTX on 2025-10-21. Duration: 30 min. Counties: Monroe, Wayne. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Severe Thunderstorm Warning #84 (30 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "DTX-SV-W-84"
  },
  {
   "id": "asos-bf-CFS-2025-10-21",
   "lat": 43.4588,
   "lon": -83.4454,
   "zip": "",
   "city": "Caro",
   "date": "2025-10-21",
   "county": "Tuscola",
   "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": "Caro (CFS) recorded a 55 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — Caro (CFS) [365d backfill 2026-08]",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-BEH-2025-10-21",
   "lat": 42.1286,
   "lon": -86.4285,
   "zip": "",
   "city": "BENTON HARBOR",
   "date": "2025-10-21",
   "county": "Berrien",
   "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": "BENTON HARBOR (BEH) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — BENTON HARBOR (BEH) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-PTK-2025-10-21",
   "lat": 42.6655,
   "lon": -83.4201,
   "zip": "",
   "city": "PONTIAC",
   "date": "2025-10-21",
   "county": "Oakland",
   "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": "PONTIAC (PTK) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — PONTIAC (PTK) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DTW-2025-10-21",
   "lat": 42.23,
   "lon": -83.33,
   "zip": "",
   "city": "DETROIT/WAYNE",
   "date": "2025-10-21",
   "county": "Wayne",
   "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": "DETROIT/WAYNE (DTW) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/WAYNE (DTW) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-DET-2025-10-21",
   "lat": 42.4092,
   "lon": -83.0099,
   "zip": "",
   "city": "DETROIT/CITY AIR",
   "date": "2025-10-21",
   "county": "Wayne",
   "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": "DETROIT/CITY AIR (DET) recorded a 51 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — DETROIT/CITY AIR (DET) [365d backfill 2026-08]",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2025-10-21-genesee-wind",
   "zip": "",
   "city": "Genesee",
   "date": "2025-10-21",
   "county": "Genesee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Genesee — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-21-monroe-wind",
   "zip": "",
   "city": "Monroe",
   "date": "2025-10-21",
   "county": "Monroe",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Monroe — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-21-stclair-wind",
   "zip": "",
   "city": "St. Clair",
   "date": "2025-10-21",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-21-bay-wind",
   "zip": "",
   "city": "Bay",
   "date": "2025-10-21",
   "county": "Bay",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Bay — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-19-gladwin-wind",
   "zip": "",
   "city": "Gladwin",
   "date": "2025-10-19",
   "county": "Gladwin",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Gladwin — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-IRS-2025-10-18",
   "lat": 41.8133,
   "lon": -85.4389,
   "zip": "",
   "city": "STURGIS/KIRSCH",
   "date": "2025-10-18",
   "county": "St. Joseph",
   "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": "STURGIS/KIRSCH (IRS) recorded a 61 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — STURGIS/KIRSCH (IRS) [365d backfill 2026-08]",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "sps-2025-10-18-oakland-wind",
   "zip": "",
   "city": "Oakland",
   "date": "2025-10-18",
   "county": "Oakland",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Oakland — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-18-stjoseph-wind",
   "zip": "",
   "city": "St. Joseph",
   "date": "2025-10-18",
   "county": "St. Joseph",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for St. Joseph — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-18-branch-wind",
   "zip": "",
   "city": "Branch",
   "date": "2025-10-18",
   "county": "Branch",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Branch — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-18-shiawassee-wind",
   "zip": "",
   "city": "Shiawassee",
   "date": "2025-10-18",
   "county": "Shiawassee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Shiawassee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-18-jackson-wind",
   "zip": "",
   "city": "Jackson",
   "date": "2025-10-18",
   "county": "Jackson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Jackson — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-lsr-2025-10-10-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-10-10",
   "county": "Alger",
   "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 KP53 Munising Lakeshore.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202510101943-wind-46.41--86.65",
   "lat": 46.41,
   "lon": -86.65,
   "zip": "",
   "city": "Munising",
   "date": "2025-10-10",
   "county": "Alger",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Munising, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-10T15:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-10-10",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 51 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-10T15:54:00Z-wind-45.97--85.87",
   "lat": 45.97,
   "lon": -85.87,
   "zip": "",
   "city": "Port Inland",
   "date": "2025-10-10",
   "county": "Schoolcraft",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Port Inland, MI. Peak gust: 51 mph. GLOS Weather station PNLM4 Port Inland.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-10T16:12:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-10-10",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 51 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1298847-2025-10-06",
   "lon": 208488,
   "zip": "",
   "city": "ALLEGAN PADGHAM ARPT",
   "date": "2025-10-06",
   "county": "Allegan",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Multiple reports of downed trees across Central Allegan Co.",
   "sourceDetail": "Verified by 911 Call Center — NCEI Event #1298847",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-geo-2025-10-06T06:32:00Z-wind-47.17--88.48",
   "lat": 47.17,
   "lon": -88.48,
   "zip": "",
   "city": "Houghton Co Airport",
   "date": "2025-10-06",
   "county": "Houghton",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near Houghton Co Airport, MI. Peak gust: 53 mph. ASOS station KCMX Houghton Co. Airport.",
   "sourceDetail": "NWS MQT — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-10-06T07:24:00Z-wind-48.11--88.61",
   "lat": 48.11,
   "lon": -88.61,
   "zip": "",
   "city": "34 ENE Rock of Ages",
   "date": "2025-10-06",
   "county": "Keweenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "NON-TSTM WND GST reported near 34 ENE Rock of Ages, MI. Peak gust: 56 mph. Mesonet station OJIM4 Ojibway - Isle Royale.",
   "sourceDetail": "NWS MQT — Mesonet via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Eaton-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Eaton-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Eaton",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Ionia-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Ionia-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ionia",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Muskegon-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Muskegon-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Muskegon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-58-2025-10-06-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 43 min. Counties: Barry, Eaton, Ionia, Kent, Muskegon, Ottawa. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #58 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-58"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Barry-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Barry-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Barry",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ingham-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Ingham-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Ingham",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Jackson-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "ww-GRR-SV-W-57-2025-10-06-Jackson-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-06",
   "county": "Jackson",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-10-06. Duration: 55 min. Counties: Ottawa, Allegan, Barry, Kent, Ingham, Jackson. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #57 (55 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-57"
  },
  {
   "id": "sps-2025-10-06-ogemaw-hail",
   "zip": "",
   "city": "Ogemaw",
   "date": "2025-10-06",
   "county": "Ogemaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Ogemaw — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-06-alcona-hail",
   "zip": "",
   "city": "Alcona",
   "date": "2025-10-06",
   "county": "Alcona",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Alcona — wind gusts up to 40 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-06-barry-wind",
   "zip": "",
   "city": "Barry",
   "date": "2025-10-06",
   "county": "Barry",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Barry — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-06-missaukee-wind",
   "zip": "",
   "city": "Missaukee",
   "date": "2025-10-06",
   "county": "Missaukee",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Missaukee — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-10-04-cheboygan-wind",
   "zip": "",
   "city": "Cheboygan",
   "date": "2025-10-04",
   "county": "Cheboygan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cheboygan — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1297740-2025-10-03",
   "lon": 208250,
   "zip": "",
   "city": "NESTORIA",
   "date": "2025-10-03",
   "county": "Baraga",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A public report of quarter sized hail covering the ground.",
   "sourceDetail": "Verified by Public — NCEI Event #1297740",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202510032105-hail-46.51--88.18",
   "lat": 46.51,
   "lon": -88.18,
   "zip": "",
   "city": "3 SSE Three Lakes",
   "date": "2025-10-03",
   "county": "Baraga",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 3 SSE Three Lakes, MI. Hail size: 1\".",
   "sourceDetail": "NWS MQT — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Baraga-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Baraga-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Baraga",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Marquette-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Marquette-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Marquette",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Iron-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Iron-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Iron",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Ontonagon-wind",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "ww-MQT-SV-W-49-2025-10-03-Ontonagon-hail",
   "zip": "",
   "city": "",
   "date": "2025-10-03",
   "county": "Ontonagon",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS MQT on 2025-10-03. Duration: 58 min. Counties: Baraga, Marquette, Iron, Ontonagon, Gogebic. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS MQT — Severe Thunderstorm Warning #49 (58 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "MQT-SV-W-49"
  },
  {
   "id": "sps-2025-10-03-baraga-hail",
   "zip": "",
   "city": "Baraga",
   "date": "2025-10-03",
   "county": "Baraga",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Baraga — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2025-09-24-flood-42.24--83.67",
   "lat": 42.24,
   "lon": -83.67,
   "zip": "",
   "city": "2 W Ypsilanti",
   "date": "2025-09-24",
   "county": "Washtenaw",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Minor flooding reported across areas of SE Ann Arbor and Ypsilanti - several inches of water covering roads near Platt Rd and Packard St, and near Platt Rd and Packard St.",
   "sourceDetail": "NWS DTX — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DTX-FF-W-10-2025-09-24-Washtenaw",
   "zip": "",
   "city": "",
   "date": "2025-09-24",
   "county": "Washtenaw",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS DTX on 2025-09-24. Duration: 190 min. County: Washtenaw. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flash Flood Warning #10 (190 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FF-W-10"
  },
  {
   "id": "iem-geo-2025-09-23-flood-42.94--85.57",
   "lat": 42.94,
   "lon": -85.57,
   "zip": "",
   "city": "2 ESE East Grand Rapids",
   "date": "2025-09-23",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooding on East Paris south of Cascade, report of stalled vehicle.",
   "sourceDetail": "NWS GRR — 911 Call Center via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-09-23-flood-42.93--85.64",
   "lat": 42.93,
   "lon": -85.64,
   "zip": "",
   "city": "2 SW East Grand Rapids",
   "date": "2025-09-23",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flooding on Burton Street West of Calvin, cars stalled and blocking lanes.",
   "sourceDetail": "NWS GRR — Broadcast Media via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-09-23-flood-42.94--85.54",
   "lat": 42.94,
   "lon": -85.54,
   "zip": "",
   "city": "3 WSW Ada",
   "date": "2025-09-23",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Report of flooding on Spaulding south of Cascade Road.",
   "sourceDetail": "NWS GRR — Broadcast Media via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "sps-2025-09-23-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2025-09-23",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Newaygo — wind gusts up to 40 mph, possible possible (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-23-eaton-hail",
   "zip": "",
   "city": "Eaton",
   "date": "2025-09-23",
   "county": "Eaton",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Eaton — wind gusts up to 40 mph, hail up to 0.75\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-23-sanilac-hail",
   "zip": "",
   "city": "Sanilac",
   "date": "2025-09-23",
   "county": "Sanilac",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 62,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "2 Special Weather Statements for Sanilac — wind gusts up to 50 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1297757-2025-09-22",
   "lon": 208253,
   "zip": "",
   "city": "INTERLOCHEN",
   "date": "2025-09-22",
   "county": "Grand Traverse",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "Video of a brief tornado touchdown in northwest Grand Traverse County north of Long Lake. No damage was reported.",
   "sourceDetail": "Verified by Broadcast Media — NCEI Event #1297757",
   "tornadoScale": "EFU",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1297758-2025-09-22",
   "lon": 208253,
   "zip": "",
   "city": "CLAM RIVER",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "An extremely photogenic tornadic waterspout developed over central Torch Lake and dissipated shortly after making landfall on the eastern shore of Torch Lake north of the mouth of the Clam River. Only minor tree damage was observed. Event was initially reported to NWS Gaylord by a storm chaser watching a Torch Lake area webcam; chaser reported seeing debris lofted in the air on the webcam footage as the waterspout made landfall.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1297758",
   "tornadoScale": "EF0",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1297760-2025-09-22",
   "lon": 208253,
   "zip": "",
   "city": "BELLAIRE",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 0.95,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "An EF-1 tornado touched down on the southwest side of Bellaire and tracked northeast for nearly a mile before dissipating on the north side of Craven Park, producing spotty tree damage across the town and in the park.",
   "sourceDetail": "Verified by NWS Storm Survey — NCEI Event #1297760",
   "tornadoScale": "EF1",
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "ncei-1297761-2025-09-22",
   "lon": 208253,
   "zip": "",
   "city": "GAYLORD OTSEGO ARPT",
   "date": "2025-09-22",
   "county": "Otsego",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Video of hail of at least quarter to half dollar size falling on Old Alba Rd southwest of Gaylord, MI in Otsego county.",
   "sourceDetail": "Verified by Public — NCEI Event #1297761",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1.25
  },
  {
   "id": "iem-geo-2025-09-22T20:50:00Z-tornado-44.76--85.71",
   "lat": 44.76,
   "lon": -85.71,
   "zip": "",
   "city": "4 SW Greilickville",
   "date": "2025-09-22",
   "county": "Grand Traverse",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 4 SW Greilickville, MI. Video relayed by media of brief, weak tornado crossing the road. Location estimated via radar.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-09-22T21:50:00Z-tornado-44.95--85.35",
   "lat": 44.95,
   "lon": -85.35,
   "zip": "",
   "city": "1 NE Kewadin",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near 1 NE Kewadin, MI. Corrects previous tornado report from Kewadin. Tornado northeast of Kewadin transitioned into a waterspout over Torch lake with multiple images and videos of the tornadic waterspout. Time and exact location of touchdown estimated by radar.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-09-22T21:50:00Z-tornado-44.93--85.37",
   "lat": 44.93,
   "lon": -85.37,
   "zip": "",
   "city": "Kewadin",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "tornado",
   "confidence": 92,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TORNADO reported near Kewadin, MI. Tornado transitioned into a waterspout over torch lake with multiple images and videos of the tornadic waterspout over Torch Lake. Time and exact location of touchdown estimated by radar.",
   "sourceDetail": "NWS APX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-geo-2025-09-22T23:23:00Z-wind-45.02--84.68",
   "lat": 45.02,
   "lon": -84.68,
   "zip": "",
   "city": "1 SSW Gaylord",
   "date": "2025-09-22",
   "county": "Otsego",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SSW Gaylord, MI. Peak gust: 53 mph. ASOS station KGLR Gaylord - Otsego County Airport reported 46 mph wind gust as thunderstorms moved through.",
   "sourceDetail": "NWS APX — ASOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-09-23T02:35:00Z-wind-44.42--83.33",
   "lat": 44.42,
   "lon": -83.33,
   "zip": "",
   "city": "Oscoda",
   "date": "2025-09-22",
   "county": "Iosco",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near Oscoda, MI. Peak gust: 55 mph. Measured wind gust at Oscoda/Wurtsmith Airport.",
   "sourceDetail": "NWS APX — AWOS via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 55,
   "evidenceLevel": "observed"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Montmorency-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Montmorency-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Montmorency",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Otsego-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Otsego-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Otsego",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Antrim-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Antrim-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Kalkaska-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Kalkaska-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Kalkaska",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Cheboygan-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Cheboygan-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Crawford-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Crawford-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Crawford",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Oscoda-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Oscoda-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Oscoda",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Charlevoix-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "ww-APX-SV-W-59-2025-09-22-Charlevoix-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-22",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS APX on 2025-09-22. Duration: 43 min. Counties: Montmorency, Otsego, Antrim, Kalkaska, Cheboygan, Crawford, Oscoda, Charlevoix. Storm tags: wind: 50.0, hail: 1.25\", tornado: POSSIBLE. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Severe Thunderstorm Warning #59 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1.25,
   "warningProductKey": "APX-SV-W-59"
  },
  {
   "id": "iem-ww-APX-TO-W-3-Antrim-tornado-2025-09-22",
   "zip": "",
   "city": "Antrim",
   "date": "2025-09-22",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "severe",
   "eventType": "tornado",
   "confidence": 0.85,
   "damageTypes": [
    "Structural roof failure",
    "Debris penetration",
    "Complete shingle removal"
   ],
   "description": "TO W for Antrim.",
   "sourceDetail": "NWS APX — TO/W",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-TO-W-3"
  },
  {
   "id": "sps-2025-09-22-mason-wind",
   "zip": "",
   "city": "Mason",
   "date": "2025-09-22",
   "county": "Mason",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Mason — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-22-lake-wind",
   "zip": "",
   "city": "Lake",
   "date": "2025-09-22",
   "county": "Lake",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lake — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-22-kalamazoo-wind",
   "zip": "",
   "city": "Kalamazoo",
   "date": "2025-09-22",
   "county": "Kalamazoo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Kalamazoo — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-22-iosco-wind",
   "zip": "",
   "city": "Iosco",
   "date": "2025-09-22",
   "county": "Iosco",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Iosco — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "APX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "ncei-1295416-2025-09-21",
   "lon": 207750,
   "zip": "",
   "city": "DOWAGIAC CASS ARPT",
   "date": "2025-09-21",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A disturbance moved through the region during the afternoon and evening hours, producing showers and thunderstorms. A weakly sheared environment limited overall organization, but one storm did produce some large hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1295416",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202509212307-hail-41.98--86.14",
   "lat": 41.98,
   "lon": -86.14,
   "zip": "",
   "city": "1 W Dowagiac",
   "date": "2025-09-21",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near 1 W Dowagiac, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "iem-202509212335-hail-42.11--85.98",
   "lat": 42.11,
   "lon": -85.98,
   "zip": "",
   "city": "Decatur",
   "date": "2025-09-21",
   "county": "Van Buren",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Decatur, MI. Hail size: 0.88\".",
   "sourceDetail": "NWS GRR — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 0.88
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "windSpeedMph": 50,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-GRR-SV-W-55-2025-09-21-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-21. Duration: 43 min. Counties: Van Buren, Kalamazoo, Kent. Storm tags: wind: 50.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #55 (43 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "GRR-SV-W-55"
  },
  {
   "id": "ww-IWX-SV-W-125-2025-09-21-Cass-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2025-09-21. Duration: 17 min. County: Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #125 (17 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "IWX-SV-W-125"
  },
  {
   "id": "ww-IWX-SV-W-125-2025-09-21-Cass-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-21",
   "county": "Cass",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS IWX on 2025-09-21. Duration: 17 min. County: Cass. Storm tags: wind: 60.0, hail: 1.0\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS IWX — Severe Thunderstorm Warning #125 (17 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 1,
   "warningProductKey": "IWX-SV-W-125"
  },
  {
   "id": "sps-2025-09-21-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2025-09-21",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-21-calhoun-wind",
   "zip": "",
   "city": "Calhoun",
   "date": "2025-09-21",
   "county": "Calhoun",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Calhoun — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-21-hillsdale-hail",
   "zip": "",
   "city": "Hillsdale",
   "date": "2025-09-21",
   "county": "Hillsdale",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Hillsdale — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-202509202300-hail-42.03--85.82",
   "lat": 42.03,
   "lon": -85.82,
   "zip": "",
   "city": "Marcellus",
   "date": "2025-09-20",
   "county": "Cass",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "hail",
   "confidence": 92,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "HAIL reported near Marcellus, MI. Hail size: 1\".",
   "sourceDetail": "NWS IWX — Public via Iowa Mesonet",
   "evidenceLevel": "reported",
   "hailSizeInches": 1
  },
  {
   "id": "ncei-1295411-2025-09-20",
   "lon": 207748,
   "zip": "",
   "city": "BOWEN",
   "date": "2025-09-20",
   "county": "Kent",
   "source": "NCEI Storm Events Database",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 0.95,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Several reports of trees and wires down in Kent County.",
   "sourceDetail": "Verified by Law Enforcement — NCEI Event #1295411",
   "windSpeedMph": 52,
   "evidenceLevel": "official_backfill"
  },
  {
   "id": "iem-lsr-2025-09-20-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-09-20",
   "county": "Allegan",
   "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 KBIV W Mich Regional Arpt.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 53,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-09-20-wind-42.81--86.02",
   "lat": 42.81,
   "lon": -86.02,
   "zip": "",
   "city": "1 SW Zeeland",
   "date": "2025-09-20",
   "county": "Ottawa",
   "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 1 SW Zeeland",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 57,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-lsr-2025-09-20-wind-43.05--85.91",
   "lat": 43.05,
   "lon": -85.91,
   "zip": "",
   "city": "2 ESE Coopersville",
   "date": "2025-09-20",
   "county": "Ottawa",
   "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": "Corrects previous non-tstm wnd gst report from 2 ESE Coopersville. Mesonet station MC109 Mi-03 Coopersville.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 51,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-lsr-2025-09-20-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2025-09-20",
   "county": "Ottawa",
   "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": "Corrects previous non-tstm wnd gst report from 1 WSW Grand Valley. Mesonet station GW5392 ALLENDALE.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 50,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202509210005-wind-42.75--86.10",
   "lat": 42.75,
   "lon": -86.1,
   "zip": "",
   "city": "2 S Holland",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 S Holland, MI. Peak gust: 61 mph.",
   "sourceDetail": "NWS GRR — ASOS via Iowa Mesonet",
   "windSpeedMph": 61,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202509210015-wind-42.81--86.02",
   "lat": 42.81,
   "lon": -86.02,
   "zip": "",
   "city": "1 SW Zeeland",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 SW Zeeland, MI. Peak gust: 66 mph.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet",
   "windSpeedMph": 66,
   "evidenceLevel": "reported"
  },
  {
   "id": "iem-202509210034-wind-43.05--85.91",
   "lat": 43.05,
   "lon": -85.91,
   "zip": "",
   "city": "2 ESE Coopersville",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 ESE Coopersville, MI. Peak gust: 59 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 59,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-202509210035-wind-42.97--85.89",
   "lat": 42.97,
   "lon": -85.89,
   "zip": "",
   "city": "1 WSW Grand Valley",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "IEM Local Storm Reports",
   "severity": "high",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 1 WSW Grand Valley, MI. Peak gust: 58 mph.",
   "sourceDetail": "NWS GRR — Mesonet via Iowa Mesonet",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  },
  {
   "id": "iem-geo-2025-09-21T00:52:00Z-wind-43.19--85.73",
   "lat": 43.19,
   "lon": -85.73,
   "zip": "",
   "city": "2 SSE Kent City",
   "date": "2025-09-20",
   "county": "Kent",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 92,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "TSTM WND GST reported near 2 SSE Kent City, MI. Peak gust: 56 mph. 1/4 inch diameter hail also reported with the storms.",
   "sourceDetail": "NWS GRR — Trained Spotter via Iowa Mesonet (GeoJSON)",
   "windSpeedMph": 56,
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Kent-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Kent-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Kent",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Kalamazoo-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-54-2025-09-20-Kalamazoo-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Kalamazoo",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 27 min. Counties: Kent, Allegan, Kalamazoo. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #54 (27 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-54"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Ottawa-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Ottawa-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Allegan-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Allegan-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Van Buren-wind",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "wind",
   "confidence": 70,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Hurricane wind damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "windSpeedMph": 60,
   "evidenceLevel": "warning",
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-GRR-SV-W-53-2025-09-20-Van Buren-hail",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Van Buren",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "hail",
   "confidence": 70,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Severe Thunderstorm Warning issued by NWS GRR on 2025-09-20. Duration: 33 min. Counties: Ottawa, Allegan, Van Buren. Storm tags: wind: 60.0, hail: 0.75\". This is a warning — not a confirmed event.",
   "sourceDetail": "NWS GRR — Severe Thunderstorm Warning #53 (33 min)",
   "evidenceLevel": "warning",
   "hailSizeInches": 0.75,
   "warningProductKey": "GRR-SV-W-53"
  },
  {
   "id": "ww-APX-FF-W-6-2025-09-20-Antrim",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Antrim",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2025-09-20. Duration: 110 min. Counties: Antrim, Charlevoix, Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #6 (110 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-6"
  },
  {
   "id": "ww-APX-FF-W-6-2025-09-20-Charlevoix",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Charlevoix",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2025-09-20. Duration: 110 min. Counties: Antrim, Charlevoix, Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #6 (110 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-6"
  },
  {
   "id": "ww-APX-FF-W-6-2025-09-20-Cheboygan",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Cheboygan",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2025-09-20. Duration: 110 min. Counties: Antrim, Charlevoix, Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #6 (110 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-6"
  },
  {
   "id": "ww-APX-FF-W-6-2025-09-20-Emmet",
   "zip": "",
   "city": "",
   "date": "2025-09-20",
   "county": "Emmet",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS APX on 2025-09-20. Duration: 110 min. Counties: Antrim, Charlevoix, Cheboygan, Emmet. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS APX — Flash Flood Warning #6 (110 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "APX-FF-W-6"
  },
  {
   "id": "asos-bf-BIV-2025-09-20",
   "lat": 42.7461,
   "lon": -86.0967,
   "zip": "",
   "city": "HOLLAND",
   "date": "2025-09-20",
   "county": "Allegan",
   "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": "HOLLAND (BIV) recorded a 52 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — HOLLAND (BIV) [365d backfill 2026-08]",
   "windSpeedMph": 52,
   "evidenceLevel": "observed"
  },
  {
   "id": "ncei-1295410-2025-09-20",
   "lon": 207747,
   "zip": "",
   "city": "MARCELLUS",
   "date": "2025-09-20",
   "county": "Cass",
   "source": "NCEI Storm Events Database",
   "severity": "high",
   "eventType": "hail",
   "confidence": 0.95,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "A northward moving warm front interacted with limited instability and shear to produce a line of showers and thunderstorms. While most remained below severe levels, one storm gained sufficient strength to produce marginally severe hail.",
   "sourceDetail": "Verified by Public — NCEI Event #1295410",
   "evidenceLevel": "official_backfill",
   "hailSizeInches": 1
  },
  {
   "id": "sps-2025-09-20-berrien-hail",
   "zip": "",
   "city": "Berrien",
   "date": "2025-09-20",
   "county": "Berrien",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Berrien — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-cass-hail",
   "zip": "",
   "city": "Cass",
   "date": "2025-09-20",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-allegan-hail",
   "zip": "",
   "city": "Allegan",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Allegan — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-vanburen-hail",
   "zip": "",
   "city": "Van Buren",
   "date": "2025-09-20",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-allegan-wind",
   "zip": "",
   "city": "Allegan",
   "date": "2025-09-20",
   "county": "Allegan",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "2 Special Weather Statements for Allegan — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-ottawa-wind",
   "zip": "",
   "city": "Ottawa",
   "date": "2025-09-20",
   "county": "Ottawa",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Ottawa — wind gusts up to 50 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-newaygo-wind",
   "zip": "",
   "city": "Newaygo",
   "date": "2025-09-20",
   "county": "Newaygo",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Newaygo — wind gusts up to 40 mph (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-cass-wind",
   "zip": "",
   "city": "Cass",
   "date": "2025-09-20",
   "county": "Cass",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Cass — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "IWX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-20-vanburen-wind",
   "zip": "",
   "city": "Van Buren",
   "date": "2025-09-20",
   "county": "Van Buren",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Van Buren — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "iem-geo-2025-09-18-flood-42.41--83.00",
   "lat": 42.41,
   "lon": -83,
   "zip": "",
   "city": "1 E Detroit City Airpor",
   "date": "2025-09-18",
   "county": "Wayne",
   "source": "IEM Local Storm Reports",
   "severity": "moderate",
   "eventType": "flood",
   "confidence": 0.9,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Video shared via social media shows multiple streets flooded with several inches of water, including Outer Dr near Gratiot Ave.",
   "sourceDetail": "NWS DTX — Public via Iowa Mesonet (GeoJSON)",
   "evidenceLevel": "reported"
  },
  {
   "id": "ww-DTX-FF-W-9-2025-09-18-Wayne",
   "zip": "",
   "city": "",
   "date": "2025-09-18",
   "county": "Wayne",
   "source": "IEM Watch/Warn Archive",
   "severity": "high",
   "eventType": "flood",
   "confidence": 70,
   "damageTypes": [
    "Foundation water intrusion",
    "Drywall saturation",
    "Mold risk"
   ],
   "description": "Flash Flood Warning issued by NWS DTX on 2025-09-18. Duration: 92 min. County: Wayne. This is a warning — not a confirmed event.",
   "sourceDetail": "NWS DTX — Flash Flood Warning #9 (92 min)",
   "evidenceLevel": "warning",
   "warningProductKey": "DTX-FF-W-9"
  },
  {
   "id": "sps-2025-09-18-clare-wind",
   "zip": "",
   "city": "Clare",
   "date": "2025-09-18",
   "county": "Clare",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Clare — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "GRR — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-18-saginaw-wind",
   "zip": "",
   "city": "Saginaw",
   "date": "2025-09-18",
   "county": "Saginaw",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Saginaw — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-18-stclair-hail",
   "zip": "",
   "city": "St. Clair",
   "date": "2025-09-18",
   "county": "St. Clair",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 60,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for St. Clair — wind gusts up to 40 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-18-lapeer-wind",
   "zip": "",
   "city": "Lapeer",
   "date": "2025-09-18",
   "county": "Lapeer",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 60,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Lapeer — wind gusts up to 40 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-18-wayne-wind",
   "zip": "",
   "city": "Wayne",
   "date": "2025-09-18",
   "county": "Wayne",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "wind",
   "confidence": 61,
   "damageTypes": [
    "Roof shingle lift",
    "Soffit/fascia damage",
    "Tree strike risk",
    "Fence/screen damage"
   ],
   "description": "Special Weather Statement for Wayne — wind gusts up to 50 mph, hail up to 0.25\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "DTX — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-17-marquette-hail",
   "zip": "",
   "city": "Marquette",
   "date": "2025-09-17",
   "county": "Marquette",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 59,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "Special Weather Statement for Marquette — wind gusts up to 30 mph, hail up to 0.5\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "sps-2025-09-17-dickinson-hail",
   "zip": "",
   "city": "Dickinson",
   "date": "2025-09-17",
   "county": "Dickinson",
   "source": "NWS Special Weather Statement",
   "severity": "moderate",
   "eventType": "hail",
   "confidence": 61,
   "damageTypes": [
    "Shingle bruising",
    "Granule displacement",
    "Metal denting",
    "Vehicle damage"
   ],
   "description": "3 Special Weather Statements for Dickinson — wind gusts up to 30 mph, hail up to 0.88\" (radar-indicated, not an observed measurement).",
   "sourceDetail": "MQT — Special Weather Statement",
   "evidenceLevel": "warning"
  },
  {
   "id": "asos-bf-GOV-2025-09-16",
   "lat": 44.68,
   "lon": -84.73,
   "zip": "",
   "city": "GRAYLING AF",
   "date": "2025-09-16",
   "county": "Crawford",
   "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": "GRAYLING AF (GOV) recorded a 75 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — GRAYLING AF (GOV) [365d backfill 2026-08]",
   "windSpeedMph": 75,
   "evidenceLevel": "observed"
  },
  {
   "id": "asos-bf-LDM-2025-09-09",
   "lat": 43.9625,
   "lon": -86.4079,
   "zip": "",
   "city": "LUDINGTON/MASON",
   "date": "2025-09-09",
   "county": "Mason",
   "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": "LUDINGTON/MASON (LDM) recorded a 58 mph gust.",
   "sourceDetail": "MI_ASOS automated observation — LUDINGTON/MASON (LDM) [365d backfill 2026-08]",
   "windSpeedMph": 58,
   "evidenceLevel": "observed"
  }
 ]
}