{
  "product": "wind_forecast",
  "source": "GFS 1\u00b0 (grid 3)",
  "runTime": "2026-07-25T18:00:00Z",
  "generated": "2026-07-26T00:05:06Z",
  "maxWind": 50.0,
  "encoding": "RGBA per tile: R=u,G=v -> (v/maxWind*0.5+0.5)*255; B=speed/maxWind*255; A=255",
  "frameWidth": 360,
  "frameHeight": 181,
  "cols": 11,
  "rows": 2,
  "grid": {
    "nx": 360,
    "ny": 181,
    "lat0": 90.0,
    "lon0": 0.0,
    "dlat": -1.0,
    "dlon": 1.0,
    "latRange": [
      90.0,
      -90.0
    ],
    "lonRange": [
      0.0,
      359.0
    ]
  },
  "frames": [
    {
      "index": 0,
      "forecastHour": 36,
      "validTime": "2026-07-27T06:00:00Z"
    },
    {
      "index": 1,
      "forecastHour": 42,
      "validTime": "2026-07-27T12:00:00Z"
    },
    {
      "index": 2,
      "forecastHour": 66,
      "validTime": "2026-07-28T12:00:00Z"
    },
    {
      "index": 3,
      "forecastHour": 84,
      "validTime": "2026-07-29T06:00:00Z"
    },
    {
      "index": 4,
      "forecastHour": 90,
      "validTime": "2026-07-29T12:00:00Z"
    },
    {
      "index": 5,
      "forecastHour": 156,
      "validTime": "2026-08-01T06:00:00Z"
    },
    {
      "index": 6,
      "forecastHour": 162,
      "validTime": "2026-08-01T12:00:00Z"
    },
    {
      "index": 7,
      "forecastHour": 168,
      "validTime": "2026-08-01T18:00:00Z"
    },
    {
      "index": 8,
      "forecastHour": 174,
      "validTime": "2026-08-02T00:00:00Z"
    },
    {
      "index": 9,
      "forecastHour": 180,
      "validTime": "2026-08-02T06:00:00Z"
    },
    {
      "index": 10,
      "forecastHour": 186,
      "validTime": "2026-08-02T12:00:00Z"
    },
    {
      "index": 11,
      "forecastHour": 192,
      "validTime": "2026-08-02T18:00:00Z"
    },
    {
      "index": 12,
      "forecastHour": 198,
      "validTime": "2026-08-03T00:00:00Z"
    },
    {
      "index": 13,
      "forecastHour": 204,
      "validTime": "2026-08-03T06:00:00Z"
    },
    {
      "index": 14,
      "forecastHour": 210,
      "validTime": "2026-08-03T12:00:00Z"
    },
    {
      "index": 15,
      "forecastHour": 216,
      "validTime": "2026-08-03T18:00:00Z"
    },
    {
      "index": 16,
      "forecastHour": 222,
      "validTime": "2026-08-04T00:00:00Z"
    },
    {
      "index": 17,
      "forecastHour": 228,
      "validTime": "2026-08-04T06:00:00Z"
    },
    {
      "index": 18,
      "forecastHour": 234,
      "validTime": "2026-08-04T12:00:00Z"
    },
    {
      "index": 19,
      "forecastHour": 240,
      "validTime": "2026-08-04T18:00:00Z"
    }
  ],
  "layers": [
    {
      "levelType": "heightAboveGround",
      "level": 10,
      "slug": "10m",
      "file": "windfc_10m.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 70,
      "slug": "70hPa",
      "file": "windfc_70hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 100,
      "slug": "100hPa",
      "file": "windfc_100hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 150,
      "slug": "150hPa",
      "file": "windfc_150hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 200,
      "slug": "200hPa",
      "file": "windfc_200hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 250,
      "slug": "250hPa",
      "file": "windfc_250hPa.png",
      "frameCount": 19,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 1,
          "forecastHour": 42,
          "validTime": "2026-07-27T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 300,
      "slug": "300hPa",
      "file": "windfc_300hPa.png",
      "frameCount": 19,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 1,
          "forecastHour": 42,
          "validTime": "2026-07-27T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 400,
      "slug": "400hPa",
      "file": "windfc_400hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 1,
          "forecastHour": 42,
          "validTime": "2026-07-27T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 500,
      "slug": "500hPa",
      "file": "windfc_500hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 600,
      "slug": "600hPa",
      "file": "windfc_600hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 700,
      "slug": "700hPa",
      "file": "windfc_700hPa.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 850,
      "slug": "850hPa",
      "file": "windfc_850hPa.png",
      "frameCount": 19,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 1,
          "forecastHour": 42,
          "validTime": "2026-07-27T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "isobaricInhPa",
      "level": 1000,
      "slug": "1000hPa",
      "file": "windfc_1000hPa.png",
      "frameCount": 19,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 2,
          "forecastHour": 66,
          "validTime": "2026-07-28T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "maxWind",
      "level": 0,
      "slug": "maxwind",
      "file": "windfc_maxwind.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "pressureFromGroundLayer",
      "level": 3000,
      "slug": "3000m_agl",
      "file": "windfc_3000m_agl.png",
      "frameCount": 20,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 1,
          "forecastHour": 42,
          "validTime": "2026-07-27T12:00:00Z"
        },
        {
          "index": 2,
          "forecastHour": 66,
          "validTime": "2026-07-28T12:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    },
    {
      "levelType": "tropopause",
      "level": 0,
      "slug": "tropopause",
      "file": "windfc_tropopause.png",
      "frameCount": 18,
      "frames": [
        {
          "index": 0,
          "forecastHour": 36,
          "validTime": "2026-07-27T06:00:00Z"
        },
        {
          "index": 3,
          "forecastHour": 84,
          "validTime": "2026-07-29T06:00:00Z"
        },
        {
          "index": 4,
          "forecastHour": 90,
          "validTime": "2026-07-29T12:00:00Z"
        },
        {
          "index": 5,
          "forecastHour": 156,
          "validTime": "2026-08-01T06:00:00Z"
        },
        {
          "index": 6,
          "forecastHour": 162,
          "validTime": "2026-08-01T12:00:00Z"
        },
        {
          "index": 7,
          "forecastHour": 168,
          "validTime": "2026-08-01T18:00:00Z"
        },
        {
          "index": 8,
          "forecastHour": 174,
          "validTime": "2026-08-02T00:00:00Z"
        },
        {
          "index": 9,
          "forecastHour": 180,
          "validTime": "2026-08-02T06:00:00Z"
        },
        {
          "index": 10,
          "forecastHour": 186,
          "validTime": "2026-08-02T12:00:00Z"
        },
        {
          "index": 11,
          "forecastHour": 192,
          "validTime": "2026-08-02T18:00:00Z"
        },
        {
          "index": 12,
          "forecastHour": 198,
          "validTime": "2026-08-03T00:00:00Z"
        },
        {
          "index": 13,
          "forecastHour": 204,
          "validTime": "2026-08-03T06:00:00Z"
        },
        {
          "index": 14,
          "forecastHour": 210,
          "validTime": "2026-08-03T12:00:00Z"
        },
        {
          "index": 15,
          "forecastHour": 216,
          "validTime": "2026-08-03T18:00:00Z"
        },
        {
          "index": 16,
          "forecastHour": 222,
          "validTime": "2026-08-04T00:00:00Z"
        },
        {
          "index": 17,
          "forecastHour": 228,
          "validTime": "2026-08-04T06:00:00Z"
        },
        {
          "index": 18,
          "forecastHour": 234,
          "validTime": "2026-08-04T12:00:00Z"
        },
        {
          "index": 19,
          "forecastHour": 240,
          "validTime": "2026-08-04T18:00:00Z"
        }
      ]
    }
  ]
}