{
  "spot": {
    "slug": "bunmahon",
    "name": "Bunmahon",
    "region": "Waterford",
    "lat": 52.1384,
    "lon": -7.3663,
    "facing": 175,
    "swellWindow": [
      150,
      235
    ],
    "windShelter": [
      [
        65,
        85
      ],
      [
        260,
        285
      ]
    ],
    "summary": "A south-facing beach break over sand between cliffs, with punchy, sometimes hollow peaks that carry more power than Tramore and hold up to around 6ft, when the lefts get heavy. Mid tide is usually best, with low tide working on bigger swells. A shortboard wave for intermediate and better surfers, and for beginners only when it’s small. It needs a southerly swell, so it’s inconsistent, and a northerly wind. The river mouth at the east end drives strong rips."
  },
  "generatedAt": "2026-10-11T18:36:03.324Z",
  "buoy": {
    "platform": "27",
    "name": "M5 Buoy",
    "lat": 51.69,
    "lon": -6.703333333333333,
    "time": "2026-10-11T18:00:00.000Z",
    "waveHeight": 2.3,
    "peakPeriod": 6.2,
    "peakDirection": 170,
    "seaTemperature": 16
  },
  "days": [
    {
      "date": "2026-10-11",
      "rating": "fair",
      "surfMax": 1.81,
      "seaTemperature": 14.4,
      "tideTurns": [
        {
          "time": "2026-10-11T05:20:34.043Z",
          "level": 1.57,
          "type": "high"
        },
        {
          "time": "2026-10-11T11:47:25.271Z",
          "level": -2.23,
          "type": "low"
        },
        {
          "time": "2026-10-11T17:39:53.610Z",
          "level": 1.76,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "morning",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-11T00:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.42,
          "swells": [
            {
              "height": 0.34,
              "period": 6.9,
              "direction": 210
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 9,
            "gusts": 13,
            "direction": 282,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.5,
          "weatherCode": 3,
          "models": {
            "ewam": 0.34,
            "meteofrance_wave": 0.36,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 0.44
          },
          "windModels": {
            "ukmo_seamless": 9,
            "ecmwf_ifs": 9,
            "icon_seamless": 7,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-11T01:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.4,
          "swells": [
            {
              "height": 0.32,
              "period": 7.1,
              "direction": 209
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 5,
            "gusts": 10,
            "direction": 299,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.5,
          "weatherCode": 3,
          "models": {
            "ewam": 0.32,
            "meteofrance_wave": 0.34,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 3,
            "ecmwf_ifs": 6,
            "icon_seamless": 5,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-11T02:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.4,
          "swells": [
            {
              "height": 0.32,
              "period": 7.1,
              "direction": 209
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 4,
            "gusts": 7,
            "direction": 282,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.7,
          "weatherCode": 3,
          "models": {
            "ewam": 0.32,
            "meteofrance_wave": 0.34,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 2,
            "ecmwf_ifs": 3,
            "icon_seamless": 5,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-11T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.41,
          "swells": [
            {
              "height": 0.32,
              "period": 7.2,
              "direction": 208
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 3,
            "gusts": 8,
            "direction": 340,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.2,
          "weatherCode": 3,
          "models": {
            "ewam": 0.3,
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 7,
            "ecmwf_ifs": 2,
            "icon_seamless": 3,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-11T04:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.39,
          "swells": [
            {
              "height": 0.3,
              "period": 7.3,
              "direction": 207
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 3,
            "gusts": 8,
            "direction": 75,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 10,
          "weatherCode": 3,
          "models": {
            "ewam": 0.3,
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 0.38
          },
          "windModels": {
            "ukmo_seamless": 8,
            "ecmwf_ifs": 2,
            "icon_seamless": 1,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-11T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.39,
          "swells": [
            {
              "height": 0.3,
              "period": 7.4,
              "direction": 207
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 5,
            "gusts": 9,
            "direction": 79,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.6,
          "weatherCode": 3,
          "models": {
            "ewam": 0.3,
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.36
          },
          "windModels": {
            "ukmo_seamless": 8,
            "ecmwf_ifs": 3,
            "icon_seamless": 4,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-11T06:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.37,
          "swells": [
            {
              "height": 0.28,
              "period": 7.5,
              "direction": 206
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 9,
            "gusts": 13,
            "direction": 115,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 1.45,
            "state": "high",
            "rising": false
          },
          "temperature": 10.8,
          "weatherCode": 3,
          "models": {
            "ewam": 0.28,
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.34
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 9,
            "icon_seamless": 7,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-11T07:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.37,
          "swells": [
            {
              "height": 0.28,
              "period": 7.5,
              "direction": 206
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 12,
            "gusts": 17,
            "direction": 140,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.97,
            "state": "high",
            "rising": false
          },
          "temperature": 12.6,
          "weatherCode": 3,
          "models": {
            "ewam": 0.28,
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.34
          },
          "windModels": {
            "ukmo_seamless": 10,
            "ecmwf_ifs": 14,
            "icon_seamless": 9,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-11T08:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.37,
          "swells": [
            {
              "height": 0.26,
              "period": 7.4,
              "direction": 205
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 17,
            "gusts": 22,
            "direction": 141,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.31,
            "state": "high",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "ewam": 0.3,
            "meteofrance_wave": 0.36,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 0.38
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 19,
            "icon_seamless": 15,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-11T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 1,
            "actual": 0
          },
          "surf": 0.44,
          "swells": [
            {
              "height": 0.24,
              "period": 7.4,
              "direction": 207
            },
            {
              "height": 0.36,
              "period": 2.3,
              "direction": 159
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 22,
            "gusts": 27,
            "direction": 143,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.5,
            "state": "mid",
            "rising": false
          },
          "temperature": 13.6,
          "weatherCode": 3,
          "models": {
            "ewam": 0.44,
            "meteofrance_wave": 0.38,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 24,
            "icon_seamless": 21,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-11T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 1,
            "actual": 0
          },
          "surf": 0.55,
          "swells": [
            {
              "height": 0.58,
              "period": 2.7,
              "direction": 156
            },
            {
              "height": 0.22,
              "period": 6.7,
              "direction": 207
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 26,
            "gusts": 35,
            "direction": 142,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.37,
            "state": "low",
            "rising": false
          },
          "temperature": 13.6,
          "weatherCode": 51,
          "models": {
            "ewam": 0.6,
            "meteofrance_wave": 0.5,
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.64
          },
          "windModels": {
            "ukmo_seamless": 24,
            "ecmwf_ifs": 27,
            "icon_seamless": 26,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-11T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 1,
            "actual": 0
          },
          "surf": 0.64,
          "swells": [
            {
              "height": 0.74,
              "period": 3.1,
              "direction": 151
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 29,
            "gusts": 40,
            "direction": 137,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.05,
            "state": "low",
            "rising": false
          },
          "temperature": 14,
          "weatherCode": 51,
          "models": {
            "ewam": 0.76,
            "meteofrance_wave": 0.62,
            "ncep_gfswave016": 0.68,
            "ecmwf_wam": 0.78
          },
          "windModels": {
            "ukmo_seamless": 29,
            "ecmwf_ifs": 28,
            "icon_seamless": 28,
            "gfs_seamless": 30
          }
        },
        {
          "time": "2026-10-11T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 1,
            "actual": 0
          },
          "surf": 0.74,
          "swells": [
            {
              "height": 0.88,
              "period": 3.5,
              "direction": 155
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 30,
            "gusts": 43,
            "direction": 148,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.22,
            "state": "low",
            "rising": true
          },
          "temperature": 14.1,
          "weatherCode": 3,
          "models": {
            "ewam": 0.9,
            "meteofrance_wave": 0.74,
            "ncep_gfswave016": 0.84,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ukmo_seamless": 31,
            "ecmwf_ifs": 30,
            "icon_seamless": 30,
            "gfs_seamless": 34
          }
        },
        {
          "time": "2026-10-11T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 1,
            "actual": 0
          },
          "surf": 0.87,
          "swells": [
            {
              "height": 1.06,
              "period": 3.8,
              "direction": 151
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 33,
            "gusts": 45,
            "direction": 147,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.81,
            "state": "low",
            "rising": true
          },
          "temperature": 14.3,
          "weatherCode": 3,
          "models": {
            "ewam": 1.08,
            "meteofrance_wave": 0.9,
            "ncep_gfswave016": 1.04,
            "ecmwf_wam": 1.2
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 33,
            "icon_seamless": 32,
            "gfs_seamless": 37
          }
        },
        {
          "time": "2026-10-11T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.09,
          "swells": [
            {
              "height": 1.36,
              "period": 4.2,
              "direction": 152
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 36,
            "gusts": 49,
            "direction": 143,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.98,
            "state": "low",
            "rising": true
          },
          "temperature": 14.6,
          "weatherCode": 51,
          "models": {
            "ewam": 1.38,
            "meteofrance_wave": 1.04,
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 35,
            "icon_seamless": 36,
            "gfs_seamless": 38
          }
        },
        {
          "time": "2026-10-11T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.41,
          "swells": [
            {
              "height": 1.76,
              "period": 4.8,
              "direction": 153
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 38,
            "gusts": 51,
            "direction": 143,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.05,
            "state": "mid",
            "rising": true
          },
          "temperature": 15,
          "weatherCode": 3,
          "models": {
            "ewam": 1.76,
            "meteofrance_wave": 1.2,
            "ncep_gfswave016": 1.42,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ukmo_seamless": 35,
            "ecmwf_ifs": 37,
            "icon_seamless": 39,
            "gfs_seamless": 39
          }
        },
        {
          "time": "2026-10-11T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.67,
          "swells": [
            {
              "height": 2.06,
              "period": 5.3,
              "direction": 154
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 40,
            "gusts": 52,
            "direction": 141,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.03,
            "state": "high",
            "rising": true
          },
          "temperature": 15.1,
          "weatherCode": 3,
          "models": {
            "ewam": 2.06,
            "meteofrance_wave": 1.28,
            "ncep_gfswave016": 1.64,
            "ecmwf_wam": 1.72
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 39,
            "icon_seamless": 40,
            "gfs_seamless": 42
          }
        },
        {
          "time": "2026-10-11T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.81,
          "swells": [
            {
              "height": 2.24,
              "period": 5.6,
              "direction": 151
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 38,
            "gusts": 56,
            "direction": 144,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.65,
            "state": "high",
            "rising": true
          },
          "temperature": 15.2,
          "weatherCode": 3,
          "models": {
            "ewam": 2.24,
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 1.88,
            "ecmwf_wam": 1.82
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 38,
            "icon_seamless": 39,
            "gfs_seamless": 45
          }
        },
        {
          "time": "2026-10-11T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.23,
          "swells": [
            {
              "height": 2.14,
              "period": 5.5,
              "direction": 145
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 34,
            "gusts": 54,
            "direction": 143,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.73,
            "state": "high",
            "rising": false
          },
          "temperature": 15.5,
          "weatherCode": 51,
          "models": {
            "ewam": 2.14,
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 2.06,
            "ecmwf_wam": 1.88
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 35,
            "icon_seamless": 33,
            "gfs_seamless": 45
          }
        },
        {
          "time": "2026-10-11T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.5,
          "swells": [
            {
              "height": 2.1,
              "period": 5.5,
              "direction": 148
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 36,
            "gusts": 51,
            "direction": 145,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.34,
            "state": "high",
            "rising": false
          },
          "temperature": 15.5,
          "weatherCode": 51,
          "models": {
            "ewam": 2.1,
            "meteofrance_wave": 1.5,
            "ncep_gfswave016": 2.16,
            "ecmwf_wam": 1.94
          },
          "windModels": {
            "ukmo_seamless": 35,
            "ecmwf_ifs": 36,
            "icon_seamless": 34,
            "gfs_seamless": 46
          }
        },
        {
          "time": "2026-10-11T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.87,
          "swells": [
            {
              "height": 2.26,
              "period": 5.9,
              "direction": 154
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 38,
            "gusts": 54,
            "direction": 148,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.7,
            "state": "high",
            "rising": false
          },
          "temperature": 15.6,
          "weatherCode": 51,
          "models": {
            "ewam": 2.26,
            "meteofrance_wave": 1.56,
            "ncep_gfswave016": 2.24,
            "ecmwf_wam": 1.98
          },
          "windModels": {
            "ukmo_seamless": 32,
            "ecmwf_ifs": 37,
            "icon_seamless": 40,
            "gfs_seamless": 44
          }
        },
        {
          "time": "2026-10-11T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.97,
          "swells": [
            {
              "height": 1.84,
              "period": 6.9,
              "direction": 152
            },
            {
              "height": 1.2,
              "period": 4.5,
              "direction": 159
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 37,
            "gusts": 53,
            "direction": 151,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.07,
            "state": "mid",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 51,
          "models": {
            "ewam": 2.2,
            "meteofrance_wave": 1.62,
            "ncep_gfswave016": 2.28,
            "ecmwf_wam": 1.98
          },
          "windModels": {
            "ukmo_seamless": 31,
            "ecmwf_ifs": 36,
            "icon_seamless": 37,
            "gfs_seamless": 43
          }
        },
        {
          "time": "2026-10-11T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.83,
          "swells": [
            {
              "height": 2.02,
              "period": 6.6,
              "direction": 153
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 32,
            "gusts": 51,
            "direction": 157,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.93,
            "state": "low",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 3,
          "models": {
            "ewam": 2.06,
            "meteofrance_wave": 1.6,
            "ncep_gfswave016": 2.28,
            "ecmwf_wam": 1.96
          },
          "windModels": {
            "ukmo_seamless": 28,
            "ecmwf_ifs": 34,
            "icon_seamless": 31,
            "gfs_seamless": 40
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-11T06:13:00.000Z",
        "sunrise": "2026-10-11T06:47:00.000Z",
        "sunset": "2026-10-11T17:44:00.000Z",
        "lastLight": "2026-10-11T18:18:00.000Z"
      }
    },
    {
      "date": "2026-10-12",
      "rating": "fair",
      "surfMax": 1.31,
      "seaTemperature": 14.4,
      "tideTurns": [
        {
          "time": "2026-10-12T00:10:14.984Z",
          "level": -2.1,
          "type": "low"
        },
        {
          "time": "2026-10-12T05:54:46.139Z",
          "level": 1.58,
          "type": "high"
        },
        {
          "time": "2026-10-12T12:24:37.818Z",
          "level": -2.14,
          "type": "low"
        },
        {
          "time": "2026-10-12T18:12:21.286Z",
          "level": 1.58,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "morning",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-11T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.73,
          "swells": [
            {
              "height": 1.92,
              "period": 6.7,
              "direction": 154
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 26,
            "gusts": 42,
            "direction": 168,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.7,
            "state": "low",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 45,
          "models": {
            "ewam": 1.92,
            "meteofrance_wave": 1.58,
            "ncep_gfswave016": 2.22,
            "ecmwf_wam": 1.9
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 28,
            "icon_seamless": 17,
            "gfs_seamless": 33
          }
        },
        {
          "time": "2026-10-12T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.65,
          "swells": [
            {
              "height": 1.8,
              "period": 6.7,
              "direction": 155
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 21,
            "gusts": 31,
            "direction": 198,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.09,
            "state": "low",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 51,
          "models": {
            "ewam": 1.8,
            "meteofrance_wave": 1.56,
            "ncep_gfswave016": 2.1,
            "ecmwf_wam": 1.82
          },
          "windModels": {
            "ukmo_seamless": 21,
            "ecmwf_ifs": 23,
            "icon_seamless": 12,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-12T01:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.59,
          "swells": [
            {
              "height": 1.7,
              "period": 6.8,
              "direction": 157
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 16,
            "gusts": 24,
            "direction": 219,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.9,
            "state": "low",
            "rising": true
          },
          "temperature": 15.6,
          "weatherCode": 51,
          "models": {
            "ewam": 1.7,
            "meteofrance_wave": 1.5,
            "ncep_gfswave016": 2,
            "ecmwf_wam": 1.74
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 19,
            "icon_seamless": 13,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-12T02:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.54,
          "swells": [
            {
              "height": 1.62,
              "period": 6.8,
              "direction": 159
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 15,
            "gusts": 23,
            "direction": 230,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.23,
            "state": "low",
            "rising": true
          },
          "temperature": 15.5,
          "weatherCode": 3,
          "models": {
            "ewam": 1.62,
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 1.92,
            "ecmwf_wam": 1.68
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-12T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.48,
          "swells": [
            {
              "height": 1.54,
              "period": 6.8,
              "direction": 160
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 12,
            "gusts": 19,
            "direction": 231,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.31,
            "state": "mid",
            "rising": true
          },
          "temperature": 15.5,
          "weatherCode": 3,
          "models": {
            "ewam": 1.52,
            "meteofrance_wave": 1.38,
            "ncep_gfswave016": 1.86,
            "ecmwf_wam": 1.62
          },
          "windModels": {
            "ukmo_seamless": 11,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-12T04:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.42,
          "swells": [
            {
              "height": 1.46,
              "period": 6.8,
              "direction": 162
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 13,
            "gusts": 17,
            "direction": 243,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.65,
            "state": "high",
            "rising": true
          },
          "temperature": 15.4,
          "weatherCode": 3,
          "models": {
            "ewam": 1.46,
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 1.8,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ukmo_seamless": 8,
            "ecmwf_ifs": 14,
            "icon_seamless": 11,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-12T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.36,
          "swells": [
            {
              "height": 1.38,
              "period": 6.8,
              "direction": 164
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 12,
            "gusts": 19,
            "direction": 247,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.36,
            "state": "high",
            "rising": true
          },
          "temperature": 15.5,
          "weatherCode": 3,
          "models": {
            "ewam": 1.38,
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 1.76,
            "ecmwf_wam": 1.54
          },
          "windModels": {
            "ukmo_seamless": 13,
            "ecmwf_ifs": 11,
            "icon_seamless": 11,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-12T06:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.32,
              "period": 6.8,
              "direction": 166
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 11,
            "gusts": 16,
            "direction": 242,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.57,
            "state": "high",
            "rising": false
          },
          "temperature": 15.2,
          "weatherCode": 3,
          "models": {
            "ewam": 1.32,
            "meteofrance_wave": 1.28,
            "ncep_gfswave016": 1.7,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 12,
            "icon_seamless": 11,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-12T07:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.27,
          "swells": [
            {
              "height": 1.26,
              "period": 6.8,
              "direction": 168
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 13,
            "gusts": 18,
            "direction": 246,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.27,
            "state": "high",
            "rising": false
          },
          "temperature": 15.2,
          "weatherCode": 3,
          "models": {
            "ewam": 1.26,
            "meteofrance_wave": 1.24,
            "ncep_gfswave016": 1.66,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "ukmo_seamless": 10,
            "ecmwf_ifs": 15,
            "icon_seamless": 13,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-12T08:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.23,
          "swells": [
            {
              "height": 1.2,
              "period": 6.8,
              "direction": 170
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 12,
            "gusts": 18,
            "direction": 236,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.66,
            "state": "high",
            "rising": false
          },
          "temperature": 15.2,
          "weatherCode": 3,
          "models": {
            "ewam": 1.2,
            "meteofrance_wave": 1.2,
            "ncep_gfswave016": 1.6,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ukmo_seamless": 11,
            "ecmwf_ifs": 12,
            "icon_seamless": 13,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-12T09:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.21,
          "swells": [
            {
              "height": 1.14,
              "period": 6.8,
              "direction": 172
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 13,
            "gusts": 18,
            "direction": 233,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.07,
            "state": "mid",
            "rising": false
          },
          "temperature": 15.3,
          "weatherCode": 3,
          "models": {
            "ewam": 1.18,
            "meteofrance_wave": 1.16,
            "ncep_gfswave016": 1.56,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 10,
            "icon_seamless": 22,
            "gfs_seamless": 12
          }
        },
        {
          "time": "2026-10-12T10:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.17,
          "swells": [
            {
              "height": 1.08,
              "period": 6.8,
              "direction": 174
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 16,
            "gusts": 27,
            "direction": 214,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.86,
            "state": "mid",
            "rising": false
          },
          "temperature": 15.4,
          "weatherCode": 3,
          "models": {
            "ewam": 1.16,
            "meteofrance_wave": 1.16,
            "ncep_gfswave016": 1.52,
            "ecmwf_wam": 1.38
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 12,
            "icon_seamless": 19,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-12T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.14,
          "swells": [
            {
              "height": 1.04,
              "period": 6.8,
              "direction": 178
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 22,
            "gusts": 33,
            "direction": 217,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.62,
            "state": "low",
            "rising": false
          },
          "temperature": 15.5,
          "weatherCode": 3,
          "models": {
            "ewam": 1.12,
            "meteofrance_wave": 1.18,
            "ncep_gfswave016": 1.48,
            "ecmwf_wam": 1.36
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 21,
            "icon_seamless": 24,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-12T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.13,
          "swells": [
            {
              "height": 0.98,
              "period": 7,
              "direction": 179
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 23,
            "gusts": 34,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.1,
            "state": "low",
            "rising": false
          },
          "temperature": 15.6,
          "weatherCode": 3,
          "models": {
            "ewam": 1.08,
            "meteofrance_wave": 1.18,
            "ncep_gfswave016": 1.46,
            "ecmwf_wam": 1.34
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 23,
            "icon_seamless": 23,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-12T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.15,
          "swells": [
            {
              "height": 0.88,
              "period": 7.3,
              "direction": 180
            },
            {
              "height": 0.7,
              "period": 3.5,
              "direction": 194
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 27,
            "gusts": 37,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.05,
            "state": "low",
            "rising": true
          },
          "temperature": 15.7,
          "weatherCode": 3,
          "models": {
            "ewam": 1.1,
            "meteofrance_wave": 1.24,
            "ncep_gfswave016": 1.46,
            "ecmwf_wam": 1.36
          },
          "windModels": {
            "ukmo_seamless": 25,
            "ecmwf_ifs": 28,
            "icon_seamless": 26,
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-12T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.17,
          "swells": [
            {
              "height": 0.78,
              "period": 7.5,
              "direction": 181
            },
            {
              "height": 0.88,
              "period": 3.9,
              "direction": 193
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 27,
            "gusts": 40,
            "direction": 205,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.48,
            "state": "low",
            "rising": true
          },
          "temperature": 15.8,
          "weatherCode": 3,
          "models": {
            "ewam": 1.18,
            "meteofrance_wave": 1.28,
            "ncep_gfswave016": 1.44,
            "ecmwf_wam": 1.38
          },
          "windModels": {
            "ukmo_seamless": 27,
            "ecmwf_ifs": 30,
            "icon_seamless": 25,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-12T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.24,
          "swells": [
            {
              "height": 1.1,
              "period": 4.2,
              "direction": 189
            },
            {
              "height": 0.68,
              "period": 7.7,
              "direction": 184
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 27,
            "gusts": 40,
            "direction": 196,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.59,
            "state": "mid",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 1.28,
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 1.44,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ukmo_seamless": 25,
            "ecmwf_ifs": 30,
            "icon_seamless": 28,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-12T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.27,
          "swells": [
            {
              "height": 1.28,
              "period": 4.5,
              "direction": 189
            },
            {
              "height": 0.52,
              "period": 7.7,
              "direction": 181
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 31,
            "gusts": 45,
            "direction": 192,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.38,
            "state": "high",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 1.38,
            "meteofrance_wave": 1.42,
            "ncep_gfswave016": 1.5,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ukmo_seamless": 31,
            "ecmwf_ifs": 32,
            "icon_seamless": 29,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-12T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.31,
          "swells": [
            {
              "height": 1.4,
              "period": 4.7,
              "direction": 197
            },
            {
              "height": 0.5,
              "period": 6.9,
              "direction": 173
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 32,
            "gusts": 44,
            "direction": 193,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.19,
            "state": "high",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 51,
          "models": {
            "ewam": 1.48,
            "meteofrance_wave": 1.52,
            "ncep_gfswave016": 1.66,
            "ecmwf_wam": 1.6
          },
          "windModels": {
            "ukmo_seamless": 28,
            "ecmwf_ifs": 35,
            "icon_seamless": 28,
            "gfs_seamless": 37
          }
        },
        {
          "time": "2026-10-12T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.26,
          "swells": [
            {
              "height": 1.54,
              "period": 4.9,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 37,
            "gusts": 52,
            "direction": 203,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.57,
            "state": "high",
            "rising": true
          },
          "temperature": 16.7,
          "weatherCode": 3,
          "models": {
            "ewam": 1.56,
            "meteofrance_wave": 1.6,
            "ncep_gfswave016": 1.84,
            "ecmwf_wam": 1.72
          },
          "windModels": {
            "ukmo_seamless": 40,
            "ecmwf_ifs": 35,
            "icon_seamless": 29,
            "gfs_seamless": 39
          }
        },
        {
          "time": "2026-10-12T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.38,
          "swells": [
            {
              "height": 1.54,
              "period": 5.2,
              "direction": 201
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 42,
            "gusts": 59,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.41,
            "state": "high",
            "rising": false
          },
          "temperature": 16.7,
          "weatherCode": 0,
          "models": {
            "ewam": 1.6,
            "meteofrance_wave": 1.64,
            "ncep_gfswave016": 2.06,
            "ecmwf_wam": 1.84
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 40,
            "icon_seamless": 31,
            "gfs_seamless": 46
          }
        },
        {
          "time": "2026-10-12T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.28,
          "swells": [
            {
              "height": 1.56,
              "period": 5,
              "direction": 201
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 41,
            "gusts": 57,
            "direction": 206,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.85,
            "state": "high",
            "rising": false
          },
          "temperature": 16.8,
          "weatherCode": 3,
          "models": {
            "ewam": 1.56,
            "meteofrance_wave": 1.66,
            "ncep_gfswave016": 2.1,
            "ecmwf_wam": 1.98
          },
          "windModels": {
            "ukmo_seamless": 41,
            "ecmwf_ifs": 41,
            "icon_seamless": 34,
            "gfs_seamless": 41
          }
        },
        {
          "time": "2026-10-12T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.2,
          "swells": [
            {
              "height": 1.5,
              "period": 4.7,
              "direction": 203
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 38,
            "gusts": 55,
            "direction": 200,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.13,
            "state": "mid",
            "rising": false
          },
          "temperature": 16.8,
          "weatherCode": 3,
          "models": {
            "ewam": 1.5,
            "meteofrance_wave": 1.7,
            "ncep_gfswave016": 2.02,
            "ecmwf_wam": 2.04
          },
          "windModels": {
            "ukmo_seamless": 39,
            "ecmwf_ifs": 40,
            "icon_seamless": 34,
            "gfs_seamless": 38
          }
        },
        {
          "time": "2026-10-12T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.4,
          "swells": [
            {
              "height": 1.18,
              "period": 4.7,
              "direction": 200
            },
            {
              "height": 0.9,
              "period": 7.1,
              "direction": 187
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 42,
            "gusts": 57,
            "direction": 202,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.64,
            "state": "mid",
            "rising": false
          },
          "temperature": 17,
          "weatherCode": 51,
          "models": {
            "ewam": 1.48,
            "meteofrance_wave": 1.68,
            "ncep_gfswave016": 2.06,
            "ecmwf_wam": 2.12
          },
          "windModels": {
            "ukmo_seamless": 44,
            "ecmwf_ifs": 42,
            "icon_seamless": 31,
            "gfs_seamless": 42
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-12T06:15:00.000Z",
        "sunrise": "2026-10-12T06:49:00.000Z",
        "sunset": "2026-10-12T17:42:00.000Z",
        "lastLight": "2026-10-12T18:16:00.000Z"
      }
    },
    {
      "date": "2026-10-13",
      "rating": "fair",
      "surfMax": 1.35,
      "seaTemperature": 14.5,
      "tideTurns": [
        {
          "time": "2026-10-13T00:42:33.090Z",
          "level": -2.14,
          "type": "low"
        },
        {
          "time": "2026-10-13T06:29:36.504Z",
          "level": 1.51,
          "type": "high"
        },
        {
          "time": "2026-10-13T13:00:55.290Z",
          "level": -2.17,
          "type": "low"
        },
        {
          "time": "2026-10-13T18:51:11.993Z",
          "level": 1.26,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-12T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.25,
          "swells": [
            {
              "height": 1.5,
              "period": 5,
              "direction": 197
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 42,
            "gusts": 61,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.41,
            "state": "low",
            "rising": false
          },
          "temperature": 16.9,
          "weatherCode": 51,
          "models": {
            "ewam": 1.5,
            "meteofrance_wave": 1.68,
            "ncep_gfswave016": 2.18,
            "ecmwf_wam": 2.24
          },
          "windModels": {
            "ukmo_seamless": 44,
            "ecmwf_ifs": 42,
            "icon_seamless": 33,
            "gfs_seamless": 42
          }
        },
        {
          "time": "2026-10-13T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.58,
              "period": 5.2,
              "direction": 192
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 40,
            "gusts": 59,
            "direction": 213,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2,
            "state": "low",
            "rising": false
          },
          "temperature": 16.5,
          "weatherCode": 61,
          "models": {
            "ewam": 1.58,
            "meteofrance_wave": 1.66,
            "ncep_gfswave016": 2.26,
            "ecmwf_wam": 2.44
          },
          "windModels": {
            "ukmo_seamless": 37,
            "ecmwf_ifs": 47,
            "icon_seamless": 34,
            "gfs_seamless": 43
          }
        },
        {
          "time": "2026-10-13T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.46,
          "swells": [
            {
              "height": 1.72,
              "period": 5.3,
              "direction": 191
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 34,
            "gusts": 55,
            "direction": 221,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.11,
            "state": "low",
            "rising": true
          },
          "temperature": 16.2,
          "weatherCode": 55,
          "models": {
            "ewam": 1.72,
            "meteofrance_wave": 1.62,
            "ncep_gfswave016": 2.22,
            "ecmwf_wam": 2.56
          },
          "windModels": {
            "ukmo_seamless": 26,
            "ecmwf_ifs": 44,
            "icon_seamless": 35,
            "gfs_seamless": 34
          }
        },
        {
          "time": "2026-10-13T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.58,
          "swells": [
            {
              "height": 1.54,
              "period": 6.3,
              "direction": 186
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 28,
            "gusts": 48,
            "direction": 247,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.67,
            "state": "low",
            "rising": true
          },
          "temperature": 15.4,
          "weatherCode": 3,
          "models": {
            "ewam": 1.74,
            "meteofrance_wave": 1.56,
            "ncep_gfswave016": 2.12,
            "ecmwf_wam": 2.48
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 30,
            "icon_seamless": 30,
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-13T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.46,
          "swells": [
            {
              "height": 1.58,
              "period": 6.3,
              "direction": 190
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 21,
            "gusts": 39,
            "direction": 265,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.85,
            "state": "mid",
            "rising": true
          },
          "temperature": 14.8,
          "weatherCode": 1,
          "models": {
            "ewam": 1.58,
            "meteofrance_wave": 1.52,
            "ncep_gfswave016": 2,
            "ecmwf_wam": 2.32
          },
          "windModels": {
            "ukmo_seamless": 20,
            "ecmwf_ifs": 23,
            "icon_seamless": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-13T04:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.4,
          "swells": [
            {
              "height": 1.46,
              "period": 6.5,
              "direction": 189
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 21,
            "gusts": 29,
            "direction": 254,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.09,
            "state": "mid",
            "rising": true
          },
          "temperature": 14,
          "weatherCode": 1,
          "models": {
            "ewam": 1.46,
            "meteofrance_wave": 1.48,
            "ncep_gfswave016": 1.92,
            "ecmwf_wam": 2.16
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 23,
            "icon_seamless": 20,
            "gfs_seamless": 28
          }
        },
        {
          "time": "2026-10-13T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.33,
          "swells": [
            {
              "height": 1.36,
              "period": 6.7,
              "direction": 188
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 19,
            "gusts": 30,
            "direction": 254,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.93,
            "state": "high",
            "rising": true
          },
          "temperature": 13.9,
          "weatherCode": 1,
          "models": {
            "ewam": 1.38,
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 1.86,
            "ecmwf_wam": 2.04
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 20,
            "icon_seamless": 19,
            "gfs_seamless": 31
          }
        },
        {
          "time": "2026-10-13T06:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.28,
              "period": 6.8,
              "direction": 187
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 22,
            "gusts": 31,
            "direction": 251,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.45,
            "state": "high",
            "rising": true
          },
          "temperature": 13.3,
          "weatherCode": 0,
          "models": {
            "ewam": 1.34,
            "meteofrance_wave": 1.4,
            "ncep_gfswave016": 1.84,
            "ecmwf_wam": 1.96
          },
          "windModels": {
            "ukmo_seamless": 21,
            "ecmwf_ifs": 22,
            "icon_seamless": 23,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-13T07:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.28,
          "swells": [
            {
              "height": 1.24,
              "period": 6.8,
              "direction": 188
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 25,
            "gusts": 35,
            "direction": 254,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.44,
            "state": "high",
            "rising": false
          },
          "temperature": 12.2,
          "weatherCode": 1,
          "models": {
            "ewam": 1.34,
            "meteofrance_wave": 1.38,
            "ncep_gfswave016": 1.82,
            "ecmwf_wam": 1.92
          },
          "windModels": {
            "ukmo_seamless": 12,
            "ecmwf_ifs": 26,
            "icon_seamless": 23,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-13T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.31,
          "swells": [
            {
              "height": 1.22,
              "period": 7,
              "direction": 188
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 26,
            "gusts": 35,
            "direction": 251,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.95,
            "state": "high",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 2,
          "models": {
            "ewam": 1.34,
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 1.82,
            "ecmwf_wam": 1.9
          },
          "windModels": {
            "ukmo_seamless": 12,
            "ecmwf_ifs": 28,
            "icon_seamless": 24,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-13T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.18,
              "period": 7.2,
              "direction": 187
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 28,
            "gusts": 39,
            "direction": 250,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.23,
            "state": "mid",
            "rising": false
          },
          "temperature": 13.1,
          "weatherCode": 51,
          "models": {
            "ewam": 1.4,
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 1.8,
            "ecmwf_wam": 1.88
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 26,
            "icon_seamless": 30,
            "gfs_seamless": 31
          }
        },
        {
          "time": "2026-10-13T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.18,
              "period": 7.2,
              "direction": 189
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 30,
            "gusts": 40,
            "direction": 249,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.52,
            "state": "mid",
            "rising": false
          },
          "temperature": 14.5,
          "weatherCode": 0,
          "models": {
            "ewam": 1.44,
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 1.8,
            "ecmwf_wam": 1.84
          },
          "windModels": {
            "ukmo_seamless": 27,
            "ecmwf_ifs": 26,
            "icon_seamless": 32,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-13T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.3,
          "swells": [
            {
              "height": 1.2,
              "period": 7.2,
              "direction": 191
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 29,
            "gusts": 41,
            "direction": 248,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.26,
            "state": "low",
            "rising": false
          },
          "temperature": 14.9,
          "weatherCode": 1,
          "models": {
            "ewam": 1.44,
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 1.78,
            "ecmwf_wam": 1.84
          },
          "windModels": {
            "ukmo_seamless": 28,
            "ecmwf_ifs": 28,
            "icon_seamless": 32,
            "gfs_seamless": 30
          }
        },
        {
          "time": "2026-10-13T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.26,
          "swells": [
            {
              "height": 1.22,
              "period": 7.2,
              "direction": 195
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 30,
            "gusts": 41,
            "direction": 252,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.9,
            "state": "low",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 0,
          "models": {
            "ewam": 1.4,
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 1.78,
            "ecmwf_wam": 1.84
          },
          "windModels": {
            "ukmo_seamless": 31,
            "ecmwf_ifs": 29,
            "icon_seamless": 29,
            "gfs_seamless": 30
          }
        },
        {
          "time": "2026-10-13T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.23,
          "swells": [
            {
              "height": 1.2,
              "period": 7.3,
              "direction": 196
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 27,
            "gusts": 37,
            "direction": 256,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.17,
            "state": "low",
            "rising": false
          },
          "temperature": 15.9,
          "weatherCode": 2,
          "models": {
            "ewam": 1.34,
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 1.78,
            "ecmwf_wam": 1.82
          },
          "windModels": {
            "ukmo_seamless": 26,
            "ecmwf_ifs": 26,
            "icon_seamless": 28,
            "gfs_seamless": 28
          }
        },
        {
          "time": "2026-10-13T14:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.16,
              "period": 7.3,
              "direction": 198
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 25,
            "gusts": 35,
            "direction": 259,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.92,
            "state": "low",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 1.28,
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 1.74,
            "ecmwf_wam": 1.78
          },
          "windModels": {
            "ukmo_seamless": 25,
            "ecmwf_ifs": 25,
            "icon_seamless": 26,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-13T15:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.17,
          "swells": [
            {
              "height": 1.14,
              "period": 7.4,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 22,
            "gusts": 32,
            "direction": 259,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.23,
            "state": "low",
            "rising": true
          },
          "temperature": 15.5,
          "weatherCode": 3,
          "models": {
            "ewam": 1.22,
            "meteofrance_wave": 1.28,
            "ncep_gfswave016": 1.7,
            "ecmwf_wam": 1.74
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 22,
            "icon_seamless": 23,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-13T16:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.16,
          "swells": [
            {
              "height": 1.12,
              "period": 7.4,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 20,
            "gusts": 30,
            "direction": 258,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.36,
            "state": "mid",
            "rising": true
          },
          "temperature": 15.6,
          "weatherCode": 3,
          "models": {
            "ewam": 1.16,
            "meteofrance_wave": 1.24,
            "ncep_gfswave016": 1.66,
            "ecmwf_wam": 1.7
          },
          "windModels": {
            "ukmo_seamless": 24,
            "ecmwf_ifs": 19,
            "icon_seamless": 19,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-13T17:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.13,
          "swells": [
            {
              "height": 1.08,
              "period": 7.4,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 17,
            "gusts": 27,
            "direction": 254,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.47,
            "state": "high",
            "rising": true
          },
          "temperature": 15.1,
          "weatherCode": 0,
          "models": {
            "ewam": 1.1,
            "meteofrance_wave": 1.22,
            "ncep_gfswave016": 1.62,
            "ecmwf_wam": 1.66
          },
          "windModels": {
            "ukmo_seamless": 24,
            "ecmwf_ifs": 16,
            "icon_seamless": 16,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-13T18:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.04,
              "period": 7.5,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 18,
            "gusts": 25,
            "direction": 248,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.08,
            "state": "high",
            "rising": true
          },
          "temperature": 14.6,
          "weatherCode": 1,
          "models": {
            "ewam": 1.08,
            "meteofrance_wave": 1.18,
            "ncep_gfswave016": 1.56,
            "ecmwf_wam": 1.6
          },
          "windModels": {
            "ukmo_seamless": 21,
            "ecmwf_ifs": 12,
            "icon_seamless": 17,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-13T19:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.02,
              "period": 7.5,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 17,
            "gusts": 23,
            "direction": 243,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 1.25,
            "state": "high",
            "rising": false
          },
          "temperature": 14.3,
          "weatherCode": 2,
          "models": {
            "ewam": 1.06,
            "meteofrance_wave": 1.16,
            "ncep_gfswave016": 1.52,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 10,
            "icon_seamless": 17,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-13T20:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.08,
          "swells": [
            {
              "height": 1,
              "period": 7.4,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 18,
            "gusts": 24,
            "direction": 241,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.94,
            "state": "high",
            "rising": false
          },
          "temperature": 14.1,
          "weatherCode": 1,
          "models": {
            "ewam": 1.04,
            "meteofrance_wave": 1.12,
            "ncep_gfswave016": 1.48,
            "ecmwf_wam": 1.52
          },
          "windModels": {
            "ukmo_seamless": 19,
            "ecmwf_ifs": 14,
            "icon_seamless": 17,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-13T21:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.05,
          "swells": [
            {
              "height": 0.98,
              "period": 7.3,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 19,
            "gusts": 24,
            "direction": 239,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.32,
            "state": "high",
            "rising": false
          },
          "temperature": 14,
          "weatherCode": 0,
          "models": {
            "ewam": 1.02,
            "meteofrance_wave": 1.1,
            "ncep_gfswave016": 1.44,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "ukmo_seamless": 21,
            "ecmwf_ifs": 17,
            "icon_seamless": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-13T22:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.04,
          "swells": [
            {
              "height": 0.96,
              "period": 7.3,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 19,
            "gusts": 25,
            "direction": 237,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.38,
            "state": "mid",
            "rising": false
          },
          "temperature": 14,
          "weatherCode": 1,
          "models": {
            "ewam": 1,
            "meteofrance_wave": 1.08,
            "ncep_gfswave016": 1.38,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ukmo_seamless": 22,
            "ecmwf_ifs": 18,
            "icon_seamless": 17,
            "gfs_seamless": 21
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-13T06:17:00.000Z",
        "sunrise": "2026-10-13T06:51:00.000Z",
        "sunset": "2026-10-13T17:40:00.000Z",
        "lastLight": "2026-10-13T18:14:00.000Z"
      }
    },
    {
      "date": "2026-10-14",
      "rating": "poor",
      "surfMax": 1.94,
      "seaTemperature": 14.4,
      "tideTurns": [
        {
          "time": "2026-10-14T01:14:57.478Z",
          "level": -2.07,
          "type": "low"
        },
        {
          "time": "2026-10-14T07:06:34.245Z",
          "level": 1.32,
          "type": "high"
        },
        {
          "time": "2026-10-14T13:33:11.647Z",
          "level": -1.91,
          "type": "low"
        },
        {
          "time": "2026-10-14T19:23:57.395Z",
          "level": 1.22,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-13T23:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.04,
          "swells": [
            {
              "height": 0.94,
              "period": 7.3,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 21,
            "gusts": 26,
            "direction": 232,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.07,
            "state": "low",
            "rising": false
          },
          "temperature": 14.1,
          "weatherCode": 2,
          "models": {
            "ewam": 1,
            "meteofrance_wave": 1.06,
            "ncep_gfswave016": 1.34,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ukmo_seamless": 22,
            "ecmwf_ifs": 19,
            "icon_seamless": 17,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-14T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.07,
          "swells": [
            {
              "height": 0.9,
              "period": 7.5,
              "direction": 198
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 24,
            "gusts": 31,
            "direction": 224,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.69,
            "state": "low",
            "rising": false
          },
          "temperature": 14.2,
          "weatherCode": 3,
          "models": {
            "ewam": 1.04,
            "meteofrance_wave": 1.04,
            "ncep_gfswave016": 1.34,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 26,
            "icon_seamless": 21,
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-14T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.12,
          "swells": [
            {
              "height": 0.86,
              "period": 7.7,
              "direction": 197
            },
            {
              "height": 0.72,
              "period": 3.6,
              "direction": 207
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 26,
            "gusts": 33,
            "direction": 221,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -2.06,
            "state": "low",
            "rising": false
          },
          "temperature": 14.4,
          "weatherCode": 3,
          "models": {
            "ewam": 1.1,
            "meteofrance_wave": 1.04,
            "ncep_gfswave016": 1.36,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ukmo_seamless": 24,
            "ecmwf_ifs": 27,
            "icon_seamless": 23,
            "gfs_seamless": 31
          }
        },
        {
          "time": "2026-10-14T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.18,
          "swells": [
            {
              "height": 1,
              "period": 4.2,
              "direction": 199
            },
            {
              "height": 0.68,
              "period": 8.7,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 28,
            "gusts": 36,
            "direction": 214,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.94,
            "state": "low",
            "rising": true
          },
          "temperature": 14.7,
          "weatherCode": 3,
          "models": {
            "ewam": 1.2,
            "meteofrance_wave": 1.06,
            "ncep_gfswave016": 1.38,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ukmo_seamless": 26,
            "ecmwf_ifs": 27,
            "icon_seamless": 29,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-14T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.36,
              "period": 4.8,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 32,
            "gusts": 38,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.33,
            "state": "low",
            "rising": true
          },
          "temperature": 14.9,
          "weatherCode": 3,
          "models": {
            "ewam": 1.38,
            "meteofrance_wave": 1.06,
            "ncep_gfswave016": 1.4,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ukmo_seamless": 27,
            "ecmwf_ifs": 29,
            "icon_seamless": 36,
            "gfs_seamless": 34
          }
        },
        {
          "time": "2026-10-14T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.3,
          "swells": [
            {
              "height": 1.52,
              "period": 4.9,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 30,
            "gusts": 40,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.5,
            "state": "mid",
            "rising": true
          },
          "temperature": 15,
          "weatherCode": 3,
          "models": {
            "ewam": 1.52,
            "meteofrance_wave": 1.08,
            "ncep_gfswave016": 1.42,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "ukmo_seamless": 29,
            "ecmwf_ifs": 29,
            "icon_seamless": 37,
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-14T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.36,
          "swells": [
            {
              "height": 1.58,
              "period": 5,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 33,
            "gusts": 42,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.34,
            "state": "high",
            "rising": true
          },
          "temperature": 15.1,
          "weatherCode": 3,
          "models": {
            "ewam": 1.6,
            "meteofrance_wave": 1.08,
            "ncep_gfswave016": 1.46,
            "ecmwf_wam": 1.52
          },
          "windModels": {
            "ukmo_seamless": 30,
            "ecmwf_ifs": 29,
            "icon_seamless": 38,
            "gfs_seamless": 35
          }
        },
        {
          "time": "2026-10-14T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.37,
          "swells": [
            {
              "height": 1.6,
              "period": 5.1,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 35,
            "gusts": 44,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.02,
            "state": "high",
            "rising": true
          },
          "temperature": 15.2,
          "weatherCode": 3,
          "models": {
            "ewam": 1.62,
            "meteofrance_wave": 1.1,
            "ncep_gfswave016": 1.54,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ukmo_seamless": 32,
            "ecmwf_ifs": 33,
            "icon_seamless": 37,
            "gfs_seamless": 39
          }
        },
        {
          "time": "2026-10-14T07:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.43,
          "swells": [
            {
              "height": 1.66,
              "period": 5.3,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 37,
            "gusts": 48,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.32,
            "state": "high",
            "rising": true
          },
          "temperature": 15.3,
          "weatherCode": 3,
          "models": {
            "ewam": 1.68,
            "meteofrance_wave": 1.16,
            "ncep_gfswave016": 1.64,
            "ecmwf_wam": 1.64
          },
          "windModels": {
            "ukmo_seamless": 34,
            "ecmwf_ifs": 35,
            "icon_seamless": 39,
            "gfs_seamless": 40
          }
        },
        {
          "time": "2026-10-14T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.55,
          "swells": [
            {
              "height": 1.8,
              "period": 5.5,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 40,
            "gusts": 51,
            "direction": 206,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.13,
            "state": "high",
            "rising": false
          },
          "temperature": 15.4,
          "weatherCode": 2,
          "models": {
            "ewam": 1.82,
            "meteofrance_wave": 1.2,
            "ncep_gfswave016": 1.72,
            "ecmwf_wam": 1.74
          },
          "windModels": {
            "ukmo_seamless": 36,
            "ecmwf_ifs": 38,
            "icon_seamless": 41,
            "gfs_seamless": 42
          }
        },
        {
          "time": "2026-10-14T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.67,
          "swells": [
            {
              "height": 1.96,
              "period": 5.6,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 42,
            "gusts": 55,
            "direction": 204,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.55,
            "state": "high",
            "rising": false
          },
          "temperature": 15.5,
          "weatherCode": 2,
          "models": {
            "ewam": 1.98,
            "meteofrance_wave": 1.26,
            "ncep_gfswave016": 1.84,
            "ecmwf_wam": 1.84
          },
          "windModels": {
            "ukmo_seamless": 38,
            "ecmwf_ifs": 40,
            "icon_seamless": 44,
            "gfs_seamless": 45
          }
        },
        {
          "time": "2026-10-14T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.75,
          "swells": [
            {
              "height": 2.06,
              "period": 5.7,
              "direction": 199
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 43,
            "gusts": 58,
            "direction": 206,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.16,
            "state": "mid",
            "rising": false
          },
          "temperature": 15.6,
          "weatherCode": 2,
          "models": {
            "ewam": 2.08,
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 2,
            "ecmwf_wam": 1.9
          },
          "windModels": {
            "ukmo_seamless": 41,
            "ecmwf_ifs": 41,
            "icon_seamless": 44,
            "gfs_seamless": 48
          }
        },
        {
          "time": "2026-10-14T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.83,
          "swells": [
            {
              "height": 2.18,
              "period": 5.9,
              "direction": 201
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 45,
            "gusts": 63,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.83,
            "state": "mid",
            "rising": false
          },
          "temperature": 15.8,
          "weatherCode": 3,
          "models": {
            "ewam": 2.18,
            "meteofrance_wave": 1.46,
            "ncep_gfswave016": 2.18,
            "ecmwf_wam": 1.96
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 43,
            "icon_seamless": 45,
            "gfs_seamless": 50
          }
        },
        {
          "time": "2026-10-14T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.86,
          "swells": [
            {
              "height": 2.2,
              "period": 6,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 47,
            "gusts": 66,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.43,
            "state": "low",
            "rising": false
          },
          "temperature": 15.9,
          "weatherCode": 3,
          "models": {
            "ewam": 2.22,
            "meteofrance_wave": 1.56,
            "ncep_gfswave016": 2.32,
            "ecmwf_wam": 2.04
          },
          "windModels": {
            "ukmo_seamless": 47,
            "ecmwf_ifs": 43,
            "icon_seamless": 46,
            "gfs_seamless": 52
          }
        },
        {
          "time": "2026-10-14T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.91,
          "swells": [
            {
              "height": 2.28,
              "period": 6.1,
              "direction": 200
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 48,
            "gusts": 66,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.84,
            "state": "low",
            "rising": false
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 2.3,
            "meteofrance_wave": 1.64,
            "ncep_gfswave016": 2.42,
            "ecmwf_wam": 2.12
          },
          "windModels": {
            "ukmo_seamless": 48,
            "ecmwf_ifs": 46,
            "icon_seamless": 48,
            "gfs_seamless": 53
          }
        },
        {
          "time": "2026-10-14T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.9,
          "swells": [
            {
              "height": 2.26,
              "period": 6.1,
              "direction": 201
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 47,
            "gusts": 66,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.86,
            "state": "low",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 2.28,
            "meteofrance_wave": 1.74,
            "ncep_gfswave016": 2.52,
            "ecmwf_wam": 2.22
          },
          "windModels": {
            "ukmo_seamless": 47,
            "ecmwf_ifs": 46,
            "icon_seamless": 46,
            "gfs_seamless": 54
          }
        },
        {
          "time": "2026-10-14T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.86,
          "swells": [
            {
              "height": 2.2,
              "period": 6.2,
              "direction": 202
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 46,
            "gusts": 66,
            "direction": 209,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.4,
            "state": "low",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 2.22,
            "meteofrance_wave": 1.82,
            "ncep_gfswave016": 2.58,
            "ecmwf_wam": 2.32
          },
          "windModels": {
            "ukmo_seamless": 47,
            "ecmwf_ifs": 46,
            "icon_seamless": 45,
            "gfs_seamless": 53
          }
        },
        {
          "time": "2026-10-14T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.88,
          "swells": [
            {
              "height": 2.22,
              "period": 6.2,
              "direction": 203
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 46,
            "gusts": 64,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.65,
            "state": "mid",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 2.24,
            "meteofrance_wave": 1.84,
            "ncep_gfswave016": 2.62,
            "ecmwf_wam": 2.38
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 45,
            "icon_seamless": 44,
            "gfs_seamless": 53
          }
        },
        {
          "time": "2026-10-14T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.94,
          "swells": [
            {
              "height": 2.3,
              "period": 6.3,
              "direction": 203
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 46,
            "gusts": 65,
            "direction": 213,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.13,
            "state": "mid",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "ewam": 2.32,
            "meteofrance_wave": 1.86,
            "ncep_gfswave016": 2.64,
            "ecmwf_wam": 2.4
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 45,
            "icon_seamless": 45,
            "gfs_seamless": 51
          }
        },
        {
          "time": "2026-10-14T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.98,
          "swells": [
            {
              "height": 2.34,
              "period": 6.3,
              "direction": 201
            }
          ],
          "waveModel": "ewam",
          "wind": {
            "speed": 45,
            "gusts": 64,
            "direction": 211,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.79,
            "state": "high",
            "rising": true
          },
          "temperature": 15.9,
          "weatherCode": 3,
          "models": {
            "ewam": 2.36,
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.62,
            "ecmwf_wam": 2.38
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 44,
            "icon_seamless": 44,
            "gfs_seamless": 48
          }
        },
        {
          "time": "2026-10-14T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.47,
          "swells": [
            {
              "height": 1.76,
              "period": 5,
              "direction": 206
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 44,
            "gusts": 65,
            "direction": 211,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.18,
            "state": "high",
            "rising": true
          },
          "temperature": 15.9,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.6,
            "ecmwf_wam": 2.36
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 42,
            "icon_seamless": 43,
            "gfs_seamless": 49
          }
        },
        {
          "time": "2026-10-14T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.48,
          "swells": [
            {
              "height": 1.76,
              "period": 5,
              "direction": 205
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 44,
            "gusts": 62,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.14,
            "state": "high",
            "rising": false
          },
          "temperature": 15.9,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.6,
            "ecmwf_wam": 2.34
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 42,
            "icon_seamless": 44,
            "gfs_seamless": 48
          }
        },
        {
          "time": "2026-10-14T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.47,
          "swells": [
            {
              "height": 1.76,
              "period": 5,
              "direction": 205
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 44,
            "gusts": 62,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.68,
            "state": "high",
            "rising": false
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.56,
            "ecmwf_wam": 2.32
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 41,
            "icon_seamless": 44,
            "gfs_seamless": 47
          }
        },
        {
          "time": "2026-10-14T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.5,
          "swells": [
            {
              "height": 1.76,
              "period": 5,
              "direction": 204
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 45,
            "gusts": 62,
            "direction": 209,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.01,
            "state": "mid",
            "rising": false
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.52,
            "ecmwf_wam": 2.3
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 43,
            "icon_seamless": 45,
            "gfs_seamless": 47
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-14T06:18:00.000Z",
        "sunrise": "2026-10-14T06:53:00.000Z",
        "sunset": "2026-10-14T17:37:00.000Z",
        "lastLight": "2026-10-14T18:12:00.000Z"
      }
    },
    {
      "date": "2026-10-15",
      "rating": "fair",
      "surfMax": 1.53,
      "seaTemperature": 14.1,
      "tideTurns": [
        {
          "time": "2026-10-15T01:45:50.393Z",
          "level": -1.76,
          "type": "low"
        },
        {
          "time": "2026-10-15T07:42:13.200Z",
          "level": 1.25,
          "type": "high"
        },
        {
          "time": "2026-10-15T14:06:55.083Z",
          "level": -1.74,
          "type": "low"
        },
        {
          "time": "2026-10-15T19:58:02.862Z",
          "level": 1,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-14T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.5,
          "swells": [
            {
              "height": 1.76,
              "period": 4.9,
              "direction": 204
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 46,
            "gusts": 63,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.64,
            "state": "mid",
            "rising": false
          },
          "temperature": 16.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.48,
            "ecmwf_wam": 2.28
          },
          "windModels": {
            "ukmo_seamless": 45,
            "ecmwf_ifs": 42,
            "icon_seamless": 47,
            "gfs_seamless": 48
          }
        },
        {
          "time": "2026-10-15T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.52,
          "swells": [
            {
              "height": 1.76,
              "period": 4.9,
              "direction": 203
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 46,
            "gusts": 64,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.2,
            "state": "low",
            "rising": false
          },
          "temperature": 16.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.88,
            "ncep_gfswave016": 2.48,
            "ecmwf_wam": 2.24
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 42,
            "icon_seamless": 48,
            "gfs_seamless": 47
          }
        },
        {
          "time": "2026-10-15T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.52,
          "swells": [
            {
              "height": 1.72,
              "period": 4.9,
              "direction": 203
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 45,
            "gusts": 66,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.62,
            "state": "low",
            "rising": false
          },
          "temperature": 16.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.86,
            "ncep_gfswave016": 2.46,
            "ecmwf_wam": 2.24
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 42,
            "icon_seamless": 48,
            "gfs_seamless": 44
          }
        },
        {
          "time": "2026-10-15T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.51,
          "swells": [
            {
              "height": 1.7,
              "period": 4.9,
              "direction": 202
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 46,
            "gusts": 67,
            "direction": 208,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.74,
            "state": "low",
            "rising": true
          },
          "temperature": 16.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.84,
            "ncep_gfswave016": 2.46,
            "ecmwf_wam": 2.2
          },
          "windModels": {
            "ukmo_seamless": 47,
            "ecmwf_ifs": 42,
            "icon_seamless": 48,
            "gfs_seamless": 44
          }
        },
        {
          "time": "2026-10-15T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.49,
          "swells": [
            {
              "height": 1.66,
              "period": 4.9,
              "direction": 202
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 45,
            "gusts": 66,
            "direction": 209,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.41,
            "state": "low",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.82,
            "ncep_gfswave016": 2.44,
            "ecmwf_wam": 2.2
          },
          "windModels": {
            "ukmo_seamless": 47,
            "ecmwf_ifs": 41,
            "icon_seamless": 46,
            "gfs_seamless": 44
          }
        },
        {
          "time": "2026-10-15T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.47,
          "swells": [
            {
              "height": 1.64,
              "period": 4.8,
              "direction": 202
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 43,
            "gusts": 65,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.72,
            "state": "mid",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 1.82,
            "ncep_gfswave016": 2.42,
            "ecmwf_wam": 2.2
          },
          "windModels": {
            "ukmo_seamless": 46,
            "ecmwf_ifs": 40,
            "icon_seamless": 44,
            "gfs_seamless": 41
          }
        },
        {
          "time": "2026-10-15T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.45,
          "swells": [
            {
              "height": 1.6,
              "period": 4.8,
              "direction": 202
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 40,
            "gusts": 63,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.04,
            "state": "mid",
            "rising": true
          },
          "temperature": 16,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 1.8,
            "ncep_gfswave016": 2.36,
            "ecmwf_wam": 2.22
          },
          "windModels": {
            "ukmo_seamless": 44,
            "ecmwf_ifs": 38,
            "icon_seamless": 41,
            "gfs_seamless": 40
          }
        },
        {
          "time": "2026-10-15T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.44,
          "swells": [
            {
              "height": 1.58,
              "period": 4.8,
              "direction": 202
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 40,
            "gusts": 63,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.71,
            "state": "high",
            "rising": true
          },
          "temperature": 15.9,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 1.8,
            "ncep_gfswave016": 2.36,
            "ecmwf_wam": 2.24
          },
          "windModels": {
            "ukmo_seamless": 42,
            "ecmwf_ifs": 38,
            "icon_seamless": 34,
            "gfs_seamless": 43
          }
        },
        {
          "time": "2026-10-15T07:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.49,
          "swells": [
            {
              "height": 1.58,
              "period": 4.9,
              "direction": 204
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 40,
            "gusts": 57,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.15,
            "state": "high",
            "rising": true
          },
          "temperature": 15.8,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.82,
            "ncep_gfswave016": 2.44,
            "ecmwf_wam": 2.28
          },
          "windModels": {
            "ukmo_seamless": 41,
            "ecmwf_ifs": 38,
            "icon_seamless": 22,
            "gfs_seamless": 45
          }
        },
        {
          "time": "2026-10-15T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.53,
          "swells": [
            {
              "height": 1.6,
              "period": 5,
              "direction": 206
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 38,
            "gusts": 56,
            "direction": 220,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 1.23,
            "state": "high",
            "rising": false
          },
          "temperature": 15.8,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.82,
            "ncep_gfswave016": 2.46,
            "ecmwf_wam": 2.32
          },
          "windModels": {
            "ukmo_seamless": 40,
            "ecmwf_ifs": 40,
            "icon_seamless": 10,
            "gfs_seamless": 36
          }
        },
        {
          "time": "2026-10-15T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.5,
          "swells": [
            {
              "height": 1.6,
              "period": 4.8,
              "direction": 208
            },
            {
              "height": 0.64,
              "period": 5.5,
              "direction": 154
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 28,
            "gusts": 55,
            "direction": 227,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.9,
            "state": "high",
            "rising": false
          },
          "temperature": 15.7,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.84,
            "ncep_gfswave016": 2.18,
            "ecmwf_wam": 2.36
          },
          "windModels": {
            "ukmo_seamless": 39,
            "ecmwf_ifs": 41,
            "icon_seamless": 14,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-15T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 0.92,
          "swells": [
            {
              "height": 0.92,
              "period": 5.2,
              "direction": 169
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 27,
            "gusts": 42,
            "direction": 225,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": 0.26,
            "state": "high",
            "rising": false
          },
          "temperature": 15.9,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.76,
            "ncep_gfswave016": 1.98,
            "ecmwf_wam": 2.34
          },
          "windModels": {
            "ukmo_seamless": 37,
            "ecmwf_ifs": 45,
            "icon_seamless": 17,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-15T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.07,
          "swells": [
            {
              "height": 1.18,
              "period": 5.1,
              "direction": 183
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 26,
            "gusts": 41,
            "direction": 227,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -0.43,
            "state": "mid",
            "rising": false
          },
          "temperature": 16.2,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.66,
            "ncep_gfswave016": 1.82,
            "ecmwf_wam": 2.34
          },
          "windModels": {
            "ukmo_seamless": 35,
            "ecmwf_ifs": 48,
            "icon_seamless": 16,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-15T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.23,
          "swells": [
            {
              "height": 1.46,
              "period": 5,
              "direction": 198
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 24,
            "gusts": 35,
            "direction": 234,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": {
            "level": -1.02,
            "state": "low",
            "rising": false
          },
          "temperature": 16,
          "weatherCode": 53,
          "models": {
            "meteofrance_wave": 1.58,
            "ncep_gfswave016": 1.7,
            "ecmwf_wam": 2.32
          },
          "windModels": {
            "ukmo_seamless": 33,
            "ecmwf_ifs": 45,
            "icon_seamless": 16,
            "gfs_seamless": 12
          }
        },
        {
          "time": "2026-10-15T13:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.12,
          "swells": [
            {
              "height": 1.3,
              "period": 5.1,
              "direction": 200
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 34,
            "direction": 269,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.49,
            "state": "low",
            "rising": false
          },
          "temperature": 14.9,
          "weatherCode": 63,
          "models": {
            "meteofrance_wave": 1.46,
            "ncep_gfswave016": 1.6,
            "ecmwf_wam": 2.14
          },
          "windModels": {
            "ukmo_seamless": 30,
            "ecmwf_ifs": 29,
            "icon_seamless": 17,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-15T14:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.13,
          "swells": [
            {
              "height": 1.14,
              "period": 5.2,
              "direction": 203
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 33,
            "direction": 306,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.74,
            "state": "low",
            "rising": false
          },
          "temperature": 13.5,
          "weatherCode": 63,
          "models": {
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 1.52,
            "ecmwf_wam": 1.94
          },
          "windModels": {
            "ukmo_seamless": 26,
            "ecmwf_ifs": 15,
            "icon_seamless": 19,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-15T15:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.15,
          "swells": [
            {
              "height": 0.98,
              "period": 5.3,
              "direction": 205
            },
            {
              "height": 0.7,
              "period": 5.9,
              "direction": 198
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 32,
            "direction": 327,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.58,
            "state": "low",
            "rising": true
          },
          "temperature": 12.3,
          "weatherCode": 63,
          "models": {
            "meteofrance_wave": 1.22,
            "ncep_gfswave016": 1.46,
            "ecmwf_wam": 1.76
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 22,
            "icon_seamless": 19,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-15T16:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.09,
          "swells": [
            {
              "height": 0.96,
              "period": 5.2,
              "direction": 200
            },
            {
              "height": 0.58,
              "period": 6.5,
              "direction": 206
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 31,
            "direction": 328,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.03,
            "state": "low",
            "rising": true
          },
          "temperature": 11.6,
          "weatherCode": 61,
          "models": {
            "meteofrance_wave": 1.16,
            "ncep_gfswave016": 1.38,
            "ecmwf_wam": 1.66
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 23,
            "icon_seamless": 17,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-15T17:00:00.000Z",
          "isDay": true,
          "rating": "good",
          "stars": {
            "swell": 2,
            "actual": 2
          },
          "surf": 1.03,
          "swells": [
            {
              "height": 0.96,
              "period": 5,
              "direction": 195
            },
            {
              "height": 0.46,
              "period": 7.2,
              "direction": 215
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 30,
            "direction": 326,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.31,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.3,
          "weatherCode": 61,
          "models": {
            "meteofrance_wave": 1.1,
            "ncep_gfswave016": 1.32,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "ukmo_seamless": 23,
            "ecmwf_ifs": 18,
            "icon_seamless": 14,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-15T18:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 2,
            "actual": 2
          },
          "surf": 0.95,
          "swells": [
            {
              "height": 0.94,
              "period": 4.8,
              "direction": 190
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 27,
            "direction": 324,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.35,
            "state": "high",
            "rising": true
          },
          "temperature": 11.1,
          "weatherCode": 61,
          "models": {
            "meteofrance_wave": 1.04,
            "ncep_gfswave016": 1.26,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ukmo_seamless": 22,
            "ecmwf_ifs": 13,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-15T19:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 2,
            "actual": 2
          },
          "surf": 0.91,
          "swells": [
            {
              "height": 0.86,
              "period": 4.7,
              "direction": 187
            },
            {
              "height": 0.38,
              "period": 7.7,
              "direction": 223
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 311,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.82,
            "state": "high",
            "rising": true
          },
          "temperature": 11,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 1,
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 12,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-15T20:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.88,
          "swells": [
            {
              "height": 0.78,
              "period": 4.7,
              "direction": 185
            },
            {
              "height": 0.42,
              "period": 7.5,
              "direction": 222
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 19,
            "direction": 301,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 1,
            "state": "high",
            "rising": false
          },
          "temperature": 11.1,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 0.96,
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.36
          },
          "windModels": {
            "ukmo_seamless": 10,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-15T21:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.85,
          "swells": [
            {
              "height": 0.7,
              "period": 4.7,
              "direction": 182
            },
            {
              "height": 0.46,
              "period": 7.5,
              "direction": 222
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 17,
            "direction": 294,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.79,
            "state": "high",
            "rising": false
          },
          "temperature": 11.3,
          "weatherCode": 51,
          "models": {
            "meteofrance_wave": 0.92,
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 1.3
          },
          "windModels": {
            "ukmo_seamless": 6,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-15T22:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.82,
          "swells": [
            {
              "height": 0.66,
              "period": 4.9,
              "direction": 190
            },
            {
              "height": 0.44,
              "period": 7.9,
              "direction": 224
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 16,
            "direction": 290,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.25,
            "state": "high",
            "rising": false
          },
          "temperature": 12,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.9,
            "ncep_gfswave016": 1.04,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ukmo_seamless": 7,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 14
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-15T06:20:00.000Z",
        "sunrise": "2026-10-15T06:54:00.000Z",
        "sunset": "2026-10-15T17:35:00.000Z",
        "lastLight": "2026-10-15T18:09:00.000Z"
      }
    },
    {
      "date": "2026-10-16",
      "rating": "good",
      "surfMax": 0.65,
      "seaTemperature": 14,
      "tideTurns": [
        {
          "time": "2026-10-16T02:17:09.621Z",
          "level": -1.66,
          "type": "low"
        },
        {
          "time": "2026-10-16T08:17:55.056Z",
          "level": 0.89,
          "type": "high"
        },
        {
          "time": "2026-10-16T14:41:27.860Z",
          "level": -1.67,
          "type": "low"
        },
        {
          "time": "2026-10-16T20:41:47.173Z",
          "level": 0.59,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "morning",
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-15T23:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.77,
          "swells": [
            {
              "height": 0.62,
              "period": 5.1,
              "direction": 197
            },
            {
              "height": 0.4,
              "period": 8.4,
              "direction": 227
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 17,
            "direction": 289,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.41,
            "state": "mid",
            "rising": false
          },
          "temperature": 12.8,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.86,
            "ncep_gfswave016": 1.02,
            "ecmwf_wam": 1.22
          },
          "windModels": {
            "ukmo_seamless": 11,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-16T00:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.73,
          "swells": [
            {
              "height": 0.58,
              "period": 5.3,
              "direction": 205
            },
            {
              "height": 0.38,
              "period": 8.8,
              "direction": 229
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 19,
            "direction": 286,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.98,
            "state": "low",
            "rising": false
          },
          "temperature": 13.3,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.84,
            "ncep_gfswave016": 0.98,
            "ecmwf_wam": 1.18
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-16T01:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.72,
          "swells": [
            {
              "height": 0.56,
              "period": 5.4,
              "direction": 206
            },
            {
              "height": 0.38,
              "period": 8.9,
              "direction": 229
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 20,
            "direction": 290,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.4,
            "state": "low",
            "rising": false
          },
          "temperature": 13.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.82,
            "ncep_gfswave016": 0.96,
            "ecmwf_wam": 1.16
          },
          "windModels": {
            "ukmo_seamless": 15,
            "ecmwf_ifs": 13,
            "icon_seamless": 10,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-16T02:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.7,
          "swells": [
            {
              "height": 0.54,
              "period": 5.5,
              "direction": 206
            },
            {
              "height": 0.36,
              "period": 8.9,
              "direction": 228
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 21,
            "direction": 295,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.64,
            "state": "low",
            "rising": false
          },
          "temperature": 12.5,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.78,
            "ncep_gfswave016": 0.94,
            "ecmwf_wam": 1.12
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 13,
            "icon_seamless": 9,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-16T03:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.69,
          "swells": [
            {
              "height": 0.52,
              "period": 5.5,
              "direction": 207
            },
            {
              "height": 0.36,
              "period": 8.8,
              "direction": 228
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 21,
            "direction": 300,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.58,
            "state": "low",
            "rising": true
          },
          "temperature": 12,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.76,
            "ncep_gfswave016": 0.9,
            "ecmwf_wam": 1.1
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 13,
            "icon_seamless": 9,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-16T04:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.68,
          "swells": [
            {
              "height": 0.52,
              "period": 5.4,
              "direction": 205
            },
            {
              "height": 0.34,
              "period": 8.7,
              "direction": 227
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 20,
            "direction": 301,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.13,
            "state": "low",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.72,
            "ncep_gfswave016": 0.88,
            "ecmwf_wam": 1.08
          },
          "windModels": {
            "ukmo_seamless": 15,
            "ecmwf_ifs": 13,
            "icon_seamless": 8,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-16T05:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.67,
          "swells": [
            {
              "height": 0.54,
              "period": 5.3,
              "direction": 204
            },
            {
              "height": 0.32,
              "period": 8.5,
              "direction": 227
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 19,
            "direction": 301,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.48,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.7,
            "ncep_gfswave016": 0.86,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 14,
            "icon_seamless": 7,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-16T06:00:00.000Z",
          "isDay": false,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.66,
          "swells": [
            {
              "height": 0.54,
              "period": 5.2,
              "direction": 202
            },
            {
              "height": 0.3,
              "period": 8.4,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 19,
            "direction": 301,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.15,
            "state": "high",
            "rising": true
          },
          "temperature": 11.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.66,
            "ncep_gfswave016": 0.82,
            "ecmwf_wam": 1.02
          },
          "windModels": {
            "ukmo_seamless": 13,
            "ecmwf_ifs": 14,
            "icon_seamless": 7,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-16T07:00:00.000Z",
          "isDay": true,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.65,
          "swells": [
            {
              "height": 0.52,
              "period": 5.1,
              "direction": 203
            },
            {
              "height": 0.3,
              "period": 8.3,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 19,
            "direction": 306,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.62,
            "state": "high",
            "rising": true
          },
          "temperature": 11.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.64,
            "ncep_gfswave016": 0.8,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ukmo_seamless": 13,
            "ecmwf_ifs": 14,
            "icon_seamless": 7,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T08:00:00.000Z",
          "isDay": true,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.61,
          "swells": [
            {
              "height": 0.48,
              "period": 5.1,
              "direction": 205
            },
            {
              "height": 0.3,
              "period": 8.2,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 20,
            "direction": 310,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.88,
            "state": "high",
            "rising": true
          },
          "temperature": 11.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.62,
            "ncep_gfswave016": 0.76,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 14,
            "icon_seamless": 7,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-16T09:00:00.000Z",
          "isDay": true,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.6,
          "swells": [
            {
              "height": 0.46,
              "period": 5.1,
              "direction": 206
            },
            {
              "height": 0.3,
              "period": 8.1,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 19,
            "direction": 314,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.81,
            "state": "high",
            "rising": false
          },
          "temperature": 11.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.6,
            "ncep_gfswave016": 0.74,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ukmo_seamless": 15,
            "ecmwf_ifs": 14,
            "icon_seamless": 8,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-16T10:00:00.000Z",
          "isDay": true,
          "rating": "good",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.58,
          "swells": [
            {
              "height": 0.46,
              "period": 5.1,
              "direction": 207
            },
            {
              "height": 0.28,
              "period": 8,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 21,
            "direction": 320,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.39,
            "state": "high",
            "rising": false
          },
          "temperature": 11.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.58,
            "ncep_gfswave016": 0.72,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 16,
            "icon_seamless": 12,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-16T11:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.54,
          "swells": [
            {
              "height": 0.44,
              "period": 5.1,
              "direction": 209
            },
            {
              "height": 0.24,
              "period": 7.8,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 25,
            "direction": 325,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.23,
            "state": "mid",
            "rising": false
          },
          "temperature": 12.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.56,
            "ncep_gfswave016": 0.7,
            "ecmwf_wam": 0.92
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 19,
            "icon_seamless": 16,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T12:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.53,
          "swells": [
            {
              "height": 0.44,
              "period": 5.1,
              "direction": 210
            },
            {
              "height": 0.22,
              "period": 7.7,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 27,
            "direction": 328,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.82,
            "state": "low",
            "rising": false
          },
          "temperature": 12.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.54,
            "ncep_gfswave016": 0.68,
            "ecmwf_wam": 0.9
          },
          "windModels": {
            "ukmo_seamless": 19,
            "ecmwf_ifs": 22,
            "icon_seamless": 17,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-16T13:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.51,
          "swells": [
            {
              "height": 0.42,
              "period": 5.1,
              "direction": 211
            },
            {
              "height": 0.22,
              "period": 7.8,
              "direction": 226
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 28,
            "direction": 331,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.28,
            "state": "low",
            "rising": false
          },
          "temperature": 13.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.54,
            "ncep_gfswave016": 0.68,
            "ecmwf_wam": 0.88
          },
          "windModels": {
            "ukmo_seamless": 19,
            "ecmwf_ifs": 24,
            "icon_seamless": 18,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-16T14:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.5,
          "swells": [
            {
              "height": 0.4,
              "period": 5,
              "direction": 211
            },
            {
              "height": 0.22,
              "period": 7.9,
              "direction": 225
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 28,
            "direction": 332,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.59,
            "state": "low",
            "rising": false
          },
          "temperature": 13.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.52,
            "ncep_gfswave016": 0.66,
            "ecmwf_wam": 0.88
          },
          "windModels": {
            "ukmo_seamless": 19,
            "ecmwf_ifs": 25,
            "icon_seamless": 18,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-16T15:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.49,
          "swells": [
            {
              "height": 0.38,
              "period": 5.1,
              "direction": 212
            },
            {
              "height": 0.22,
              "period": 8,
              "direction": 225
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 27,
            "direction": 334,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.66,
            "state": "low",
            "rising": true
          },
          "temperature": 13.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.52,
            "ncep_gfswave016": 0.66,
            "ecmwf_wam": 0.86
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 25,
            "icon_seamless": 18,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-16T16:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.45,
          "swells": [
            {
              "height": 0.36,
              "period": 5.4,
              "direction": 215
            },
            {
              "height": 0.18,
              "period": 7.7,
              "direction": 228
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 25,
            "direction": 333,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.37,
            "state": "low",
            "rising": true
          },
          "temperature": 13.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.5,
            "ncep_gfswave016": 0.64,
            "ecmwf_wam": 0.82
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 23,
            "icon_seamless": 17,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-16T17:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.44,
          "swells": [
            {
              "height": 0.36,
              "period": 5.9,
              "direction": 219
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 22,
            "direction": 332,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.81,
            "state": "mid",
            "rising": true
          },
          "temperature": 12.8,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.48,
            "ncep_gfswave016": 0.62,
            "ecmwf_wam": 0.76
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 19,
            "icon_seamless": 16,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-16T18:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.4,
          "swells": [
            {
              "height": 0.34,
              "period": 6.2,
              "direction": 222
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 20,
            "direction": 331,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.24,
            "state": "mid",
            "rising": true
          },
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.46,
            "ncep_gfswave016": 0.6,
            "ecmwf_wam": 0.72
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 17,
            "icon_seamless": 14,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T19:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.4,
          "swells": [
            {
              "height": 0.34,
              "period": 6.1,
              "direction": 221
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 19,
            "direction": 332,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.21,
            "state": "high",
            "rising": true
          },
          "temperature": 11.8,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.44,
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.68
          },
          "windModels": {
            "ukmo_seamless": 13,
            "ecmwf_ifs": 16,
            "icon_seamless": 14,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T20:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.38,
          "swells": [
            {
              "height": 0.32,
              "period": 5.8,
              "direction": 220
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 19,
            "direction": 334,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.51,
            "state": "high",
            "rising": true
          },
          "temperature": 11.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.4,
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.66
          },
          "windModels": {
            "ukmo_seamless": 13,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T21:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.37,
          "swells": [
            {
              "height": 0.32,
              "period": 5.5,
              "direction": 219
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 19,
            "direction": 337,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.58,
            "state": "high",
            "rising": false
          },
          "temperature": 10.8,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.38,
            "ncep_gfswave016": 0.56,
            "ecmwf_wam": 0.62
          },
          "windModels": {
            "ukmo_seamless": 14,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-16T22:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.42,
          "swells": [
            {
              "height": 0.32,
              "period": 5.5,
              "direction": 220
            },
            {
              "height": 0.14,
              "period": 8.9,
              "direction": 180
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 20,
            "direction": 340,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.32,
            "state": "high",
            "rising": false
          },
          "temperature": 10.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.36,
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 14
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-16T06:22:00.000Z",
        "sunrise": "2026-10-16T06:56:00.000Z",
        "sunset": "2026-10-16T17:33:00.000Z",
        "lastLight": "2026-10-16T18:07:00.000Z"
      }
    },
    {
      "date": "2026-10-17",
      "rating": "poor",
      "surfMax": 0.3,
      "seaTemperature": 13.8,
      "tideTurns": [
        {
          "time": "2026-10-17T02:51:41.505Z",
          "level": -1.61,
          "type": "low"
        },
        {
          "time": "2026-10-17T09:03:04.291Z",
          "level": 0.59,
          "type": "high"
        },
        {
          "time": "2026-10-17T15:21:36.454Z",
          "level": -1.52,
          "type": "low"
        },
        {
          "time": "2026-10-17T21:34:23.913Z",
          "level": 0.34,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-16T23:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.32,
          "swells": [
            {
              "height": 0.3,
              "period": 5.6,
              "direction": 220
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 342,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.21,
            "state": "mid",
            "rising": false
          },
          "temperature": 9.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.36,
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T00:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.32,
          "swells": [
            {
              "height": 0.3,
              "period": 5.6,
              "direction": 221
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 345,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.77,
            "state": "mid",
            "rising": false
          },
          "temperature": 9.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.34,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 0.58
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 16,
            "icon_seamless": 13,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T01:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.31,
          "swells": [
            {
              "height": 0.28,
              "period": 5.6,
              "direction": 221
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 346,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.2,
            "state": "low",
            "rising": false
          },
          "temperature": 9.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.34,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 0.56
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 17,
            "icon_seamless": 12,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T02:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.38,
          "swells": [
            {
              "height": 0.28,
              "period": 5.5,
              "direction": 222
            },
            {
              "height": 0.14,
              "period": 8.4,
              "direction": 181
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 348,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.5,
            "state": "low",
            "rising": false
          },
          "temperature": 8.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 0.56
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 12,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.31,
          "swells": [
            {
              "height": 0.26,
              "period": 5.5,
              "direction": 222
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 349,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.6,
            "state": "low",
            "rising": true
          },
          "temperature": 8.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 0.54
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.24,
              "period": 5.4,
              "direction": 222
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 349,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.41,
            "state": "low",
            "rising": true
          },
          "temperature": 8.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 0.54
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.24,
              "period": 5.4,
              "direction": 223
            },
            {
              "height": 0.14,
              "period": 8.7,
              "direction": 238
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 350,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.93,
            "state": "low",
            "rising": true
          },
          "temperature": 8,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.22,
              "period": 5.4,
              "direction": 223
            },
            {
              "height": 0.14,
              "period": 8.5,
              "direction": 236
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 351,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.36,
            "state": "mid",
            "rising": true
          },
          "temperature": 8.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 11,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T07:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.22,
              "period": 5.4,
              "direction": 224
            },
            {
              "height": 0.14,
              "period": 8.6,
              "direction": 236
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 21,
            "direction": 356,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.12,
            "state": "high",
            "rising": true
          },
          "temperature": 8.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 10,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-17T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.27,
          "swells": [
            {
              "height": 0.2,
              "period": 5.4,
              "direction": 224
            },
            {
              "height": 0.12,
              "period": 8.9,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 22,
            "direction": 1,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.44,
            "state": "high",
            "rising": true
          },
          "temperature": 9.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ukmo_seamless": 18,
            "ecmwf_ifs": 17,
            "icon_seamless": 9,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-17T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.27,
          "swells": [
            {
              "height": 0.2,
              "period": 5.4,
              "direction": 225
            },
            {
              "height": 0.12,
              "period": 9,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 23,
            "direction": 6,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.59,
            "state": "high",
            "rising": true
          },
          "temperature": 9.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 0.48
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 17,
            "icon_seamless": 7,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-17T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.26,
          "swells": [
            {
              "height": 0.2,
              "period": 5.5,
              "direction": 226
            },
            {
              "height": 0.12,
              "period": 8.8,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 23,
            "direction": 11,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.47,
            "state": "high",
            "rising": false
          },
          "temperature": 10.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.46
          },
          "windModels": {
            "ukmo_seamless": 17,
            "ecmwf_ifs": 17,
            "icon_seamless": 4,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-17T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.24,
          "swells": [
            {
              "height": 0.18,
              "period": 5.5,
              "direction": 226
            },
            {
              "height": 0.1,
              "period": 8.5,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 24,
            "direction": 17,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.04,
            "state": "high",
            "rising": false
          },
          "temperature": 11.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.44
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 17,
            "icon_seamless": 1,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-17T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.24,
          "swells": [
            {
              "height": 0.18,
              "period": 5.5,
              "direction": 227
            },
            {
              "height": 0.1,
              "period": 8.2,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 24,
            "direction": 23,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.51,
            "state": "mid",
            "rising": false
          },
          "temperature": 11.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 17,
            "icon_seamless": 3,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-17T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.22,
          "swells": [
            {
              "height": 0.16,
              "period": 5.6,
              "direction": 228
            },
            {
              "height": 0.1,
              "period": 8.1,
              "direction": 237
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 24,
            "direction": 24,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.99,
            "state": "low",
            "rising": false
          },
          "temperature": 12.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 17,
            "icon_seamless": 5,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-17T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.16,
              "period": 5.6,
              "direction": 228
            },
            {
              "height": 0.1,
              "period": 8.1,
              "direction": 238
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 23,
            "direction": 20,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.32,
            "state": "low",
            "rising": false
          },
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.26,
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 15,
            "ecmwf_ifs": 16,
            "icon_seamless": 7,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-17T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.14,
              "period": 5.6,
              "direction": 229
            },
            {
              "height": 0.1,
              "period": 8.1,
              "direction": 238
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 23,
            "direction": 12,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.51,
            "state": "low",
            "rising": false
          },
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.26,
            "ncep_gfswave016": 0.34,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 15,
            "ecmwf_ifs": 16,
            "icon_seamless": 9,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-17T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.14,
              "period": 5.5,
              "direction": 229
            },
            {
              "height": 0.1,
              "period": 8.2,
              "direction": 238
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 0,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.48,
            "state": "low",
            "rising": true
          },
          "temperature": 12.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.24,
            "ncep_gfswave016": 0.34,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 15,
            "icon_seamless": 10,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-17T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.12,
              "period": 5.4,
              "direction": 230
            },
            {
              "height": 0.1,
              "period": 8.4,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 350,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.16,
            "state": "low",
            "rising": true
          },
          "temperature": 12,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.24,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 14,
            "icon_seamless": 12,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-17T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.17,
          "swells": [
            {
              "height": 0.12,
              "period": 5.4,
              "direction": 230
            },
            {
              "height": 0.1,
              "period": 8.4,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 346,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.68,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.8,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.22,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 14,
            "icon_seamless": 12,
            "gfs_seamless": 3
          }
        },
        {
          "time": "2026-10-17T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.12,
              "period": 5.5,
              "direction": 230
            },
            {
              "height": 0.1,
              "period": 8.2,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 22,
            "direction": 348,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.24,
            "state": "high",
            "rising": true
          },
          "temperature": 11.6,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.22,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 14,
            "icon_seamless": 12,
            "gfs_seamless": 3
          }
        },
        {
          "time": "2026-10-17T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.17,
          "swells": [
            {
              "height": 0.12,
              "period": 5.7,
              "direction": 231
            },
            {
              "height": 0.1,
              "period": 7.9,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 22,
            "direction": 350,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.08,
            "state": "high",
            "rising": true
          },
          "temperature": 11.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.24,
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 0.4
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 14,
            "icon_seamless": 10,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-17T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.17,
          "swells": [
            {
              "height": 0.12,
              "period": 5.6,
              "direction": 231
            },
            {
              "height": 0.1,
              "period": 7.7,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 22,
            "direction": 351,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.29,
            "state": "high",
            "rising": true
          },
          "temperature": 10.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.24,
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 15,
            "icon_seamless": 9,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-17T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.14,
              "period": 5.1,
              "direction": 211
            },
            {
              "height": 0.1,
              "period": 7.7,
              "direction": 239
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 22,
            "direction": 349,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.31,
            "state": "high",
            "rising": false
          },
          "temperature": 10.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.24,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 15,
            "icon_seamless": 9,
            "gfs_seamless": 6
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-17T06:23:00.000Z",
        "sunrise": "2026-10-17T06:58:00.000Z",
        "sunset": "2026-10-17T17:31:00.000Z",
        "lastLight": "2026-10-17T18:05:00.000Z"
      }
    },
    {
      "date": "2026-10-18",
      "rating": "poor",
      "surfMax": 0,
      "seaTemperature": 13.7,
      "tideTurns": [
        {
          "time": "2026-10-18T03:41:23.155Z",
          "level": -1.47,
          "type": "low"
        },
        {
          "time": "2026-10-18T10:02:49.828Z",
          "level": 0.32,
          "type": "high"
        },
        {
          "time": "2026-10-18T16:11:24.271Z",
          "level": -1.36,
          "type": "low"
        },
        {
          "time": "2026-10-18T22:36:55.741Z",
          "level": 0.2,
          "type": "high"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-17T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.14,
              "period": 4.4,
              "direction": 192
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 345,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.05,
            "state": "high",
            "rising": false
          },
          "temperature": 9.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.26,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 16,
            "icon_seamless": 10,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-18T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.16,
              "period": 3.9,
              "direction": 172
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 23,
            "direction": 342,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.41,
            "state": "mid",
            "rising": false
          },
          "temperature": 9.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.26,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.42
          },
          "windModels": {
            "ukmo_seamless": 16,
            "ecmwf_ifs": 16,
            "icon_seamless": 11,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-18T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.19,
          "swells": [
            {
              "height": 0.16,
              "period": 3.8,
              "direction": 172
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 23,
            "direction": 325,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.88,
            "state": "low",
            "rising": false
          },
          "temperature": 8.5,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.26,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.44
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "icon_seamless": 11,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-18T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.16,
              "period": 3.9,
              "direction": 173
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 22,
            "direction": 327,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.21,
            "state": "low",
            "rising": false
          },
          "temperature": 8.2,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.44
          },
          "windModels": {
            "ecmwf_ifs": 18,
            "icon_seamless": 11,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-18T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.16,
              "period": 3.9,
              "direction": 173
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 11,
            "gusts": 22,
            "direction": 327,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.41,
            "state": "low",
            "rising": false
          },
          "temperature": 8,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.46
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "icon_seamless": 11,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.12,
          "swells": [
            {
              "height": 0.16,
              "period": 3.7,
              "direction": 144
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 12,
            "gusts": 22,
            "direction": 327,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.46,
            "state": "low",
            "rising": true
          },
          "temperature": 7.9,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.28,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.48
          },
          "windModels": {
            "ecmwf_ifs": 20,
            "icon_seamless": 12,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.18,
              "period": 3.3,
              "direction": 114
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 24,
            "direction": 326,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.26,
            "state": "low",
            "rising": true
          },
          "temperature": 7.9,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.48
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "icon_seamless": 15,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.18,
              "period": 3,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 27,
            "direction": 325,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.84,
            "state": "mid",
            "rising": true
          },
          "temperature": 8.1,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.3,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 17,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T07:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.18,
              "period": 3,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 27,
            "direction": 323,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.39,
            "state": "mid",
            "rising": true
          },
          "temperature": 8.6,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.32,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 18,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.16,
              "period": 3,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 27,
            "direction": 320,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.05,
            "state": "high",
            "rising": true
          },
          "temperature": 9.3,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.34,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.5
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 19,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-18T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.16,
              "period": 3,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 27,
            "direction": 316,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.19,
            "state": "high",
            "rising": true
          },
          "temperature": 10.2,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.36,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 21,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-18T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.18,
              "period": 3,
              "direction": 84
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 30,
            "direction": 306,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.32,
            "state": "high",
            "rising": true
          },
          "temperature": 11.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.38,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "icon_seamless": 24,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-18T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.2,
              "period": 3.1,
              "direction": 82
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 34,
            "direction": 295,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.22,
            "state": "high",
            "rising": false
          },
          "temperature": 11.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.38,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "icon_seamless": 27,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-18T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.22,
              "period": 3.1,
              "direction": 81
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 22,
            "gusts": 34,
            "direction": 287,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.15,
            "state": "high",
            "rising": false
          },
          "temperature": 12.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.4,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.52
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 30,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-18T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.26,
              "period": 3.2,
              "direction": 80
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 22,
            "gusts": 34,
            "direction": 288,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.6,
            "state": "mid",
            "rising": false
          },
          "temperature": 12.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.42,
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.54
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "icon_seamless": 31,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-18T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.3,
              "period": 3.3,
              "direction": 80
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 34,
            "direction": 291,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.98,
            "state": "low",
            "rising": false
          },
          "temperature": 12.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.46,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.58
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "icon_seamless": 32,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-18T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.34,
              "period": 3.3,
              "direction": 79
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 34,
            "direction": 295,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.22,
            "state": "low",
            "rising": false
          },
          "temperature": 12.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.48,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "icon_seamless": 32,
            "gfs_seamless": 4
          }
        },
        {
          "time": "2026-10-18T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.36,
              "period": 3.3,
              "direction": 80
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 35,
            "direction": 298,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.36,
            "state": "low",
            "rising": false
          },
          "temperature": 12.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.5,
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.62
          },
          "windModels": {
            "ecmwf_ifs": 20,
            "icon_seamless": 30,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-18T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.36,
              "period": 3.3,
              "direction": 80
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 35,
            "direction": 304,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.3,
            "state": "low",
            "rising": true
          },
          "temperature": 11.8,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.52,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.66
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "icon_seamless": 27,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-18T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.38,
              "period": 3.3,
              "direction": 81
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 34,
            "direction": 310,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1,
            "state": "low",
            "rising": true
          },
          "temperature": 11.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.54,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.68
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "icon_seamless": 25,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-18T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.42,
              "period": 3.5,
              "direction": 82
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 33,
            "direction": 313,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.61,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.3,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.56,
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 0.7
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "icon_seamless": 24,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-18T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.1,
              "period": 8.6,
              "direction": 171
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 32,
            "direction": 315,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.29,
            "state": "high",
            "rising": true
          },
          "temperature": 10.9,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.56,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.72
          },
          "windModels": {
            "ecmwf_ifs": 20,
            "icon_seamless": 23,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-18T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.48,
              "period": 4,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 33,
            "direction": 320,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.04,
            "state": "high",
            "rising": true
          },
          "temperature": 10.5,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.58,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "icon_seamless": 21,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-18T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.5,
              "period": 4.1,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 33,
            "direction": 328,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.15,
            "state": "high",
            "rising": true
          },
          "temperature": 10.1,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.6,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "icon_seamless": 18,
            "gfs_seamless": 9
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-18T06:25:00.000Z",
        "sunrise": "2026-10-18T07:00:00.000Z",
        "sunset": "2026-10-18T17:29:00.000Z",
        "lastLight": "2026-10-18T18:03:00.000Z"
      }
    },
    {
      "date": "2026-10-19",
      "rating": "poor",
      "surfMax": 0,
      "seaTemperature": 13.7,
      "tideTurns": [
        {
          "time": "2026-10-19T04:38:00.679Z",
          "level": -1.34,
          "type": "low"
        },
        {
          "time": "2026-10-19T11:19:09.828Z",
          "level": 0.27,
          "type": "high"
        },
        {
          "time": "2026-10-19T17:20:01.488Z",
          "level": -1.19,
          "type": "low"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-18T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.52,
              "period": 4.2,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 33,
            "direction": 336,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": 0.18,
            "state": "high",
            "rising": false
          },
          "temperature": 9.8,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.64,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.76
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "icon_seamless": 16,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.54,
              "period": 4.2,
              "direction": 85
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 34,
            "direction": 340,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.05,
            "state": "high",
            "rising": false
          },
          "temperature": 9.6,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.66,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.78
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "icon_seamless": 17,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.56,
              "period": 4.3,
              "direction": 86
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 33,
            "direction": 358,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.47,
            "state": "mid",
            "rising": false
          },
          "temperature": 9.6,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.7,
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.84
          },
          "windModels": {
            "ecmwf_ifs": 25,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-19T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.58,
              "period": 4.4,
              "direction": 87
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 32,
            "direction": 0,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.87,
            "state": "low",
            "rising": false
          },
          "temperature": 9.6,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 0.74,
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 0.88
          },
          "windModels": {
            "ecmwf_ifs": 25,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-19T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.6,
              "period": 4.4,
              "direction": 88
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 32,
            "direction": 2,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.14,
            "state": "low",
            "rising": false
          },
          "temperature": 9.8,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.78,
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-19T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.29,
          "swells": [
            {
              "height": 0.18,
              "period": 8.3,
              "direction": 175
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 32,
            "direction": 2,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.3,
            "state": "low",
            "rising": false
          },
          "temperature": 10,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.82,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-19T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.26,
              "period": 6.7,
              "direction": 138
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 33,
            "direction": 3,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.33,
            "state": "low",
            "rising": true
          },
          "temperature": 10.2,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 0.88,
            "ncep_gfswave016": 0.34,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-19T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4.1,
              "direction": 89
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 34,
            "direction": 6,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.14,
            "state": "low",
            "rising": true
          },
          "temperature": 10.5,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 0.92,
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 1.08
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-19T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4.3,
              "direction": 94
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 36,
            "direction": 14,
            "relation": "offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.8,
            "state": "mid",
            "rising": true
          },
          "temperature": 10.8,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.1
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4.5,
              "direction": 99
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 37,
            "direction": 27,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.45,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.3,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.1,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 1.14
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4.8,
              "direction": 104
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 38,
            "direction": 40,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.18,
            "state": "high",
            "rising": true
          },
          "temperature": 11.8,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.18,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 1.16
          },
          "windModels": {
            "ecmwf_ifs": 29,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.6,
              "period": 5.2,
              "direction": 109
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 39,
            "direction": 51,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.08,
            "state": "high",
            "rising": true
          },
          "temperature": 12.3,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.26,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 1.18
          },
          "windModels": {
            "ecmwf_ifs": 32,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.54,
              "period": 5.6,
              "direction": 114
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 22,
            "gusts": 41,
            "direction": 55,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.25,
            "state": "high",
            "rising": true
          },
          "temperature": 12.7,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 1.22
          },
          "windModels": {
            "ecmwf_ifs": 35,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.48,
              "period": 5.9,
              "direction": 119
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 41,
            "direction": 57,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.21,
            "state": "high",
            "rising": false
          },
          "temperature": 12.9,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 1.24
          },
          "windModels": {
            "ecmwf_ifs": 37,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-19T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.58,
              "period": 5.9,
              "direction": 119
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 41,
            "direction": 55,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.08,
            "state": "high",
            "rising": false
          },
          "temperature": 12.9,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 1.24
          },
          "windModels": {
            "ecmwf_ifs": 36,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-19T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.7,
              "period": 5.7,
              "direction": 120
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 42,
            "direction": 49,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.46,
            "state": "mid",
            "rising": false
          },
          "temperature": 12.7,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.42,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ecmwf_ifs": 34,
            "gfs_seamless": 12
          }
        },
        {
          "time": "2026-10-19T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.8,
              "period": 5.5,
              "direction": 120
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 22,
            "gusts": 42,
            "direction": 41,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.78,
            "state": "low",
            "rising": false
          },
          "temperature": 12.5,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.42,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ecmwf_ifs": 31,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-19T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.9,
              "period": 5.4,
              "direction": 118
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 42,
            "direction": 33,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.03,
            "state": "low",
            "rising": false
          },
          "temperature": 12.2,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.4,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ecmwf_ifs": 29,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-19T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.02,
              "period": 5.2,
              "direction": 115
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 42,
            "direction": 26,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.18,
            "state": "low",
            "rising": false
          },
          "temperature": 11.9,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.38,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 1.28
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-19T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.03,
          "swells": [
            {
              "height": 0.2,
              "period": 7,
              "direction": 136
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 41,
            "direction": 23,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.15,
            "state": "low",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 1.28
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-19T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.08,
              "period": 5.1,
              "direction": 112
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 41,
            "direction": 23,
            "relation": "offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.91,
            "state": "low",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 1.32
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-19T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.06,
              "period": 5,
              "direction": 112
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 39,
            "direction": 26,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.61,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 1.34
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-19T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.02,
              "period": 5,
              "direction": 111
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 38,
            "direction": 30,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.33,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 1.38
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 12
          }
        },
        {
          "time": "2026-10-19T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.02,
              "period": 5,
              "direction": 111
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 37,
            "direction": 35,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.08,
            "state": "high",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 11
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-19T06:27:00.000Z",
        "sunrise": "2026-10-19T07:01:00.000Z",
        "sunset": "2026-10-19T17:27:00.000Z",
        "lastLight": "2026-10-19T18:01:00.000Z"
      }
    },
    {
      "date": "2026-10-20",
      "rating": "fair",
      "surfMax": 0.45,
      "seaTemperature": 13.8,
      "tideTurns": [
        {
          "time": "2026-10-19T23:46:23.547Z",
          "level": 0.23,
          "type": "high"
        },
        {
          "time": "2026-10-20T05:55:08.366Z",
          "level": -1.22,
          "type": "low"
        },
        {
          "time": "2026-10-20T12:29:52.572Z",
          "level": 0.35,
          "type": "high"
        },
        {
          "time": "2026-10-20T18:43:50.672Z",
          "level": -1.15,
          "type": "low"
        }
      ],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-19T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.02,
              "period": 5.1,
              "direction": 112
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 35,
            "direction": 40,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.15,
            "state": "high",
            "rising": true
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 10
          }
        },
        {
          "time": "2026-10-20T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.11,
          "swells": [
            {
              "height": 0.12,
              "period": 7.2,
              "direction": 143
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 18,
            "gusts": 34,
            "direction": 43,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.22,
            "state": "high",
            "rising": false
          },
          "temperature": 11.7,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.48,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 8
          }
        },
        {
          "time": "2026-10-20T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1,
              "period": 5.1,
              "direction": 113
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 33,
            "direction": 45,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.03,
            "state": "high",
            "rising": false
          },
          "temperature": 11.6,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-20T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 5.1,
              "direction": 114
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 32,
            "direction": 48,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.32,
            "state": "mid",
            "rising": false
          },
          "temperature": 11.4,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 1.52
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-20T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.96,
              "period": 5,
              "direction": 115
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 31,
            "direction": 48,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.67,
            "state": "mid",
            "rising": false
          },
          "temperature": 11.3,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-20T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.96,
              "period": 4.9,
              "direction": 113
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 31,
            "direction": 50,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.93,
            "state": "low",
            "rising": false
          },
          "temperature": 11.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.3,
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 3
          }
        },
        {
          "time": "2026-10-20T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 4.9,
              "direction": 111
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 31,
            "direction": 52,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.14,
            "state": "low",
            "rising": false
          },
          "temperature": 11,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 1.62
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 2
          }
        },
        {
          "time": "2026-10-20T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 4.8,
              "direction": 109
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 13,
            "gusts": 32,
            "direction": 55,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.22,
            "state": "low",
            "rising": true
          },
          "temperature": 11.1,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 1.64
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 1
          }
        },
        {
          "time": "2026-10-20T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 4.9,
              "direction": 113
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 14,
            "gusts": 33,
            "direction": 62,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -1.11,
            "state": "low",
            "rising": true
          },
          "temperature": 11.2,
          "weatherCode": 0,
          "models": {
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 1.66
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 2
          }
        },
        {
          "time": "2026-10-20T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 5,
              "direction": 116
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 35,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.84,
            "state": "low",
            "rising": true
          },
          "temperature": 11.5,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.38,
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 1.66
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 3
          }
        },
        {
          "time": "2026-10-20T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 5.2,
              "direction": 120
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 37,
            "direction": 79,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.55,
            "state": "mid",
            "rising": true
          },
          "temperature": 11.9,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.42,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.68
          },
          "windModels": {
            "ecmwf_ifs": 29,
            "gfs_seamless": 5
          }
        },
        {
          "time": "2026-10-20T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.94,
              "period": 5.3,
              "direction": 123
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 36,
            "direction": 85,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.26,
            "state": "mid",
            "rising": true
          },
          "temperature": 12.2,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.46,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.68
          },
          "windModels": {
            "ecmwf_ifs": 31,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-20T11:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.43,
          "swells": [
            {
              "height": 0.32,
              "period": 7.2,
              "direction": 159
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 22,
            "gusts": 35,
            "direction": 93,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.06,
            "state": "high",
            "rising": true
          },
          "temperature": 12.5,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.48,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.7
          },
          "windModels": {
            "ecmwf_ifs": 32,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-20T12:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.45,
          "swells": [
            {
              "height": 0.34,
              "period": 7.3,
              "direction": 194
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 24,
            "gusts": 35,
            "direction": 94,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.32,
            "state": "high",
            "rising": true
          },
          "temperature": 12.8,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.52,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.7
          },
          "windModels": {
            "ecmwf_ifs": 33,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-20T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.24,
          "swells": [
            {
              "height": 0.26,
              "period": 6.6,
              "direction": 145
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 23,
            "gusts": 36,
            "direction": 85,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.32,
            "state": "high",
            "rising": false
          },
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.5,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.68
          },
          "windModels": {
            "ecmwf_ifs": 33,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-20T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.98,
              "period": 5.5,
              "direction": 129
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 21,
            "gusts": 37,
            "direction": 71,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": 0.06,
            "state": "high",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.48,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.64
          },
          "windModels": {
            "ecmwf_ifs": 32,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-20T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.06,
              "period": 5.5,
              "direction": 129
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 20,
            "gusts": 39,
            "direction": 63,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.29,
            "state": "mid",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.46,
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 1.62
          },
          "windModels": {
            "ecmwf_ifs": 30,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-20T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.08,
              "period": 5.4,
              "direction": 128
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 19,
            "gusts": 41,
            "direction": 63,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": {
            "level": -0.61,
            "state": "mid",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.44,
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 1.6
          },
          "windModels": {
            "ecmwf_ifs": 28,
            "gfs_seamless": 9
          }
        },
        {
          "time": "2026-10-20T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.12,
              "period": 5.3,
              "direction": 127
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 43,
            "direction": 67,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -0.88,
            "state": "low",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.42,
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "ecmwf_ifs": 27,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-20T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.14,
              "period": 5.2,
              "direction": 126
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 44,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": {
            "level": -1.09,
            "state": "low",
            "rising": false
          },
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.4,
            "ncep_gfswave016": 0.34,
            "ecmwf_wam": 1.54
          },
          "windModels": {
            "ecmwf_ifs": 26,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-20T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.12,
              "period": 5.2,
              "direction": 126
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 43,
            "direction": 72,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 3,
          "models": {
            "meteofrance_wave": 1.38,
            "ncep_gfswave016": 0.34,
            "ecmwf_wam": 1.52
          },
          "windModels": {
            "ecmwf_ifs": 25,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-20T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.12,
              "period": 5.1,
              "direction": 126
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 42,
            "direction": 74,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.36,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 6
          }
        },
        {
          "time": "2026-10-20T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 1.1,
              "period": 5.1,
              "direction": 126
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 15,
            "gusts": 41,
            "direction": 76,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 2,
          "models": {
            "meteofrance_wave": 1.34,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 7
          }
        },
        {
          "time": "2026-10-20T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.06,
          "swells": [
            {
              "height": 0.14,
              "period": 7.3,
              "direction": 138
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 16,
            "gusts": 40,
            "direction": 75,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.32,
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 8
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-20T06:28:00.000Z",
        "sunrise": "2026-10-20T07:03:00.000Z",
        "sunset": "2026-10-20T17:25:00.000Z",
        "lastLight": "2026-10-20T17:59:00.000Z"
      }
    },
    {
      "date": "2026-10-21",
      "rating": "poor",
      "surfMax": 0.23,
      "seaTemperature": 13.8,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-20T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.25,
          "swells": [
            {
              "height": 0.16,
              "period": 7.8,
              "direction": 156
            }
          ],
          "waveModel": "meteofrance_wave",
          "wind": {
            "speed": 17,
            "gusts": 39,
            "direction": 71,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 1,
          "models": {
            "meteofrance_wave": 1.28,
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 24,
            "gfs_seamless": 11
          }
        },
        {
          "time": "2026-10-21T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.26,
              "period": 7.8,
              "direction": 233
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 38,
            "direction": 69,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.3,
          "swells": [
            {
              "height": 0.26,
              "period": 7.8,
              "direction": 233
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 38,
            "direction": 68,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.28,
          "swells": [
            {
              "height": 0.24,
              "period": 7.7,
              "direction": 233
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 38,
            "direction": 68,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.28,
          "swells": [
            {
              "height": 0.24,
              "period": 7.7,
              "direction": 233
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 38,
            "direction": 67,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.27,
          "swells": [
            {
              "height": 0.24,
              "period": 7.6,
              "direction": 233
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 39,
            "direction": 65,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.7,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.25,
          "swells": [
            {
              "height": 0.22,
              "period": 7.6,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 40,
            "direction": 64,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.25,
          "swells": [
            {
              "height": 0.22,
              "period": 7.6,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 40,
            "direction": 62,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.25,
          "swells": [
            {
              "height": 0.22,
              "period": 7.6,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 40,
            "direction": 61,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 13
          }
        },
        {
          "time": "2026-10-21T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.23,
          "swells": [
            {
              "height": 0.2,
              "period": 7.5,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 40,
            "direction": 60,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.23,
          "swells": [
            {
              "height": 0.2,
              "period": 7.5,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 39,
            "direction": 60,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.8,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.38
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-21T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.23,
          "swells": [
            {
              "height": 0.2,
              "period": 7.5,
              "direction": 234
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 37,
            "direction": 64,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 1.34
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.18,
              "period": 7.5,
              "direction": 235
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 35,
            "direction": 68,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 1.32
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.18,
              "period": 7.5,
              "direction": 235
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 34,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.26,
            "ecmwf_wam": 1.3
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.18,
              "period": 7.4,
              "direction": 235
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 36,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.4,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 40,
            "direction": 69,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 1.22
          },
          "windModels": {
            "ecmwf_ifs": 23,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.4,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 43,
            "direction": 68,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 1.16
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.3,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 42,
            "direction": 66,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 1.12
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-21T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.3,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 41,
            "direction": 64,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 1.08
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-21T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.2,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 39,
            "direction": 63,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 20,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-21T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.16,
              "period": 7.2,
              "direction": 236
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 39,
            "direction": 62,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "gfs_seamless": 15
          }
        },
        {
          "time": "2026-10-21T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7.2,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 38,
            "direction": 61,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7.1,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 37,
            "direction": 59,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.22,
            "ecmwf_wam": 0.92
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 14
          }
        },
        {
          "time": "2026-10-21T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7.1,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 35,
            "direction": 54,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.24,
            "ecmwf_wam": 0.86
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 15
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-21T06:30:00.000Z",
        "sunrise": "2026-10-21T07:05:00.000Z",
        "sunset": "2026-10-21T17:22:00.000Z",
        "lastLight": "2026-10-21T17:57:00.000Z"
      }
    },
    {
      "date": "2026-10-22",
      "rating": "poor",
      "surfMax": 0.09,
      "seaTemperature": null,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-21T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7.1,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 34,
            "direction": 49,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.28,
            "ecmwf_wam": 0.82
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-22T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 32,
            "direction": 45,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.3,
            "ecmwf_wam": 0.78
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-22T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.15,
          "swells": [
            {
              "height": 0.14,
              "period": 7,
              "direction": 237
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 32,
            "direction": 46,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.32,
            "ecmwf_wam": 0.76
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-22T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.12,
          "swells": [
            {
              "height": 0.12,
              "period": 7,
              "direction": 238
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 31,
            "direction": 49,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.36,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-22T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.12,
          "swells": [
            {
              "height": 0.12,
              "period": 7,
              "direction": 238
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 30,
            "direction": 55,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.38,
            "ecmwf_wam": 0.72
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-22T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.12,
          "swells": [
            {
              "height": 0.12,
              "period": 7,
              "direction": 238
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 29,
            "direction": 61,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.4,
            "ecmwf_wam": 0.7
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-22T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.9,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 28,
            "direction": 67,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.42,
            "ecmwf_wam": 0.68
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-22T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.9,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 27,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.6,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.44,
            "ecmwf_wam": 0.66
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-22T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.9,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 27,
            "direction": 69,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.6,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.46,
            "ecmwf_wam": 0.66
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-22T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.9,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 26,
            "direction": 68,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.5,
            "ecmwf_wam": 0.64
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-22T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.9,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 26,
            "direction": 69,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 0.64
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-22T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.09,
          "swells": [
            {
              "height": 0.1,
              "period": 6.8,
              "direction": 239
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 25,
            "direction": 77,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.62
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-22T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4.1,
              "direction": 78
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 23,
            "direction": 85,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.66,
            "ecmwf_wam": 0.62
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-22T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.72,
              "period": 4.2,
              "direction": 81
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 22,
            "direction": 90,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.72,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-22T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.74,
              "period": 4.2,
              "direction": 82
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 21,
            "direction": 92,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.74,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-22T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.76,
              "period": 4.2,
              "direction": 84
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 20,
            "direction": 90,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.76,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-22T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.78,
              "period": 4.2,
              "direction": 85
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 19,
            "direction": 88,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.78,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-22T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.76,
              "period": 4.1,
              "direction": 85
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 18,
            "direction": 83,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.76,
            "ecmwf_wam": 0.58
          },
          "windModels": {
            "ecmwf_ifs": 9,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-22T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.76,
              "period": 4.1,
              "direction": 84
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 17,
            "direction": 76,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.76,
            "ecmwf_wam": 0.58
          },
          "windModels": {
            "ecmwf_ifs": 8,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-22T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.74,
              "period": 4.1,
              "direction": 84
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 17,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.74,
            "ecmwf_wam": 0.58
          },
          "windModels": {
            "ecmwf_ifs": 7,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-22T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.72,
              "period": 4.1,
              "direction": 85
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 17,
            "direction": 64,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 0.72,
            "ecmwf_wam": 0.6
          },
          "windModels": {
            "ecmwf_ifs": 7,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-22T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.68,
              "period": 4,
              "direction": 87
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 18,
            "direction": 61,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.68,
            "ecmwf_wam": 0.62
          },
          "windModels": {
            "ecmwf_ifs": 7,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-22T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.66,
              "period": 4,
              "direction": 88
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 18,
            "direction": 57,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.2,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 0.66,
            "ecmwf_wam": 0.66
          },
          "windModels": {
            "ecmwf_ifs": 8,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-22T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.6,
              "period": 3.8,
              "direction": 86
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 17,
            "direction": 52,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.9,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.62,
            "ecmwf_wam": 0.68
          },
          "windModels": {
            "ecmwf_ifs": 9,
            "gfs_seamless": 22
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-22T06:32:00.000Z",
        "sunrise": "2026-10-22T07:07:00.000Z",
        "sunset": "2026-10-22T17:20:00.000Z",
        "lastLight": "2026-10-22T17:55:00.000Z"
      }
    },
    {
      "date": "2026-10-23",
      "rating": "fair",
      "surfMax": 1.04,
      "seaTemperature": null,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-22T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.18,
              "period": 2.1,
              "direction": 90
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 16,
            "direction": 49,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.5,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.7
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-23T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.26,
              "period": 3.8,
              "direction": 135
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 15,
            "direction": 47,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.2,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 0.72
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-23T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.21,
          "swells": [
            {
              "height": 0.2,
              "period": 5.2,
              "direction": 147
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 15,
            "direction": 51,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.8,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 0.72
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-23T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.22,
          "swells": [
            {
              "height": 0.14,
              "period": 6.7,
              "direction": 160
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 15,
            "direction": 57,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-23T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.5,
              "period": 3.6,
              "direction": 115
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 14,
            "gusts": 15,
            "direction": 65,
            "relation": "cross-offshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.7,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.52,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-23T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.18,
          "swells": [
            {
              "height": 0.1,
              "period": 7.7,
              "direction": 172
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 17,
            "direction": 70,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.54,
            "ecmwf_wam": 0.74
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-23T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.17,
          "swells": [
            {
              "height": 0.1,
              "period": 7.3,
              "direction": 173
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 19,
            "direction": 76,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 9,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.58,
            "ecmwf_wam": 0.76
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-23T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.2,
          "swells": [
            {
              "height": 0.12,
              "period": 7.7,
              "direction": 173
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 20,
            "direction": 83,
            "relation": "cross-shore",
            "sheltered": true,
            "surface": "clean",
            "model": "median"
          },
          "tide": null,
          "temperature": 8.9,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.6,
            "ecmwf_wam": 0.76
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-23T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.19,
          "swells": [
            {
              "height": 0.1,
              "period": 10,
              "direction": 183
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 21,
            "direction": 90,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.2,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.7,
            "ecmwf_wam": 0.8
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-23T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.78,
              "period": 4.3,
              "direction": 132
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 21,
            "direction": 95,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.6,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.78,
            "ecmwf_wam": 0.84
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-23T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0,
          "swells": [
            {
              "height": 0.88,
              "period": 4.6,
              "direction": 135
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 22,
            "direction": 98,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.88,
            "ecmwf_wam": 0.88
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-23T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.16,
          "swells": [
            {
              "height": 0.96,
              "period": 4.8,
              "direction": 137
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 23,
            "direction": 98,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.9,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 0.96,
            "ecmwf_wam": 0.9
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-23T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 0,
            "actual": 0
          },
          "surf": 0.24,
          "swells": [
            {
              "height": 1.02,
              "period": 5,
              "direction": 138
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 25,
            "direction": 96,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.5,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.02,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-23T12:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.39,
          "swells": [
            {
              "height": 1.1,
              "period": 5.2,
              "direction": 140
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 27,
            "direction": 95,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.9,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-23T13:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.52,
          "swells": [
            {
              "height": 1.1,
              "period": 5.3,
              "direction": 142
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 29,
            "direction": 96,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.1,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-23T14:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.66,
          "swells": [
            {
              "height": 1.12,
              "period": 5.3,
              "direction": 144
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 31,
            "direction": 98,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.02
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-23T15:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.78,
          "swells": [
            {
              "height": 1.12,
              "period": 5.4,
              "direction": 146
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 32,
            "direction": 102,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-23T16:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 1,
            "actual": 1
          },
          "surf": 0.91,
          "swells": [
            {
              "height": 1.12,
              "period": 5.5,
              "direction": 148
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 32,
            "direction": 103,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-23T17:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.04,
          "swells": [
            {
              "height": 1.14,
              "period": 5.6,
              "direction": 150
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 31,
            "direction": 102,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.2,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.06
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-23T18:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.05,
          "swells": [
            {
              "height": 1.14,
              "period": 5.6,
              "direction": 152
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 30,
            "direction": 103,
            "relation": "cross-shore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.16,
            "ecmwf_wam": 1.08
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-23T19:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.06,
          "swells": [
            {
              "height": 1.12,
              "period": 5.7,
              "direction": 153
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 30,
            "direction": 107,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.8,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.06
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-23T20:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.07,
          "swells": [
            {
              "height": 1.12,
              "period": 5.7,
              "direction": 154
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 29,
            "direction": 112,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.5,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-23T21:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.06,
          "swells": [
            {
              "height": 1.1,
              "period": 5.7,
              "direction": 155
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 29,
            "direction": 119,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.1,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-23T22:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.07,
          "swells": [
            {
              "height": 1.1,
              "period": 5.6,
              "direction": 157
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 28,
            "direction": 122,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.7,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.02
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 23
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-23T06:34:00.000Z",
        "sunrise": "2026-10-23T07:08:00.000Z",
        "sunset": "2026-10-23T17:18:00.000Z",
        "lastLight": "2026-10-23T17:53:00.000Z"
      }
    },
    {
      "date": "2026-10-24",
      "rating": "fair",
      "surfMax": 1.26,
      "seaTemperature": null,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": null,
          "stars": null
        },
        {
          "name": "morning",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "afternoon",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        },
        {
          "name": "evening",
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-23T23:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.08,
          "swells": [
            {
              "height": 1.12,
              "period": 5.6,
              "direction": 158
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 28,
            "direction": 125,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.3,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-24T00:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.09,
          "swells": [
            {
              "height": 1.12,
              "period": 5.6,
              "direction": 160
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 27,
            "direction": 128,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.9,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-24T01:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.12,
              "period": 5.6,
              "direction": 161
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 26,
            "direction": 132,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.5,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-24T02:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.12,
              "period": 5.6,
              "direction": 162
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 25,
            "direction": 132,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-24T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.11,
          "swells": [
            {
              "height": 1.12,
              "period": 5.6,
              "direction": 163
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 24,
            "direction": 131,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 8.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 0.92
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-24T04:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.1,
              "period": 5.6,
              "direction": 164
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 23,
            "direction": 128,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 8,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 0.9
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-24T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.11,
          "swells": [
            {
              "height": 1.1,
              "period": 5.6,
              "direction": 164
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 21,
            "direction": 124,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 7.8,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 0.88
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-24T06:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.1,
          "swells": [
            {
              "height": 1.08,
              "period": 5.5,
              "direction": 165
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 21,
            "direction": 123,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 7.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 0.86
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-24T07:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.09,
          "swells": [
            {
              "height": 1.06,
              "period": 5.5,
              "direction": 166
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 19,
            "direction": 125,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 8.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 0.9
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-24T08:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.07,
          "swells": [
            {
              "height": 1.04,
              "period": 5.4,
              "direction": 166
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 18,
            "direction": 128,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 9.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-24T09:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.11,
          "swells": [
            {
              "height": 1.02,
              "period": 5.4,
              "direction": 167
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 18,
            "direction": 130,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 10.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-24T10:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.14,
          "swells": [
            {
              "height": 1,
              "period": 5.3,
              "direction": 168
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 19,
            "direction": 131,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 11.3,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.1,
            "ecmwf_wam": 1.02
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-24T11:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.16,
          "swells": [
            {
              "height": 0.98,
              "period": 5.3,
              "direction": 168
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 21,
            "direction": 130,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.06
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-24T12:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.18,
          "swells": [
            {
              "height": 0.96,
              "period": 5.3,
              "direction": 169
            },
            {
              "height": 0.38,
              "period": 10.6,
              "direction": 212
            },
            {
              "height": 0.38,
              "period": 9,
              "direction": 207
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 23,
            "direction": 131,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.8,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.12,
            "ecmwf_wam": 1.1
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-24T13:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.12,
          "swells": [
            {
              "height": 0.92,
              "period": 5.1,
              "direction": 169
            },
            {
              "height": 0.52,
              "period": 10.9,
              "direction": 211
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 24,
            "direction": 132,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.08
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-24T14:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 0.9,
              "period": 4.8,
              "direction": 170
            },
            {
              "height": 0.64,
              "period": 11.1,
              "direction": 210
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 25,
            "direction": 135,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.14,
            "ecmwf_wam": 1.06
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-24T15:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.26,
          "swells": [
            {
              "height": 0.78,
              "period": 10.1,
              "direction": 209
            },
            {
              "height": 0.86,
              "period": 5.1,
              "direction": 170
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 25,
            "direction": 138,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.8,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.16,
            "ecmwf_wam": 1.04
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 16
          }
        },
        {
          "time": "2026-10-24T16:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1,
          "swells": [
            {
              "height": 0.96,
              "period": 6.5,
              "direction": 178
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 26,
            "direction": 143,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.6,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.16,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-24T17:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.06,
              "period": 8.3,
              "direction": 186
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 15,
            "gusts": 27,
            "direction": 147,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.16,
            "ecmwf_wam": 0.98
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 17
          }
        },
        {
          "time": "2026-10-24T18:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.16,
              "period": 9.6,
              "direction": 194
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 28,
            "direction": 151,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.16,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-24T19:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.16,
              "period": 9.9,
              "direction": 195
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 16,
            "gusts": 30,
            "direction": 156,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.18,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-24T20:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.18,
              "period": 9.6,
              "direction": 196
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 31,
            "direction": 160,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.7,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.18,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-24T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.33,
          "swells": [
            {
              "height": 1.18,
              "period": 9.3,
              "direction": 197
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 32,
            "direction": 164,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 0.96
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-24T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.18,
              "period": 9.2,
              "direction": 197
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 33,
            "direction": 167,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 21
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-24T06:35:00.000Z",
        "sunrise": "2026-10-24T07:10:00.000Z",
        "sunset": "2026-10-24T17:16:00.000Z",
        "lastLight": "2026-10-24T17:51:00.000Z"
      }
    },
    {
      "date": "2026-10-25",
      "rating": "fair",
      "surfMax": 1.36,
      "seaTemperature": null,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          }
        },
        {
          "name": "morning",
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-24T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.33,
          "swells": [
            {
              "height": 1.2,
              "period": 9.1,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 33,
            "direction": 170,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 18,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-25T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.2,
              "period": 9,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 33,
            "direction": 173,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 0.94
          },
          "windModels": {
            "ecmwf_ifs": 18,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-25T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.2,
              "period": 8.9,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 33,
            "direction": 176,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-25T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.31,
          "swells": [
            {
              "height": 1.2,
              "period": 8.8,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 32,
            "direction": 180,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.3,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.06
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-25T03:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.31,
          "swells": [
            {
              "height": 1.2,
              "period": 8.7,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 32,
            "direction": 184,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.14
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-25T04:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.22,
              "period": 8.6,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 32,
            "direction": 188,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.22,
            "ecmwf_wam": 1.2
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-25T05:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.22,
              "period": 8.6,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 32,
            "direction": 191,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.22,
            "ecmwf_wam": 1.26
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T06:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.33,
          "swells": [
            {
              "height": 1.24,
              "period": 8.5,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 17,
            "gusts": 31,
            "direction": 194,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 12.9,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.32
          },
          "windModels": {
            "ecmwf_ifs": 10,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T07:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.33,
          "swells": [
            {
              "height": 1.24,
              "period": 8.4,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 31,
            "direction": 196,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.38
          },
          "windModels": {
            "ecmwf_ifs": 11,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T08:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.26,
              "period": 8.4,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 30,
            "direction": 196,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.1,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.26,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 12,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T09:00:00.000Z",
          "isDay": true,
          "rating": "fair",
          "stars": {
            "swell": 3,
            "actual": 1
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.26,
              "period": 8.3,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 18,
            "gusts": 29,
            "direction": 195,
            "relation": "onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.2,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.26,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "ecmwf_ifs": 13,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.28,
              "period": 8.2,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 28,
            "direction": 194,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.4,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.28,
            "ecmwf_wam": 1.52
          },
          "windModels": {
            "ecmwf_ifs": 14,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-25T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.34,
          "swells": [
            {
              "height": 1.28,
              "period": 8.2,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 21,
            "gusts": 27,
            "direction": 192,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.5,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.28,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ecmwf_ifs": 15,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-25T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.3,
              "period": 8.1,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 22,
            "gusts": 26,
            "direction": 192,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.6,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.3,
            "ecmwf_wam": 1.62
          },
          "windModels": {
            "ecmwf_ifs": 16,
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-25T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.3,
              "period": 8,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 22,
            "gusts": 25,
            "direction": 194,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.7,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.3,
            "ecmwf_wam": 1.62
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-25T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.36,
          "swells": [
            {
              "height": 1.32,
              "period": 7.9,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 22,
            "gusts": 24,
            "direction": 199,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.8,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.32,
            "ecmwf_wam": 1.6
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-25T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.35,
          "swells": [
            {
              "height": 1.32,
              "period": 7.9,
              "direction": 200
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 21,
            "gusts": 24,
            "direction": 203,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.9,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.32,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-25T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.3,
              "period": 7.8,
              "direction": 201
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 21,
            "gusts": 24,
            "direction": 207,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 13.9,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.3,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ecmwf_ifs": 17,
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-25T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.3,
          "swells": [
            {
              "height": 1.28,
              "period": 7.8,
              "direction": 202
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 24,
            "direction": 210,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.28,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "ecmwf_ifs": 18,
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-25T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.28,
          "swells": [
            {
              "height": 1.26,
              "period": 7.8,
              "direction": 203
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 24,
            "direction": 212,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14,
          "weatherCode": 51,
          "models": {
            "ncep_gfswave016": 1.26,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "ecmwf_ifs": 18,
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-25T19:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.26,
          "swells": [
            {
              "height": 1.24,
              "period": 7.8,
              "direction": 204
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 23,
            "direction": 214,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.54
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-25T20:00:00.000Z",
          "isDay": false,
          "rating": "fair",
          "stars": {
            "swell": 2,
            "actual": 1
          },
          "surf": 1.23,
          "swells": [
            {
              "height": 1.22,
              "period": 7.7,
              "direction": 206
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 22,
            "direction": 214,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "choppy",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "ecmwf_ifs": 19,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-25T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.21,
          "swells": [
            {
              "height": 1.2,
              "period": 7.7,
              "direction": 207
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 21,
            "direction": 213,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.22,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "ecmwf_ifs": 20,
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-25T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.2,
          "swells": [
            {
              "height": 1.2,
              "period": 7.7,
              "direction": 208
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 22,
            "direction": 214,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.22,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-25T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.2,
          "swells": [
            {
              "height": 1.2,
              "period": 7.7,
              "direction": 209
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 23,
            "direction": 213,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "ecmwf_ifs": 21,
            "gfs_seamless": 18
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-25T06:37:00.000Z",
        "sunrise": "2026-10-25T07:12:00.000Z",
        "sunset": "2026-10-25T17:14:00.000Z",
        "lastLight": "2026-10-25T17:49:00.000Z"
      }
    },
    {
      "date": "2026-10-26",
      "rating": "poor",
      "surfMax": 1.68,
      "seaTemperature": null,
      "tideTurns": [],
      "sections": [
        {
          "name": "early",
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          }
        },
        {
          "name": "morning",
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          }
        },
        {
          "name": "afternoon",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        },
        {
          "name": "evening",
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          }
        }
      ],
      "hours": [
        {
          "time": "2026-10-26T00:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.2,
              "period": 7.7,
              "direction": 210
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 24,
            "direction": 213,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.1,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.4
          },
          "windModels": {
            "ecmwf_ifs": 22,
            "gfs_seamless": 18
          }
        },
        {
          "time": "2026-10-26T01:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.2,
              "period": 7.7,
              "direction": 210
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 19,
            "gusts": 22,
            "direction": 191,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.7,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "gfs_seamless": 19
          }
        },
        {
          "time": "2026-10-26T02:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.18,
          "swells": [
            {
              "height": 1.2,
              "period": 7.6,
              "direction": 211
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 20,
            "gusts": 24,
            "direction": 185,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.7,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.42
          },
          "windModels": {
            "gfs_seamless": 20
          }
        },
        {
          "time": "2026-10-26T03:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.19,
          "swells": [
            {
              "height": 1.2,
              "period": 7.8,
              "direction": 211
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 21,
            "gusts": 25,
            "direction": 181,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.2,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "gfs_seamless": 21
          }
        },
        {
          "time": "2026-10-26T04:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.25,
          "swells": [
            {
              "height": 1.22,
              "period": 8.5,
              "direction": 210
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 22,
            "gusts": 24,
            "direction": 177,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.22,
            "ecmwf_wam": 1.44
          },
          "windModels": {
            "gfs_seamless": 22
          }
        },
        {
          "time": "2026-10-26T05:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.32,
          "swells": [
            {
              "height": 1.24,
              "period": 9.3,
              "direction": 209
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 23,
            "gusts": 22,
            "direction": 173,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.24,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "gfs_seamless": 23
          }
        },
        {
          "time": "2026-10-26T06:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.38,
          "swells": [
            {
              "height": 1.26,
              "period": 9.9,
              "direction": 208
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 24,
            "gusts": 22,
            "direction": 170,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.26,
            "ecmwf_wam": 1.46
          },
          "windModels": {
            "gfs_seamless": 24
          }
        },
        {
          "time": "2026-10-26T07:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.43,
          "swells": [
            {
              "height": 1.28,
              "period": 10.3,
              "direction": 206
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 25,
            "gusts": 23,
            "direction": 170,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.28,
            "ecmwf_wam": 1.48
          },
          "windModels": {
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-26T08:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.48,
          "swells": [
            {
              "height": 1.32,
              "period": 10.4,
              "direction": 205
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 25,
            "gusts": 25,
            "direction": 170,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.32,
            "ecmwf_wam": 1.5
          },
          "windModels": {
            "gfs_seamless": 25
          }
        },
        {
          "time": "2026-10-26T09:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.49,
          "swells": [
            {
              "height": 1.34,
              "period": 10,
              "direction": 203
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 26,
            "gusts": 26,
            "direction": 171,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.34,
            "ecmwf_wam": 1.54
          },
          "windModels": {
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-26T10:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 3,
            "actual": 0
          },
          "surf": 1.42,
          "swells": [
            {
              "height": 1.34,
              "period": 8.6,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 26,
            "gusts": 25,
            "direction": 171,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.4,
            "ecmwf_wam": 1.56
          },
          "windModels": {
            "gfs_seamless": 26
          }
        },
        {
          "time": "2026-10-26T11:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.31,
          "swells": [
            {
              "height": 1.36,
              "period": 6.7,
              "direction": 194
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 27,
            "gusts": 25,
            "direction": 172,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.44,
            "ecmwf_wam": 1.58
          },
          "windModels": {
            "gfs_seamless": 27
          }
        },
        {
          "time": "2026-10-26T12:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.42,
          "swells": [
            {
              "height": 1.36,
              "period": 5.3,
              "direction": 189
            },
            {
              "height": 0.66,
              "period": 10.5,
              "direction": 227
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 28,
            "gusts": 22,
            "direction": 173,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.5,
            "ecmwf_wam": 1.6
          },
          "windModels": {
            "gfs_seamless": 28
          }
        },
        {
          "time": "2026-10-26T13:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.45,
          "swells": [
            {
              "height": 1.44,
              "period": 5.1,
              "direction": 189
            },
            {
              "height": 0.62,
              "period": 11.6,
              "direction": 227
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 29,
            "gusts": 17,
            "direction": 175,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.4,
          "weatherCode": 3,
          "models": {
            "ncep_gfswave016": 1.56
          },
          "windModels": {
            "gfs_seamless": 29
          }
        },
        {
          "time": "2026-10-26T14:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.53,
          "swells": [
            {
              "height": 1.52,
              "period": 5.5,
              "direction": 189
            },
            {
              "height": 0.6,
              "period": 11.7,
              "direction": 227
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 31,
            "gusts": 10,
            "direction": 178,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.4,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.64
          },
          "windModels": {
            "gfs_seamless": 31
          }
        },
        {
          "time": "2026-10-26T15:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.59,
          "swells": [
            {
              "height": 1.6,
              "period": 5.9,
              "direction": 189
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 32,
            "gusts": 7,
            "direction": 181,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.7
          },
          "windModels": {
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-26T16:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.63,
          "swells": [
            {
              "height": 1.66,
              "period": 6,
              "direction": 190
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 32,
            "gusts": 6,
            "direction": 183,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.76
          },
          "windModels": {
            "gfs_seamless": 32
          }
        },
        {
          "time": "2026-10-26T17:00:00.000Z",
          "isDay": true,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.68,
          "swells": [
            {
              "height": 1.74,
              "period": 6.1,
              "direction": 191
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 33,
            "gusts": 7,
            "direction": 186,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.8
          },
          "windModels": {
            "gfs_seamless": 33
          }
        },
        {
          "time": "2026-10-26T18:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.73,
          "swells": [
            {
              "height": 1.8,
              "period": 6.3,
              "direction": 192
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 34,
            "gusts": 11,
            "direction": 189,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.86
          },
          "windModels": {
            "gfs_seamless": 34
          }
        },
        {
          "time": "2026-10-26T19:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.76,
          "swells": [
            {
              "height": 1.84,
              "period": 6.4,
              "direction": 193
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 33,
            "gusts": 18,
            "direction": 193,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 1.9
          },
          "windModels": {
            "gfs_seamless": 33
          }
        },
        {
          "time": "2026-10-26T20:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.77,
          "swells": [
            {
              "height": 1.86,
              "period": 6.6,
              "direction": 195
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 33,
            "gusts": 27,
            "direction": 196,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 1.92
          },
          "windModels": {
            "gfs_seamless": 33
          }
        },
        {
          "time": "2026-10-26T21:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.79,
          "swells": [
            {
              "height": 1.9,
              "period": 6.7,
              "direction": 196
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 31,
            "gusts": 35,
            "direction": 200,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.6,
          "weatherCode": 0,
          "models": {
            "ncep_gfswave016": 1.96
          },
          "windModels": {
            "gfs_seamless": 31
          }
        },
        {
          "time": "2026-10-26T22:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.72,
          "swells": [
            {
              "height": 1.88,
              "period": 7,
              "direction": 198
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 29,
            "gusts": 37,
            "direction": 205,
            "relation": "onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 1,
          "models": {
            "ncep_gfswave016": 1.92
          },
          "windModels": {
            "gfs_seamless": 29
          }
        },
        {
          "time": "2026-10-26T23:00:00.000Z",
          "isDay": false,
          "rating": "poor",
          "stars": {
            "swell": 2,
            "actual": 0
          },
          "surf": 1.71,
          "swells": [
            {
              "height": 1.84,
              "period": 7.3,
              "direction": 199
            }
          ],
          "waveModel": "ncep_gfswave016",
          "wind": {
            "speed": 27,
            "gusts": 37,
            "direction": 211,
            "relation": "cross-onshore",
            "sheltered": false,
            "surface": "blown-out",
            "model": "median"
          },
          "tide": null,
          "temperature": 14.5,
          "weatherCode": 2,
          "models": {
            "ncep_gfswave016": 1.86
          },
          "windModels": {
            "gfs_seamless": 27
          }
        }
      ],
      "sun": {
        "firstLight": "2026-10-26T06:39:00.000Z",
        "sunrise": "2026-10-26T07:14:00.000Z",
        "sunset": "2026-10-26T17:12:00.000Z",
        "lastLight": "2026-10-26T17:47:00.000Z"
      }
    }
  ]
}