[
  {
    "index": 1,
    "heading": "2026-03-26 03:09:13 AREA: G",
    "published_at": "2026-03-26 03:09:13",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\n_AMTQIEXWY \nVIK_UU__\n 130/26\nFORT__9\nN_A_T NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-0!_7872 -,$ ,,_ ' _796 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "clean_text": "ZCZC GA82\n_AMTQIEXWY\nVIK_UU__\n130/26\nFORT__9\nN_A_T NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-0!_7872 -,$ ,,_ ' _796 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-12.3N 002-09.8W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n 002-0! 7872 -,$ ,, ' 796 56-12.3n 002-09.8w ais inoperative",
      "N a t na gaoithe windfarm",
      "Amtqiexwy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-03-26 03:08:50 AREA: G",
    "published_at": "2026-03-26 03:08:50",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY TQWMTN 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY TQWMTN 001-25.6E UNLIT.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon south buoy tqwmtn 001-25.6e unlit.",
    "decoded_highlights": [
      "Dudgeon south buoy tqwmtn 001-25.6e unlit",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 3,
    "heading": "2026-03-26 03:08:13 AREA: G",
    "published_at": "2026-03-26 03:08:13",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \n,_$:_)0_,_4.. \n1. TURBINE FOG SIGNALS INOPERATIVE: \nA. D01, 507_ G_PPAROMQE. 9,=)_'01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\n,_$:_)0_,_4..\n1. TURBINE FOG SIGNALS INOPERATIVE:\nA. D01, 507_ G_PPAROMQE. 9,=)_'01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A. d01, 507 g pparomqe. 9, ) '01, 53-15.7n 000-55.9e",
      "1. turbine fog signals inoperative",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-03-26 03:07:41 AREA: G",
    "published_at": "2026-03-26 03:07:41",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESH_Y_J_1. MET MAST 53-109:__._02-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESH_Y_J_1. MET MAST 53-109:__._02-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "ORWELL GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Orwell gas field northwesh y j 1. met mast 53-109: . 02-59.1e unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Orwell gas field northwesh y j 1. met mast 53-109: . 02-59.1e unlit and all navaids inoperative",
      "2. cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-03-26 03:07:11 AREA: G",
    "published_at": "2026-03-26 03:07:11",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD. \nPLATFORM_DZRTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM_DZRTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform dzrth 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform dzrth 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 6,
    "heading": "2026-03-26 03:06:47 AREA: G",
    "published_at": "2026-03-26 03:06:47",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-_4.4_0_7:___7.+_._6_\nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-_4.4_0_7:___7.+_._6_\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55- 4.4 0 7: 7. . 6",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-03-26 03:06:22 AREA: G",
    "published_at": "2026-03-26 03:06:22",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-76___0.+_84. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-76___0.+_84.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-76 0. 84",
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-03-26 03:05:55 AREA: G",
    "published_at": "2026-03-26 03:05:55",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\n__-.\n77TUEON_H_P\n_ONGLS_HD_Z_ORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N 001-23.6 2\n(,)85 -,$ !9_ '8_,-) 8,9034-58=3\nNNNN",
    "clean_text": "ZCZC GA94\n__-.\n77TUEON_H_P\n_ONGLS_HD_Z_ORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N 001-23.6 2\n(,)85 -,$ !9_ '8_,-) 8,9034-58=3\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Turbine b10 55-06.8n 001-23.6 2. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine b10 55-06.8n 001-23.6 2",
      "Ongls hd z ore demonstrator wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 9,
    "heading": "2026-03-26 03:05:23 AREA: G",
    "published_at": "2026-03-26 03:05:23",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN _AJV_FP_W_\n1. PLATFORM 49/27-ED 53-03.6N 00_-_12.6\n\nMUNLIT AND ALL NAVAIDS INOPERATIVE. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN _AJV_FP_W_\n1. PLATFORM 49/27-ED 53-03.6N 00_-_12.6\n\nMUNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Munlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Munlit and all navaids inoperative",
      "1. platform 49/27-ed 53-03.6n 00 - 12.6",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 10,
    "heading": "2026-03-26 03:04:58 AREA: G",
    "published_at": "2026-03-26 03:04:58",
    "area": "G",
    "message_id": "GA03",
    "text": "ZCZC GA03\nWZ 224/26\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET DPWMJFHPM_HF_Y_PGM\n_WWMYW OFF AIR.\nNNNN",
    "clean_text": "ZCZC GA03\nWZ 224/26\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET DPWMJFHPM_HF_Y_PGM\n_WWMYW OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vhf dsc services from dunnet dpwmjfhpm hf y pgm",
      "Gmdss. mrcc shetland",
      "Wwmyw off air"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-03-26 03:04:27 AREA: T",
    "published_at": "2026-03-26 03:04:27",
    "area": "T",
    "message_id": "",
    "text": "ZCAC L04\nWZ 225/26\nGMDSS.\nMRCC SHETLAN_.\n_\n_.! 4/__.2.2*_.*__3' !49.=__00**.*888( 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCAC L04\nWZ 225/26\nGMDSS.\nMRCC SHETLAN_.\n_\n_.! 4/__.2.2*_.*__3' !49.=__00**.*888( 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: Mrcc shetlan. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc shetlan",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-03-26 03:03:57 AREA: G",
    "published_at": "2026-03-26 03:03:57",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 53-11.9N 002-29.1E.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "Bessemer gas field",
      "2. cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 13,
    "heading": "2026-03-26 03:03:34 AREA: G",
    "published_at": "2026-03-26 03:03:34",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA1'9\n:+ 230/26 \n_84 8')3. \nROVA HEAD LIGHTHOUSE___  _HG_M\n_ KGGPKBQN_SFLSP_\nNNNN",
    "clean_text": "ZCZC GA1'9\n:+ 230/26\n_84 8')3.\nROVA HEAD LIGHTHOUSE___ _HG_M\n_ KGGPKBQN_SFLSP_\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: Rova head lighthouse hg m. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rova head lighthouse hg m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-03-26 03:03:08 AREA: G",
    "published_at": "2026-03-26 03:03:08",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK _TEAQQMPN 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK _TEAQQMPN 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform southwark teaqqmpn 002-05.8e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform southwark teaqqmpn 002-05.8e unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 15,
    "heading": "2026-03-26 03:00:16 AREA: G",
    "published_at": "2026-03-26 03:00:16",
    "area": "G",
    "message_id": "GE90",
    "text": "ZCZC GE90\nEXTENDED OUTLOOK\nG_YFMHZM_ZONGFJJCPWML_BHDPM_PH_Z_!/0_._+.)0$'_.+._$0._6!_!_0.88_ :9-'5_7-4$ -_3,:6, AT 252300 UTC\n\n\nLOW 976 S E ICELAND WILL CLEAR E ACROSS THE NORWEGIAN BASIN AJMM_SM_PHCYPMWCYF_MJ_H_HIGH 1038 __ 5_3 -+943' 3/53,$' - 48$_3 ,, TO THE W OF ICELAND FRI NF_NH\n_M_HDFD RIDGE WILL MOV E ACROSS THE UK AND THE N SEA SAT INTO EARLY SUN AS THE HIGH MOVES TO NE OF MADEIRA WHILE EXTENDING THE RIDGE ACROSS BISCAY AND INTO NORTHERN EUROPE. LOW 988 55N 050W FRI EVENING MOVES ACROSS THE SE OF ICELAND LATE SUN BEFORE MOV TOWARDS THE LOFOTEN ISLANDS MON. COMPLEX LOW 1012 40N 058W MIDDAY SAT MOVES TO S OF ICELAND, AS A FLN FEATURE MON. A FURTHER LOW 1016 46N 035W DEVELOPS MON AFTERNOON AS HIGH 1033 42N 049W FOLLOWS NE. GALES SPREAD TO FAIR ISLE FRI NIGHT AND SAT AND VIKING FOR A TIME LATE SAT. FURTHER GALES SPREAD SE FM FAIR ISLE EARLY SUN TO REACH THAMES SUN NIGHT\nGONNIII_ZFZC GB08\nGALE WARNING WEDNESDAY 25 MARCH 2153 UTC\n\nVIKING FAIR ISLE\nNORTHWESTERLY SEVERE GALE FORCE 9 DECREASING GALE FORCE 8 IMMINENT\nNNNN",
    "clean_text": "ZCZC GE90\nEXTENDED OUTLOOK\nG_YFMHZM_ZONGFJJCPWML_BHDPM_PH_Z_!/0_._+.)0$'_.+._$0._6!_!_0.88_ :9-'5_7-4$ -_3,:6, AT 252300 UTC\n\nLOW 976 S E ICELAND WILL CLEAR E ACROSS THE NORWEGIAN BASIN AJMM_SM_PHCYPMWCYF_MJ_H_HIGH 1038 __ 5_3 -+943' 3/53,$' - 48$_3 ,, TO THE W OF ICELAND FRI NF_NH\n_M_HDFD RIDGE WILL MOV E ACROSS THE UK AND THE N SEA SAT INTO EARLY SUN AS THE HIGH MOVES TO NE OF MADEIRA WHILE EXTENDING THE RIDGE ACROSS BISCAY AND INTO NORTHERN EUROPE. LOW 988 55N 050W FRI EVENING MOVES ACROSS THE SE OF ICELAND LATE SUN BEFORE MOV TOWARDS THE LOFOTEN ISLANDS MON. COMPLEX LOW 1012 40N 058W MIDDAY SAT MOVES TO S OF ICELAND, AS A FLN FEATURE MON. A FURTHER LOW 1016 46N 035W DEVELOPS MON AFTERNOON AS HIGH 1033 42N 049W FOLLOWS NE. GALES SPREAD TO FAIR ISLE FRI NIGHT AND SAT AND VIKING FOR A TIME LATE SAT. FURTHER GALES SPREAD SE FM FAIR ISLE EARLY SUN TO REACH THAMES SUN NIGHT\nGONNIII_ZFZC GB08\nGALE WARNING WEDNESDAY 25 MARCH 2153 UTC\n\nVIKING FAIR ISLE\nNORTHWESTERLY SEVERE GALE FORCE 9 DECREASING GALE FORCE 8 IMMINENT\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "THAMES"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention gales, ice across the covered waters.",
    "decoded_highlights": [
      "M hdfd ridge will mov e across the uk and the n sea sat into early sun as the high moves to ne of madeira while extending the ridge across biscay and into northern europe. low 988 55n 050w fri evening moves across the se of iceland late sun before mov towards the lofoten islands mon. complex low 1012 40n 058w midday sat moves to s of iceland, as a fln feature mon. a further low 1016 46n 035w develops mon afternoon as high 1033 42n 049w follows ne. gales spread to fair isle fri night and sat and viking for a time late sat. further gales spread se fm fair isle early sun to reach thames sun night",
      "Gale warning wednesday 25 march 2153 utc",
      "Northwesterly severe gale force 9 decreasing gale force 8 imminent"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 16,
    "heading": "2026-03-26 02:58:11 AREA: F",
    "published_at": "2026-03-26 02:58:11",
    "area": "F",
    "message_id": "",
    "text": "ZCZC F_69\n021059 U_C JUL\nBALTLC SEA NAV WA_C_02/259\nSO\nTHERN_N _OUTHEAS_ERN,'.2.+6__\n_..)_!_0*=)'_'\n_+ -:5'0\nCANCE_ LSHF_MJVM_\nM_YV__\nNNNN",
    "clean_text": "ZCZC F_69\n021059 U_C JUL\nBALTLC SEA NAV WA_C_02/259\nSO\nTHERN_N _OUTHEAS_ERN,'.2.+6__\n_..)_!_0*=)'_'\n_+ -:5'0\nCANCE_ LSHF_MJVM_\nM_YV__\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code F. Readable text says: Baltlc sea nav wa c 02/259. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Baltlc sea nav wa c 02/259"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 17,
    "heading": "2026-03-26 02:56:36 AREA: F",
    "published_at": "2026-03-26 02:56:36",
    "area": "F",
    "message_id": "FA17",
    "text": "ZCZC FA17\n21104_ UTC NOVOIBZ_F_MJPM\nM_YBM__Y_T_IC ICE INFORMATION\nVESSIMLZCWM_ZYM_ZYHJMJCLQP_HMHZMHY_!/_60*_6!__!+*.*$-MS_M\nJ_F_PF+_*.2+\n94\n_,9.5+2_0 AS FOLLOWS:\nWHEN PASSING LAT N60 ON VHF CH 82.\nARRIVAL CEPORT ON VHF_CH 1' WHEN THE SHIP IS WELL MOORED.\nDEPARTURE REORT ON VHF CH 16, LATEST 6 HOURS BEFORE DEPARTURE.\nFOR INFORMATION ON RESTRICTIONS GO LO_TJGLSHFXP_BG_Y_ONONNI_\nZCZMMU_ H_RPW UTC NOV\nBALTIC SEA NAV WARN 042/25\nALL AREAS\n _OFV_UORENT ICCIDFO:\nWWW.SMHI.SE/ICESE_\nNNNN",
    "clean_text": "ZCZC FA17\n21104_ UTC NOVOIBZ_F_MJPM\nM_YBM__Y_T_IC ICE INFORMATION\nVESSIMLZCWM_ZYM_ZYHJMJCLQP_HMHZMHY_!/_60*_6!__!+*.*$-MS_M\nJ_F_PF+_*.2+\n94\n_,9.5+2_0 AS FOLLOWS:\nWHEN PASSING LAT N60 ON VHF CH 82.\nARRIVAL CEPORT ON VHF_CH 1' WHEN THE SHIP IS WELL MOORED.\nDEPARTURE REORT ON VHF CH 16, LATEST 6 HOURS BEFORE DEPARTURE.\nFOR INFORMATION ON RESTRICTIONS GO LO_TJGLSHFXP_BG_Y_ONONNI_\nZCZMMU_ H_RPW UTC NOV\nBALTIC SEA NAV WARN 042/25\nALL AREAS\n_OFV_UORENT ICCIDFO:\nWWW.SMHI.SE/ICESE_\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "M ybm y t ic ice information",
      "For information on restrictions go lo tjglshfxp bg y ononni",
      "Arrival ceport on vhf ch 1' when the ship is well moored"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-03-26 02:51:13 AREA: F",
    "published_at": "2026-03-26 02:51:13",
    "area": "F",
    "message_id": "FA80",
    "text": "ZCZC FA80\n071144 UTK MAL\nESTONIAN NAVCA_CZV_\nCEM__A_LTINPM\n \nFPJ __CH KIT WAS PLACE_ WEST FR_ SRVE Q__NIW_ZQ\n\nE_L__\nLQFX_ZTOMYWN BP_QARUMQQENNW_N_HCHC__M+:-7589,_.\nVNNNZO_NIUIUWWBWB_\nOO_\n_I\nWYPORQ UTC FEB\n_URG _AV WARN 024/6\nEAS ERN GULF OF FINLAND\nSHIPS EXERCISES_28_1_0 UTC _PLMHDYCM\nP UCMG_HXM__OF_YPMHPZ_ZY_YFSJMWU__PYZCJMHZMJDF_PTMRPN :_)(2___2+_2_2+2__+2____)(93:$___(__((331_:((_+-**_,95 _3 8''73$ 8, -43-' :9=343$ _6 8:3. NAVIGATE_ZUBH  WU_\nZCZC",
    "clean_text": "ZCZC FA80\n071144 UTK MAL\nESTONIAN NAVCA_CZV_\nCEM__A_LTINPM\n\nFPJ __CH KIT WAS PLACE_ WEST FR_ SRVE Q__NIW_ZQ\n\nE_L__\nLQFX_ZTOMYWN BP_QARUMQQENNW_N_HCHC__M+:-7589,_.\nVNNNZO_NIUIUWWBWB_\nOO_\n_I\nWYPORQ UTC FEB\n_URG _AV WARN 024/6\nEAS ERN GULF OF FINLAND\nSHIPS EXERCISES_28_1_0 UTC _PLMHDYCM\nP UCMG_HXM__OF_YPMHPZ_ZY_YFSJMWU__PYZCJMHZMJDF_PTMRPN :_)(2___2+_2_2+2__+2____)(93:$___(__((331_:((_+-**_,95 _3 8''73$ 8, -43-' :9=343$ _6 8:3. NAVIGATE_ZUBH WU_\nZCZC",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. Readable text says: Ships exercises 28 1 0 utc plmhdycm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ships exercises 28 1 0 utc plmhdycm",
      "Estonian navca czv",
      "Vnnnzo niuiuwwbwb"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-03-26 02:43:59 AREA: E",
    "published_at": "2026-03-26 02:43:59",
    "area": "E",
    "message_id": "EA21",
    "text": "ZCZC EA21\nWZ 182/26 \nLUNDY. \nSPANIEL BUOY 51-38.1N 004-39.7W UNLIT.\nNNNN",
    "clean_text": "ZCZC EA21\nWZ 182/26\nLUNDY.\nSPANIEL BUOY 51-38.1N 004-39.7W UNLIT.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "LUNDY",
      "SPANIEL BUOY"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text says: Spaniel buoy 51-38.1n 004-39.7w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Spaniel buoy 51-38.1n 004-39.7w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 20,
    "heading": "2026-03-26 02:43:38 AREA: E",
    "published_at": "2026-03-26 02:43:38",
    "area": "E",
    "message_id": "EA22",
    "text": "ZCZC EA22\nWZ 185/26 \nWIGHT. \nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC EA22\nWZ 185/26\nWIGHT.\nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL INOPERATIVE.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "NEEDLES"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Needles light 50-39.7n 001-35.5w fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 21,
    "heading": "2026-03-26 02:43:18 AREA: T",
    "published_at": "2026-03-26 02:43:18",
    "area": "T",
    "message_id": "",
    "text": "ZCZC\n_A27\nWZ 192/26 \nLUNDY. \nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC\n_A27\nWZ 192/26\nLUNDY.\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lavernock spit buoy 51-23.0n 003-10.8w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-03-26 02:42:54 AREA: E",
    "published_at": "2026-03-26 02:42:54",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 23,
    "heading": "2026-03-26 02:42:30 AREA: E",
    "published_at": "2026-03-26 02:42:30",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
    "decoded_highlights": [
      "South cardinal buoy 50-01.2n 005-40.4w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 24,
    "heading": "2026-03-26 02:40:16 AREA: E",
    "published_at": "2026-03-26 02:40:16",
    "area": "E",
    "message_id": "EE71",
    "text": "ZCZC EE71\nEXTENDED OUTLOOK\nFRI TO MON\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COASTGUARD AGENCY, AT 252300 UTC\n\n\nLOW 976 S E ICELAND WILL CLEAR E ACROSS THE NORWEGIAN BASIN AS A FLN FEATURE DURING SAT. HIGH 1038 N OF THE AZORES EXTENDS A RIDGE N, TO THE W OF ICELAND FRI NIGHT. THIS RIDGE WILL MOV E ACROSS THE UK AND THE N SEA SAT INTO EARLY SUN AS THE HIGH MOVES TOMPMZ._2_!6._$!'0.0__02!_._$0.6!2'0.(_3_11___1_(1_(7__+6_$06.0:6+P_BMG_Z_M_II TTN 050W FRI EVENING MOVES ACROSS THE SE OF CCELAND LATE SUN BEFORE MOV TOWARDS THE LOFOTEN ISLANDS MON. XZ_SPTMSZUM\n  U_YG__W MIDDAY SAT MOVES TO S OF ICELAND, AS A FLN FEATURE MON. A FURTHER LOW 1016 46N 035W P_PSZ_JMBZ__HPYZZMJMDF_DM\n_ RWN 049W FOLLOWS NE. GALES AFFECT SHANNON FOR A TIME DURING SUN, NO FURTHER GALES ARE EXP THIS PERIOD\nNNNN",
    "clean_text": "ZCZC EE71\nEXTENDED OUTLOOK\nFRI TO MON\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COASTGUARD AGENCY, AT 252300 UTC\n\nLOW 976 S E ICELAND WILL CLEAR E ACROSS THE NORWEGIAN BASIN AS A FLN FEATURE DURING SAT. HIGH 1038 N OF THE AZORES EXTENDS A RIDGE N, TO THE W OF ICELAND FRI NIGHT. THIS RIDGE WILL MOV E ACROSS THE UK AND THE N SEA SAT INTO EARLY SUN AS THE HIGH MOVES TOMPMZ._2_!6._$!'0.0__02!_._$0.6!2'0.(_3_11___1_(1_(7__+6_$06.0:6+P_BMG_Z_M_II TTN 050W FRI EVENING MOVES ACROSS THE SE OF CCELAND LATE SUN BEFORE MOV TOWARDS THE LOFOTEN ISLANDS MON. XZ_SPTMSZUM\nU_YG__W MIDDAY SAT MOVES TO S OF ICELAND, AS A FLN FEATURE MON. A FURTHER LOW 1016 46N 035W P_PSZ_JMBZ__HPYZZMJMDF_DM\n_ RWN 049W FOLLOWS NE. GALES AFFECT SHANNON FOR A TIME DURING SUN, NO FURTHER GALES ARE EXP THIS PERIOD\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code E. This is a weather bulletin; readable sections mention gales, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rwn 049w follows ne. gales affect shannon for a time during sun, no further gales are exp this period",
      "Issued by the met office, on behalf of the maritime and coastguard agency, at 252300 utc",
      "Low 976 s e iceland will clear e across the norwegian basin as a fln feature during sat. high 1038 n of the azores extends a ridge n, to the w of iceland fri night. this ridge will mov e across the uk and the n sea sat into early sun as the high moves tompmz. 2 !6. $!'0.0 02! . $0.6!2'0.( 3 11 1 (1 (7 6 $06.0:6 p bmg z m ii ttn 050w fri evening moves across the se of cceland late sun before mov towards the lofoten islands mon. xz sptmszum"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 25,
    "heading": "2026-03-26 02:25:49 AREA: C",
    "published_at": "2026-03-26 02:25:49",
    "area": "C",
    "message_id": "C",
    "text": "ZCZC C\nZV\nI_PPTEP UTC MAR 22\nUKRAINE COASHIII_ARNING 111/22 ODES_-NAVTEX\nBLACK SEA\nALL SHIPS\n\nYCJJFM_IIUERATION NAVY CONTINUES ITS\nILLEGAL ACTIVITYMFMLIII_K SEA BREAKING\nRULES OF WAR CASES OF USING DRIFTING SEA\nMINE_MOCCUR THESE MINES WERE ALLEGEDLY\nCAPTURED BY RUSSIAN FORCES _M_FSFHIII_\nSTORAGES IN CRCMEA DURIN_MHP_IIK_Y\nOCCUPATIOL_2014 DELIBERATE USAGE\nOFMW_II__F_!2-_*0_._!0*888_ 47''8-,\n!3$34-589, 574,' .8,3' 8, 8,$8':48.8,-53\n23-09, 5_-5 _-' ,9 '03:8!83$ -,$ )8.853$\n_9,_3_-.60.2._+*0._$888_$60_._+._$09,88_6 9! ,-=8_-589, -,$ _7.-, )8!3__-\n43'$+*888''.__8_'8_)3\n:9,'3173,:3' 9! '7:_ -:58=858_*.'!0*.!_7)) ':-)3 9, 47''8-, !$34-589, -,$ 85'\n,-=6\n,,,,\n\n+:+: :-86\n191400 UTC MAR 22\n _:_6!0._+*_:88_2-4,8,_ 109/22 ODESA-NAVTEX\nNORTHWESTERN PA\nRT OF BLACK H_Z\n__A_Z_XY\nXM\nQ_\nQALWEVESSELJO Z_!/!'8_8,!94.-589_\n\n:-'3' 9! .8!8,!94.-589, '043-$8,_ _26 5_3\n47''8-, ,92=949''86'( ,-=53/ -,$ 5-_-,49_\n,-=5-/ '5-589,' !94 ,945_23'534, 0-4_ 9!\n_)-:( '3- _43-:_8,_ 8.9 _3-_)7589,'\n- 617(15), 715717), 706((_:'._+_/:!9,_$!*.:88__3)9,_' 59 -43-\n9! 43'09,'8_8)2_856 9! 7(4-8,3 !94 .'8\n049.7)_-589,\n=3$__+888_029,)_.8_8_ 7(4-8,8-, 9$3'- ,-=53/ '5-589, -'\n5_3 9,)6 )3__'57.-53 :9-_(_(3KBKUB!!(=_\n__8 :994$8,-594\n,,,,\n\n_1-ZCZC",
    "clean_text": "ZCZC C\nZV\nI_PPTEP UTC MAR 22\nUKRAINE COASHIII_ARNING 111/22 ODES_-NAVTEX\nBLACK SEA\nALL SHIPS\n\nYCJJFM_IIUERATION NAVY CONTINUES ITS\nILLEGAL ACTIVITYMFMLIII_K SEA BREAKING\nRULES OF WAR CASES OF USING DRIFTING SEA\nMINE_MOCCUR THESE MINES WERE ALLEGEDLY\nCAPTURED BY RUSSIAN FORCES _M_FSFHIII_\nSTORAGES IN CRCMEA DURIN_MHP_IIK_Y\nOCCUPATIOL_2014 DELIBERATE USAGE\nOFMW_II__F_!2-_*0_._!0*888_ 47''8-,\n!3$34-589, 574,' .8,3' 8, 8,$8':48.8,-53\n23-09, 5_-5 _-' ,9 '03:8!83$ -,$ )8.853$\n_9,_3_-.60.2._+*0._$888_$60_._+._$09,88_6 9! ,-=8_-589, -,$ _7.-, )8!3__-\n43'$+*888''.__8_'8_)3\n:9,'3173,:3' 9! '7:_ -:58=858_*.'!0*.!_7)) ':-)3 9, 47''8-, !$34-589, -,$ 85'\n,-=6\n,,,,\n\n+:+: :-86\n191400 UTC MAR 22\n_:_6!0._+*_:88_2-4,8,_ 109/22 ODESA-NAVTEX\nNORTHWESTERN PA\nRT OF BLACK H_Z\n__A_Z_XY\nXM\nQ_\nQALWEVESSELJO Z_!/!'8_8,!94.-589_\n\n:-'3' 9! .8!8,!94.-589, '043-$8,_ _26 5_3\n47''8-, ,92=949''86'( ,-=53/ -,$ 5-_-,49_\n,-=5-/ '5-589,' !94 ,945_23'534, 0-4_ 9!\n_)-:( '3- _43-:_8,_ 8.9 _3-_)7589,'\n- 617(15), 715717), 706((_:'._+_/:!9,_$!*.:88__3)9,_' 59 -43-\n9! 43'09,'8_8)2_856 9! 7(4-8,3 !94 .'8\n049.7)_-589,\n=3$__+888_029,)_.8_8_ 7(4-8,8-, 9$3'- ,-=53/ '5-589, -'\n5_3 9,)6 )3__'57.-53 :9-_(_(3KBKUB!!(=_\n__8 :994$8,-594\n,,,,\n\n_1-ZCZC",
    "resolved_station_name": "Odesa",
    "resolved_country": "Ukraine",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North-west Black Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "UKRAINE"
    ],
    "display_region_heading": "Ukraine - North-west Black Sea",
    "display_region_label": "Odesa, Ukraine",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Ukraine - North-west Black Sea. Readable text says: Rules of war cases of using drifting sea. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rules of war cases of using drifting sea",
      "Ukraine coashiii arning 111/22 odes -navtex",
      "Mine moccur these mines were allegedly"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 26,
    "heading": "2026-03-26 02:24:34 AREA: C",
    "published_at": "2026-03-26 02:24:34",
    "area": "C",
    "message_id": "CL69",
    "text": "ZCZC CL69\n20:500 UTC JUL 23\nUKRAINE COASTAL WARNING 111/23 ODESA-NAVTEX\nBLACK SEA\nKERCHENSKA STRAIT\n\n1. DUE TO RI OF WAR AND _RGENCY\nCONDITION OF TH_V_LA_AIS_II_NSKY BRIDGE BY RUSSIAN FEDERATION\nNAVIGATION PROHIBITED\nIN TERRITORFIII_ATERS OF UKRAINE IN\nKERCHENSKA STRAIT\nFROM 20(= UTC JUL 23\nIOTF_M_CYHDPYMIII_ICE\n2. CADC_ NR 44/23 AND THIS PARA\nNNNN",
    "clean_text": "ZCZC CL69\n20:500 UTC JUL 23\nUKRAINE COASTAL WARNING 111/23 ODESA-NAVTEX\nBLACK SEA\nKERCHENSKA STRAIT\n\n1. DUE TO RI OF WAR AND _RGENCY\nCONDITION OF TH_V_LA_AIS_II_NSKY BRIDGE BY RUSSIAN FEDERATION\nNAVIGATION PROHIBITED\nIN TERRITORFIII_ATERS OF UKRAINE IN\nKERCHENSKA STRAIT\nFROM 20(= UTC JUL 23\nIOTF_M_CYHDPYMIII_ICE\n2. CADC_ NR 44/23 AND THIS PARA\nNNNN",
    "resolved_station_name": "Odesa",
    "resolved_country": "Ukraine",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North-west Black Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "UKRAINE",
      "UKRAINE COASTAL"
    ],
    "display_region_heading": "Ukraine - North-west Black Sea",
    "display_region_label": "Odesa, Ukraine",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Ukraine - North-west Black Sea. This is a weather bulletin; readable sections mention ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Iotf m cyhdpymiii ice",
      "Condition of th v la ais ii nsky bridge by russian federation",
      "Ukraine coastal warning 111/23 odesa-navtex"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 29,
    "heading": "2026-03-26 02:21:55 AREA: C",
    "published_at": "2026-03-26 02:21:55",
    "area": "C",
    "message_id": "CA61",
    "text": "ZCZC CA61\n,__  __.____.8_((_6_.)_)9,_:_6!(88_./+*_'.____ 13/25 ODESA-NAVTEX\nBLACK SEA\nNORTHWESTERN PART\n\n1. UNKNOWO\nMIEEN CIGAR-SHAPED BUOY\nAGROUND IN PSN\n46-37.497N  031-__.!878__\n2. CANCEL NR 10/25\nNNNN",
    "clean_text": "ZCZC CA61\n,__ __.____.8_((_6_.)_)9,_:_6!(88_./+*_'.____ 13/25 ODESA-NAVTEX\nBLACK SEA\nNORTHWESTERN PART\n\n1. UNKNOWO\nMIEEN CIGAR-SHAPED BUOY\nAGROUND IN PSN\n46-37.497N 031-__.!878__\n2. CANCEL NR 10/25\nNNNN",
    "resolved_station_name": "Odesa",
    "resolved_country": "Ukraine",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North-west Black Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BLACK SEA"
    ],
    "display_region_heading": "Ukraine - North-west Black Sea",
    "display_region_label": "Odesa, Ukraine",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Ukraine - North-west Black Sea. Readable text says: Mieen cigar-shaped buoy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mieen cigar-shaped buoy",
      "Black sea",
      "Northwestern part"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 30,
    "heading": "2026-03-26 02:20:15 AREA: C",
    "published_at": "2026-03-26 02:20:15",
    "area": "C",
    "message_id": "CL95",
    "text": "ZCZC CL95\n271140,_7\n_7= *-, 26_\nUKRAINE COASTAL WARNING 7/26 ODESA-_,-=53/\n_)-:( '3-\n__!3_3,:3 '5-589, 9! 9$3'- )___5_97'3\n46-22.6__\n_30-$_.!_09,_88_5: *-, 26\nTEMPORA_IKF_D OFF\n_\nFX\n\n_KAXAXMX __IK\nWOQRPP UTC JUL 25\nUKRAINE COASTAL WARNING 44/25 ODESA-NAVTEX\nDANUBE RIVER \nKILIYSKE MOUTH\n\nTQM FROM 291200 UTC JUL 25\nON THE AREA FROM 77.0 KM TO 116.0 KM OF\nKIL_IYSKE MOUTH DECLARED PERMITTED DRAUGHTS\nFOR VESSELSV-._\n__0_609,_. CANCEL NR 39/25 AND THIS PARA\nNNNN",
    "clean_text": "ZCZC CL95\n271140,_7\n_7= *-, 26_\nUKRAINE COASTAL WARNING 7/26 ODESA-_,-=53/\n_)-:( '3-\n__!3_3,:3 '5-589, 9! 9$3'- )___5_97'3\n46-22.6__\n_30-$_.!_09,_88_5: *-, 26\nTEMPORA_IKF_D OFF\n_\nFX\n\n_KAXAXMX __IK\nWOQRPP UTC JUL 25\nUKRAINE COASTAL WARNING 44/25 ODESA-NAVTEX\nDANUBE RIVER\nKILIYSKE MOUTH\n\nTQM FROM 291200 UTC JUL 25\nON THE AREA FROM 77.0 KM TO 116.0 KM OF\nKIL_IYSKE MOUTH DECLARED PERMITTED DRAUGHTS\nFOR VESSELSV-._\n__0_609,_. CANCEL NR 39/25 AND THIS PARA\nNNNN",
    "resolved_station_name": "Odesa",
    "resolved_country": "Ukraine",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North-west Black Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "UKRAINE",
      "UKRAINE COASTAL"
    ],
    "display_region_heading": "Ukraine - North-west Black Sea",
    "display_region_label": "Odesa, Ukraine",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Ukraine - North-west Black Sea. Readable text says: Ukraine coastal warning 7/26 odesa- ,- 53/. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ukraine coastal warning 7/26 odesa- ,- 53/",
      "Ukraine coastal warning 44/25 odesa-navtex",
      "Kil iyske mouth declared permitted draughts"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 31,
    "heading": "2026-03-26 02:08:05 AREA: A",
    "published_at": "2026-03-26 02:08:05",
    "area": "A",
    "message_id": "AALFIO",
    "text": "ZCZC AALFIO\nTNCYB_MLYPJHM\n  TUEO_G__LYFBZ\n_MGYZMDP_Z_O_RATIONS\n1. FILING EXERCISE\n FROM 26123_ _(___(_9KQOHDCQMRG__._:0(__'.__(49,(1+_93/)EQOHET1QO_QB_HP\n__N_ AREA R31, _O_D \n BY:\n AREA BOUNDED _Y:\n 44- _N 001-30.00W\n 44-50.00N 001-22.00W\n 44_1_.:::___:_/9EECEX__)___/:,.__:_,_9__(5J__W___RPZ_XXX_\nEO_AR 26NNNN",
    "clean_text": "ZCZC AALFIO\nTNCYB_MLYPJHM\nTUEO_G__LYFBZ\n_MGYZMDP_Z_O_RATIONS\n1. FILING EXERCISE\nFROM 26123_ _(___(_9KQOHDCQMRG__._:0(__'.__(49,(1+_93/)EQOHET1QO_QB_HP\n__N_ AREA R31, _O_D\nBY:\nAREA BOUNDED _Y:\n44- _N 001-30.00W\n44-50.00N 001-22.00W\n44_1_.:::___:_/9EECEX__)___/:,.__:_,_9__(5J__W___RPZ_XXX_\nEO_AR 26NNNN",
    "display_region_heading": "Unresolved B1 code A",
    "display_region_label": "B1 code A",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code A. Readable text says: 1. filing exercise. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. filing exercise",
      "Tncyb mlypjhm",
      "Area bounded y"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-03-26 02:06:43 AREA: A",
    "published_at": "2026-03-26 02:06:43",
    "area": "A",
    "message_id": "AA09",
    "text": "ZCZC AA09\nAVURNAV BREST 111/26\nIROISE - YEU - GLENAN\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\n FR_M 251800 UTC MAR 26 TO TWSWEPP UTC MR _WY\n GU NERY E\n6/!*0*.!._.\n __/._=__3 !46990), AREAMLZCWPW\nL_\nZ_BEXCEQLEGLON_:____:_47-48.30N 005-38.10WV\n\n/XLBN_::_0/$_-))1_!61N 05- 9.43W\nT47-40.92N 005-55.15W\n 47-37.29N\nW_NH\nF_\n 47-34.60N 006-00.00W\n 47-08.___!___43_(7_2\n 47-09.60N 005-04.40W\n 47-76_,:_-00.10W\n2. CANCEL THIS MDG _YNNNN",
    "clean_text": "ZCZC AA09\nAVURNAV BREST 111/26\nIROISE - YEU - GLENAN\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nFR_M 251800 UTC MAR 26 TO TWSWEPP UTC MR _WY\nGU NERY E\n6/!*0*.!._.\n__/._=__3 !46990), AREAMLZCWPW\nL_\nZ_BEXCEQLEGLON_:____:_47-48.30N 005-38.10WV\n\n/XLBN_::_0/$_-))1_!61N 05- 9.43W\nT47-40.92N 005-55.15W\n47-37.29N\nW_NH\nF_\n47-34.60N 006-00.00W\n47-08.___!___43_(7_2\n47-09.60N 005-04.40W\n47-76_,:_-00.10W\n2. CANCEL THIS MDG _YNNNN",
    "display_region_heading": "Unresolved B1 code A",
    "display_region_label": "B1 code A",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code A. Readable text says: 1. firing exercise. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. firing exercise",
      "Avurnav brest 111/26",
      "Iroise - yeu - glenan"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-03-26 02:02:02 AREA: A",
    "published_at": "2026-03-26 02:02:02",
    "area": "A",
    "message_id": "AE58",
    "text": "ZCZC AE58\nBAY OF BISCAY BULLETIN _V.\n\n260=___\nMETEO-FRANCE\nWED 25 MAR 2026 AT __UH_G_HMONO__JMLPKC_ZY\n\nQ C WAN__NGVNY_JK ===_*171__6\n6+_7)4\n3))__(_23$ 5 AT 12 UTC\nLOW 971 54N48W, \n.9= ,3 -,$ 3/0 +':._0(_1( 0 UTC. ASSOCIATED\nTROUGH CROSSING FARAD__X_MZHFY_MGY_YDFSMHD_MLYHFJDMFJSPJONSHP___NGSZU_\n  MVH__\nUU\nF\nQ_LB\nDSZ__AND E_P 1:0_ BY 2_/00 UTC.\nHIGH 1036_47N1_SL\nVJ_FO_FG SW AND EXP 1032 4/!_!17WBY _FVEF__W\nUF_QPX_YHV_H EXP _038 43N412 _6 27/00 UTI=\n \n1\n117(_ 5 __4 ,___ BAFM_ CLOCKWPSU\n2 TO 9 LATER.\n_=_46 _97___\n9_ /_65**_0_250919 U_C _ZCZC",
    "clean_text": "ZCZC AE58\nBAY OF BISCAY BULLETIN _V.\n\n260=___\nMETEO-FRANCE\nWED 25 MAR 2026 AT __UH_G_HMONO__JMLPKC_ZY\n\nQ C WAN__NGVNY_JK ===_*171__6\n6+_7)4\n3))__(_23$ 5 AT 12 UTC\nLOW 971 54N48W,\n.9= ,3 -,$ 3/0 +':._0(_1( 0 UTC. ASSOCIATED\nTROUGH CROSSING FARAD__X_MZHFY_MGY_YDFSMHD_MLYHFJDMFJSPJONSHP___NGSZU_\nMVH__\nUU\nF\nQ_LB\nDSZ__AND E_P 1:0_ BY 2_/00 UTC.\nHIGH 1036_47N1_SL\nVJ_FO_FG SW AND EXP 1032 4/!_!17WBY _FVEF__W\nUF_QPX_YHV_H EXP _038 43N412 _6 27/00 UTI=\n\n1\n117(_ 5 __4 ,___ BAFM_ CLOCKWPSU\n2 TO 9 LATER.\n_=_46 _97___\n9_ /_65**_0_250919 U_C _ZCZC",
    "display_region_heading": "Unresolved B1 code A",
    "display_region_label": "B1 code A",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code A. Readable text says: Bay of biscay bulletin v. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bay of biscay bulletin v",
      "Meteo-france"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-03-26 01:52:29 AREA: X",
    "published_at": "2026-03-26 01:52:29",
    "area": "X",
    "message_id": "",
    "text": "ZCZC XA1!\n252(50_7'_/._.=-$9ONX_B_ _Q_GGCPMM_BP_SVQOR I_B5_K1=__1((K_VELO_MZSN__KOF_XNOM_KUW_AUZ_OISM__ME _JCPJ_M___OIXMSPZ_Q_X(/__MX__YM__IA5_27-5_.= _. NOBCQTOZ_WM\n__GJCA\nHN_KCY _YAYTMWTM\nTHEVBE__Y\nI__NKRI__F SU_Z\n_HACO . -_. NO:2373.-159\n1-SUZ ON 16 X\nBU\nBONGHDPMLF_EMDQP\n_LLGI_ B._. NO_15\n.3-'743' 0-45 2 AT NG AND EX_Y BY 27/00 $\n5:.\n8_ 1032 45N_7WBY 26/12\n\nUTC, THEN 1031 42_25W B\n27(11_2/_* =5=_NEW HIGH EXPECT_D 1038 43N41W BY 27/00 UTC.\n\n\n\nFINISTERRE.\n\nCONTINUING TO 27/08,_75:.\n\n___='97\n9\n__.=$9)\n$'5'.\n\n\nNNNN",
    "clean_text": "ZCZC XA1!\n252(50_7'_/._.=-$9ONX_B_ _Q_GGCPMM_BP_SVQOR I_B5_K1=__1((K_VELO_MZSN__KOF_XNOM_KUW_AUZ_OISM__ME _JCPJ_M___OIXMSPZ_Q_X(/__MX__YM__IA5_27-5_.= _. NOBCQTOZ_WM\n__GJCA\nHN_KCY _YAYTMWTM\nTHEVBE__Y\nI__NKRI__F SU_Z\n_HACO . -_. NO:2373.-159\n1-SUZ ON 16 X\nBU\nBONGHDPMLF_EMDQP\n_LLGI_ B._. NO_15\n.3-'743' 0-45 2 AT NG AND EX_Y BY 27/00 $\n5:.\n8_ 1032 45N_7WBY 26/12\n\nUTC, THEN 1031 42_25W B\n27(11_2/_* =5=_NEW HIGH EXPECT_D 1038 43N41W BY 27/00 UTC.\n\nFINISTERRE.\n\nCONTINUING TO 27/08,_75:.\n\n___='97\n9\n__.=$9)\n$'5'.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code X",
    "display_region_label": "B1 code X",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code X. Readable text says: 3-'743' 0-45 2 at ng and ex y by 27/00 $. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "3-'743' 0-45 2 at ng and ex y by 27/00 $",
      "Utc, then 1031 42 25w b",
      "Bonghdpmlf emdqp"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 35,
    "heading": "2026-03-26 01:51:34 AREA: T",
    "published_at": "2026-03-26 01:51:34",
    "area": "T",
    "message_id": "",
    "text": "ZCZCVQ5$\n2\n__5=_U_CCM_R_UW_O_R_MQ__CUTAZ_P_MZ_ONJ_W__E_ULTZCZC",
    "clean_text": "ZCZCVQ5$\n2\n__5=_U_CCM_R_UW_O_R_MQ__CUTAZ_P_MZ_ONJ_W__E_ULTZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 36,
    "heading": "2026-03-26 01:50:11 AREA: T",
    "published_at": "2026-03-26 01:50:11",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_E____CZ  _A18\n2523\n__._05_=_,9,1__,_)__AC_WEAGZ__U_ZCZC",
    "clean_text": "ZCZC_E____CZ _A18\n2523\n__._05_=_,9,1__,_)__AC_WEAGZ__U_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 37,
    "heading": "2026-03-26 01:40:09 AREA: T",
    "published_at": "2026-03-26 01:40:09",
    "area": "T",
    "message_id": "",
    "text": "ZCZF WE68\n_,2_9! ._59.94492.\n\n\n\n\n3 , _CS_ TO RI BWU AT 00 UTC\n\nBZL__\n_QU__Y_F V_\n1\n_1\n61!/_0_!_\n_9BHPBBEMQ_Q__MOOTH OR SLGT,8RPDY BECMGMYBCZDMZUMMPYEMY_C_DM_.._._!6___N SWELL 3 TO 4 M IN S.\n\nBALEARES.\nN OR NW 5 OR 6, LOC 7 OD 8 IN EBRO DELTA AT FIRST, DECR N 3 TO 5 IN\nMORNING, BACK SW IN AFTERNOON, THEN INCR NW 4 TO 6 AT END. SEV\nGUSTS.\nSLGT OR MOD, LOC ROUGH IN E_\n_ONZYMPMJ_PS_M_PMG_MF_M_Y_P_\nMINORQUE_OONGM_FMGZYM\nZ_MG_P_MZRB__DBE_Q_Q__, BECMG VERY ROUGH OR HIGH IN MORNING.\nN OR NE SWELIM_PMG_MF._6_*7_\nLION.\nN OR NW 8 OR 9. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH.\n\nPROVENCE.\nNW 8 OR _O_ VEER N OR NW IN AFTERNOON. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH, BECMG HIGH IN S IN LATE NIGHT.\n\nLIGURE.\nW OR NW 6 OR 7, LOC 8 OR 9 IN S, DECR N OR NW 7 /94 8 IN MORNNG, \nHEN\nN 6 OR 7 IN AFTERNOON. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH, BECMG MOD OR ROUGH IN AFTERNOON.\nW OR SW SWELLM_A__TO 4, ABATING IN AFTERNOON.\n\nCORSE.\nW OR NW 8 OR 9, DECR N OR NW 7 OR 8 IN OYF_THEN N 6 OR 7 IN\nAFTER_. SEV OR VIOLENT GUSTS.\nVERY P_C_DM_YMDFD_MGLPX_OUGH OR VERY ROUGH IN EVENING.\nW SWELL 3.5 TO 4.5 M.\n\nSARDAIGNE.\nN OR NW 6 OR 7, LOC 8 IN FAR N, INCR 8 OR 9 EVERYWHERE IN LATE NIGHT.\nSEV GUS_\nROUGH OR VERY ROUGH, BECMG VERY ROUGH OR HIGH IN LATE NIGHT.\nN SWELL 3 TOM_YMGBMFMJ_MOD OR POOR VIS IN RAIN IN FAR E\n\nMADDALENA.\nW 8 OR 9, DECR 7 OR 8 IN MORNING, TOWFCMZYM_M_EMGZYM_CMGFM__MOD OR ROUGH IN__F\n_JMZZFH_O _ OR _JLBE\nW OR SW__IN _AT TN DECR_KQZC\n_IGURIAN AN_W, GRA_U_HP__T_XMZM\n\nNNNN",
    "clean_text": "ZCZF WE68\n_,2_9! ._59.94492.\n\n3 , _CS_ TO RI BWU AT 00 UTC\n\nBZL__\n_QU__Y_F V_\n1\n_1\n61!/_0_!_\n_9BHPBBEMQ_Q__MOOTH OR SLGT,8RPDY BECMGMYBCZDMZUMMPYEMY_C_DM_.._._!6___N SWELL 3 TO 4 M IN S.\n\nBALEARES.\nN OR NW 5 OR 6, LOC 7 OD 8 IN EBRO DELTA AT FIRST, DECR N 3 TO 5 IN\nMORNING, BACK SW IN AFTERNOON, THEN INCR NW 4 TO 6 AT END. SEV\nGUSTS.\nSLGT OR MOD, LOC ROUGH IN E_\n_ONZYMPMJ_PS_M_PMG_MF_M_Y_P_\nMINORQUE_OONGM_FMGZYM\nZ_MG_P_MZRB__DBE_Q_Q__, BECMG VERY ROUGH OR HIGH IN MORNING.\nN OR NE SWELIM_PMG_MF._6_*7_\nLION.\nN OR NW 8 OR 9. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH.\n\nPROVENCE.\nNW 8 OR _O_ VEER N OR NW IN AFTERNOON. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH, BECMG HIGH IN S IN LATE NIGHT.\n\nLIGURE.\nW OR NW 6 OR 7, LOC 8 OR 9 IN S, DECR N OR NW 7 /94 8 IN MORNNG,\nHEN\nN 6 OR 7 IN AFTERNOON. SEV OR VIOLENT GUSTS.\nROUGH OR VERY ROUGH, BECMG MOD OR ROUGH IN AFTERNOON.\nW OR SW SWELLM_A__TO 4, ABATING IN AFTERNOON.\n\nCORSE.\nW OR NW 8 OR 9, DECR N OR NW 7 OR 8 IN OYF_THEN N 6 OR 7 IN\nAFTER_. SEV OR VIOLENT GUSTS.\nVERY P_C_DM_YMDFD_MGLPX_OUGH OR VERY ROUGH IN EVENING.\nW SWELL 3.5 TO 4.5 M.\n\nSARDAIGNE.\nN OR NW 6 OR 7, LOC 8 IN FAR N, INCR 8 OR 9 EVERYWHERE IN LATE NIGHT.\nSEV GUS_\nROUGH OR VERY ROUGH, BECMG VERY ROUGH OR HIGH IN LATE NIGHT.\nN SWELL 3 TOM_YMGBMFMJ_MOD OR POOR VIS IN RAIN IN FAR E\n\nMADDALENA.\nW 8 OR 9, DECR 7 OR 8 IN MORNING, TOWFCMZYM_M_EMGZYM_CMGFM__MOD OR ROUGH IN__F\n_JMZZFH_O _ OR _JLBE\nW OR SW__IN _AT TN DECR_KQZC\n_IGURIAN AN_W, GRA_U_HP__T_XMZM\n\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: N swell 3 tom ymgbmfmj mod or poor vis in rain in far e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N swell 3 tom ymgbmfmj mod or poor vis in rain in far e",
      "N or nw 5 or 6, loc 7 od 8 in ebro delta at first, decr n 3 to 5 in",
      "Morning, back sw in afternoon, then incr nw 4 to 6 at end. sev"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 38,
    "heading": "2026-03-26 01:38:19 AREA: V",
    "published_at": "2026-03-26 01:38:19",
    "area": "V",
    "message_id": "VA60",
    "text": "ZCZC VA60\n252_UTC MAR 26\nSELLIA MARINA RADIO\n\nCOASTAL WARNING NR. 119/26 MAR 12 (4 RELEASE)\nSTRAIT OF SICILY POZZALLO (RG)\nPORRI ISLAND SIGNAL (E.F. 2930 E1888) IS UNLIT.\nVESSELS IN TRANSIT BEWARE.\nNNNN",
    "clean_text": "ZCZC VA60\n252_UTC MAR 26\nSELLIA MARINA RADIO\n\nCOASTAL WARNING NR. 119/26 MAR 12 (4 RELEASE)\nSTRAIT OF SICILY POZZALLO (RG)\nPORRI ISLAND SIGNAL (E.F. 2930 E1888) IS UNLIT.\nVESSELS IN TRANSIT BEWARE.\nNNNN",
    "resolved_station_name": "Sellia Marina",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Ionian Sea and Strait of Messina",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SELLIA MARINA"
    ],
    "display_region_heading": "Italy - Ionian Sea and Strait of Messina",
    "display_region_label": "Sellia Marina, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Ionian Sea and Strait of Messina. Readable text says: Coastal warning nr. 119/26 mar 12 (4 release).",
    "decoded_highlights": [
      "Coastal warning nr. 119/26 mar 12 (4 release)",
      "Porri island signal (e.f. 2930 e1888) is unlit",
      "Strait of sicily pozzallo (rg)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 39,
    "heading": "2026-03-26 01:36:38 AREA: V",
    "published_at": "2026-03-26 01:36:38",
    "area": "V",
    "message_id": "VA59",
    "text": "ZCZC VA59\n2530\n.___/._6_\n-_\n_'3))8- .-48,- 4-$89\n\n:9-'5-) 2-4:._ _ 5_3._+=__6.9,_+6_$0'.!+!.*0..._6_+._:'_FM 12.00LT UNTIL 14.00S\n ON 25 MAR 2026,\nFM 12.0____.:_!'._ 6__GSHMZ_M\n_AR 2026,\nWISSMLPM_YYFPWMZCHM_C!6_._!'!_6_./_!\n!_!0*.!._$0.*0.-+0_9,__++.\n!0!_+.__09,'__0 17.000' N   LONG. 017 12.000' E\nLAT. 40 17.000' N   LONG. 017 15.000' V\nLAT. 40 10.000' N   LONG._ 30.W__Z_J_D_ZPL_I\nH_RILLP_IQGIZ\n_ PUMPPPS N   LONG. 017_12.000' E\nLAT. 40 17.000' N   LONG. 017 12.000' E\nTRANSIT, FISHING, _-,:_94-6_=-.+_$06.:206___6___!\n!_!0*9,60.!6+$!)!_02_\nNNNN",
    "clean_text": "ZCZC VA59\n2530\n.___/._6_\n-_\n_'3))8- .-48,- 4-$89\n\n:9-'5-) 2-4:._ _ 5_3._+=__6.9,_+6_$0'.!+!.*0..._6_+._:'_FM 12.00LT UNTIL 14.00S\nON 25 MAR 2026,\nFM 12.0____.:_!'._ 6__GSHMZ_M\n_AR 2026,\nWISSMLPM_YYFPWMZCHM_C!6_._!'!_6_./_!\n!_!0*.!._$0.*0.-+0_9,__++.\n!0!_+.__09,'__0 17.000' N LONG. 017 12.000' E\nLAT. 40 17.000' N LONG. 017 15.000' V\nLAT. 40 10.000' N LONG._ 30.W__Z_J_D_ZPL_I\nH_RILLP_IQGIZ\n_ PUMPPPS N LONG. 017_12.000' E\nLAT. 40 17.000' N LONG. 017 12.000' E\nTRANSIT, FISHING, _-,:_94-6_=-.+_$06.:206___6___!\n!_!0*9,60.!6+$!)!_02_\nNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. Readable text says: Transit, fishing, -,: 94-6 -. $06.:206 6 !. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, fishing, -,: 94-6 -. $06.:206 6 !",
      "Lat. 40 17.000' n long. 017 15.000' v",
      "Pumppps n long. 017 12.000' e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-03-26 01:35:23 AREA: V",
    "published_at": "2026-03-26 01:35:23",
    "area": "V",
    "message_id": "VA58",
    "text": "ZCZC VA58\n252330 UTC MAR 26\n'38)8- .-48,- 4-$89\n\n:9-'5-) 2-4_8,_ ,4. 12_5____6 \nTYRRHENIAN SEA - SICILY STRAIT - SOUTHERN IONIAN SEA\nFAOM MAR 26TH, 2026 UNTIL APRIL 09TH, 2026 RV GAIA BLU (ICDA\n- IMO 7928677) WILL PERFORM MAINTENANCE OF CURRENTOMETRICMMDFJMFONHDPM_ZS_Z_FMAZPMH_YYDPFMJP_MOJF_FSEMJHYFHMWMJZCHDPYMFZFON_P_SHIPS IN TRANTSIT PAY MAXIMUM ATTENTION AND KEEP AT A DISTANCE NOT\nLESS THAN 1NM FROM RV GAIA BLU.\n\nNNNN",
    "clean_text": "ZCZC VA58\n252330 UTC MAR 26\n'38)8- .-48,- 4-$89\n\n:9-'5-) 2-4_8,_ ,4. 12_5____6\nTYRRHENIAN SEA - SICILY STRAIT - SOUTHERN IONIAN SEA\nFAOM MAR 26TH, 2026 UNTIL APRIL 09TH, 2026 RV GAIA BLU (ICDA\n- IMO 7928677) WILL PERFORM MAINTENANCE OF CURRENTOMETRICMMDFJMFONHDPM_ZS_Z_FMAZPMH_YYDPFMJP_MOJF_FSEMJHYFHMWMJZCHDPYMFZFON_P_SHIPS IN TRANTSIT PAY MAXIMUM ATTENTION AND KEEP AT A DISTANCE NOT\nLESS THAN 1NM FROM RV GAIA BLU.\n\nNNNN",
    "resolved_station_name": "Sellia Marina",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Ionian Sea and Strait of Messina",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "IONIAN",
      "SOUTHERN IONIAN"
    ],
    "display_region_heading": "Italy - Ionian Sea and Strait of Messina",
    "display_region_label": "Sellia Marina, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Ionian Sea and Strait of Messina. Readable text says: Tyrrhenian sea - sicily strait - southern ionian sea. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tyrrhenian sea - sicily strait - southern ionian sea",
      "Faom mar 26th, 2026 until april 09th, 2026 rv gaia blu (icda",
      "- imo 7928677) will perform maintenance of currentometricmmdfjmfonhdpm zs z fmazpmh yydpfmjp mojf fsemjhyfhmwmjzchdpymfzfon p ships in trantsit pay maximum attention and keep at a distance not"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 41,
    "heading": "2026-03-26 01:33:56 AREA: V",
    "published_at": "2026-03-26 01:33:56",
    "area": "V",
    "message_id": "VA57",
    "text": "ZCZC VA57\n-___0MGKHXM_Y_\n_SELLIA MARINA RADIO\n\nCOASTAL WARNING 145/26 MAR 21 \nNORTHERN IONIAN SEA - TARANTO GULF.\nFM 08.30LT UNTIL 11.30LT ON 25 MAR 2026,\nWILL BE CARRIED OUT GUNFIRING MILITARY_AVTIVITIES IN OHE SEA ZONE:\nTANGO 833B ZONE\n  40 17.000' M_WMPP_F___ONMM\nYM _B_JMGMMM\n_ONMM\nY\n B_MGMMM\n_EPMPPPS E\n  40 00.000' N   017 30.000' E\n  40 07.000' N   017 12.000' E\n  40 17.000' N   017 12.000' E\nTRANSIT, FISHING, ANCHORAGE AND OTHER UNDERWATER ACTIVITIJS\nARVV__OHIBITED.\n\nNNNN",
    "clean_text": "ZCZC VA57\n-___0MGKHXM_Y_\n_SELLIA MARINA RADIO\n\nCOASTAL WARNING 145/26 MAR 21\nNORTHERN IONIAN SEA - TARANTO GULF.\nFM 08.30LT UNTIL 11.30LT ON 25 MAR 2026,\nWILL BE CARRIED OUT GUNFIRING MILITARY_AVTIVITIES IN OHE SEA ZONE:\nTANGO 833B ZONE\n40 17.000' M_WMPP_F___ONMM\nYM _B_JMGMMM\n_ONMM\nY\nB_MGMMM\n_EPMPPPS E\n40 00.000' N 017 30.000' E\n40 07.000' N 017 12.000' E\n40 17.000' N 017 12.000' E\nTRANSIT, FISHING, ANCHORAGE AND OTHER UNDERWATER ACTIVITIJS\nARVV__OHIBITED.\n\nNNNN",
    "resolved_station_name": "Sellia Marina",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Ionian Sea and Strait of Messina",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SELLIA MARINA"
    ],
    "display_region_heading": "Italy - Ionian Sea and Strait of Messina",
    "display_region_label": "Sellia Marina, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Ionian Sea and Strait of Messina. Readable text says: Transit, fishing, anchorage and other underwater activitijs. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, fishing, anchorage and other underwater activitijs",
      "Will be carried out gunfiring military avtivities in ohe sea zone",
      "Coastal warning 145/26 mar 21"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 42,
    "heading": "2026-03-26 01:32:21 AREA: T",
    "published_at": "2026-03-26 01:32:21",
    "area": "T",
    "message_id": "",
    "text": "ZSZCYMWMJCY_09___!\n!_!_0.*!_'*.!._$0.-+0.)+:202.)_._$0._+'_+_!._+!_*_TANGO 833 ALFA ZONE:\nA. LAT. 40 16'30'' N MMSZ_PQU EPSPPSS E\nB. LAT. 40 21'45'' N   LONG. 017 16'20'' E\nC. LAT. 40 24'05'' N   LONG. 017 14'10'' E\nD. LAT. 40 24'13'' N   LONG. 0_7 1_'49'' E\n_. LAT. 40 24'30'' N   LONG_QWSQTSS E\nF. LAT. 40 17'00'' N   LONG. 0(_ _2'00'' E\nG. LAT. 40 17'00'' _   LONG. 017 15'00'' E\nH. LAT. 40.10'00'' N   LONG. 017 30'00'' E\nIN THE STRETCH OF WATER INDICATED ABOVE,\n_-)) ,-=-) 7,85' 28)) _-=3\n59 0-6 -553,589, -,$ -=98$ _8,$348,_ 5_3 3/34:8'3.\n\nNNNN",
    "clean_text": "ZSZCYMWMJCY_09___!\n!_!_0.*!_'*.!._$0.-+0.)+:202.)_._$0._+'_+_!._+!_*_TANGO 833 ALFA ZONE:\nA. LAT. 40 16'30'' N MMSZ_PQU EPSPPSS E\nB. LAT. 40 21'45'' N LONG. 017 16'20'' E\nC. LAT. 40 24'05'' N LONG. 017 14'10'' E\nD. LAT. 40 24'13'' N LONG. 0_7 1_'49'' E\n_. LAT. 40 24'30'' N LONG_QWSQTSS E\nF. LAT. 40 17'00'' N LONG. 0(_ _2'00'' E\nG. LAT. 40 17'00'' _ LONG. 017 15'00'' E\nH. LAT. 40.10'00'' N LONG. 017 30'00'' E\nIN THE STRETCH OF WATER INDICATED ABOVE,\n_-)) ,-=-) 7,85' 28)) _-=3\n59 0-6 -553,589, -,$ -=98$ _8,$348,_ 5_3 3/34:8'3.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: In the stretch of water indicated above. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "In the stretch of water indicated above"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-03-26 01:31:41 AREA: T",
    "published_at": "2026-03-26 01:31:41",
    "area": "T",
    "message_id": "",
    "text": "ZCZXM\n_HF_N_VW\nTRU U_XM_PL\nA_ \nWZ 1__1=\n (_3'. \nGUNFLEET SANDS WIWM_YB_1. TURBINE A06 51-45.0N 001-14.6E FOG SIGNAL INO_ERATIVE. \n2. CANCEL WZ 8/26 (VA49).\nNNNN",
    "clean_text": "ZCZXM\n_HF_N_VW\nTRU U_XM_PL\nA_\nWZ 1__1=\n(_3'.\nGUNFLEET SANDS WIWM_YB_1. TURBINE A06 51-45.0N 001-14.6E FOG SIGNAL INO_ERATIVE.\n2. CANCEL WZ 8/26 (VA49).\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gunfleet sands wiwm yb 1. turbine a06 51-45.0n 001-14.6e fog signal ino erative",
      "2. cancel wz 8/26 (va49)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 45,
    "heading": "2026-03-26 01:30:44 AREA: V",
    "published_at": "2026-03-26 01:30:44",
    "area": "V",
    "message_id": "VA69",
    "text": "ZCZC VA69\n19163_,_75: .-4 2026\nWZ 215/26\nGMDSS.\nM_CC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF_KP__ONGONNIII_ZCZC",
    "clean_text": "ZCZC VA69\n19163_,_75: .-4 2026\nWZ 215/26\nGMDSS.\nM_CC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF_KP__ONGONNIII_ZCZC",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOVER"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off kp ongonniii zczc",
      "M cc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-03-26 01:30:21 AREA: V",
    "published_at": "2026-03-26 01:30:21",
    "area": "V",
    "message_id": "VA72",
    "text": "ZCZC VA72\n250521 UTC M_ _Y \n_WEEXWY \nTHAMES. \nNORTH GALLOPER BUOY 51-49.8N 002-00.0E UNLIT.\nNNNN",
    "clean_text": "ZCZC VA72\n250521 UTC M_ _Y\n_WEEXWY\nTHAMES.\nNORTH GALLOPER BUOY 51-49.8N 002-00.0E UNLIT.\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "THAMES"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium / United Kingdom - Thames approaches and Dover approaches. Readable text says: North galloper buoy 51-49.8n 002-00.0e unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "North galloper buoy 51-49.8n 002-00.0e unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 47,
    "heading": "2026-03-26 01:24:09 AREA: U",
    "published_at": "2026-03-26 01:24:09",
    "area": "U",
    "message_id": "UA23",
    "text": "ZCZC UA23\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01 (21 REPETITION)   \nSOUTHERN ADRIATIC SEA   BRINDISI.\nFM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JCSEMWMC_CJH_MG_FSSMLPON_YYFPWMZCHMM_FSFHY_MXHF\nFHEM_FHDMJ_S_M_PZJMFMHDPMYPONFM_YZHMZ_MHZYYPMX_SSZM_FY__MY_P_XONGMM\nY_MPFJMY_MGMMM_ QW E  B  40 39' 869 N   18 03' 669 E \nC  40 39' 02 N   18 04' 24 E  D  40 37' 51 N   18 04' 27 E \nE  40 36' 39 N   18 03' 22 E  F  40 38' 08 N   18 01*_ _._\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "clean_text": "ZCZC UA23\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01 (21 REPETITION)\nSOUTHERN ADRIATIC SEA BRINDISI.\nFM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JCSEMWMC_CJH_MG_FSSMLPON_YYFPWMZCHMM_FSFHY_MXHF\nFHEM_FHDMJ_S_M_PZJMFMHDPMYPONFM_YZHMZ_MHZYYPMX_SSZM_FY__MY_P_XONGMM\nY_MPFJMY_MGMMM_ QW E B 40 39' 869 N 18 03' 669 E\nC 40 39' 02 N 18 04' 24 E D 40 37' 51 N 18 04' 27 E\nE 40 36' 39 N 18 03' 22 E F 40 38' 08 N 18 01*_ _._\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Transit, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are prohibited",
      "Coastal warning 001/26 jan 01 (21 repetition)",
      "Fm 01 jan until 31 dec 2026 from local time 06.00 to 24.00"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 48,
    "heading": "2026-03-26 01:22:42 AREA: U",
    "published_at": "2026-03-26 01:22:42",
    "area": "U",
    "message_id": "UA22",
    "text": "ZCZC UA22\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 101/26 FEB 18 (8 RELAY)\nLIGURIAN SEA  \nAREA BOUNDED_LEM_ZS_Z_FM_ZFHJ_  RT QWMIWRN   012 22.473E\n  45 12.788N   012 22.449E\n  45 12.720N   012 22.714E\n  45 12.770N   012 22.739E\nUNTIL 29TH MAR 2026 DAYTIME HOURS AND WEATHER PERMITTIMM/N CARMAR DUE WITH THE AID OF ROV, SIDE SCAN SONAR,\nAND MULTIBEAM\nWILL CARRY OUT SEABED RESTORATION\nSHIPPING   FISHING   ANCHORAGE AND EVERY SURFACE/UNDERWATER\nACTIVITY IS DANGEROUS.\nALL TRANSITTING SHIP BEWARE\n\nNNNN",
    "clean_text": "ZCZC UA22\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 101/26 FEB 18 (8 RELAY)\nLIGURIAN SEA\nAREA BOUNDED_LEM_ZS_Z_FM_ZFHJ_ RT QWMIWRN 012 22.473E\n45 12.788N 012 22.449E\n45 12.720N 012 22.714E\n45 12.770N 012 22.739E\nUNTIL 29TH MAR 2026 DAYTIME HOURS AND WEATHER PERMITTIMM/N CARMAR DUE WITH THE AID OF ROV, SIDE SCAN SONAR,\nAND MULTIBEAM\nWILL CARRY OUT SEABED RESTORATION\nSHIPPING FISHING ANCHORAGE AND EVERY SURFACE/UNDERWATER\nACTIVITY IS DANGEROUS.\nALL TRANSITTING SHIP BEWARE\n\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Shipping fishing anchorage and every surface/underwater.",
    "decoded_highlights": [
      "Shipping fishing anchorage and every surface/underwater",
      "Coastal warning nr. 101/26 feb 18 (8 relay)",
      "Until 29th mar 2026 daytime hours and weather permittimm/n carmar due with the aid of rov, side scan sonar"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 49,
    "heading": "2026-03-26 01:20:58 AREA: U",
    "published_at": "2026-03-26 01:20:58",
    "area": "U",
    "message_id": "UA21",
    "text": "ZCZC UA21\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 112/26 FEB 25 (6 REPETITION)  \nSOUTHERN ADRIATIC SEA   OTRANTO \nDAYS 02 03 04 05 06 09 10 11 12 13 16 17 18 19 20 23 24 25 26 27 \n30 AND 31 MAR FROM 08 00LT TO 23 00LT, WILL BE MYYFPWMZCHMM_FY__ONBFSFHY_MXHF\nFHFPJMFMHDPMJPMYPMFM_YZHMZ._*__+660._00_!_*9___!6__.6_0_._)+:202_)_._$0._+'_+_!._+!_*_A    40 25'31 N   18 15'30 E MLMMMM\nY__PJ_MGMMM_QYSEP E \nC    40 29'25 N   18 19'03 E  D    40 27'45 N   18 20'58 E \nE    40 25'55 N   18 22'28 E  F    40 23'05 N   18 23'18 E \nG    40 23'54 N   18 17'30 E \nSAILING, ANCHORAGE AND FISHING ARE PROHIBITED \n\nNNNN",
    "clean_text": "ZCZC UA21\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 112/26 FEB 25 (6 REPETITION)\nSOUTHERN ADRIATIC SEA OTRANTO\nDAYS 02 03 04 05 06 09 10 11 12 13 16 17 18 19 20 23 24 25 26 27\n30 AND 31 MAR FROM 08 00LT TO 23 00LT, WILL BE MYYFPWMZCHMM_FY__ONBFSFHY_MXHF\nFHFPJMFMHDPMJPMYPMFM_YZHMZ._*__+660._00_!_*9___!6__.6_0_._)+:202_)_._$0._+'_+_!._+!_*_A 40 25'31 N 18 15'30 E MLMMMM\nY__PJ_MGMMM_QYSEP E\nC 40 29'25 N 18 19'03 E D 40 27'45 N 18 20'58 E\nE 40 25'55 N 18 22'28 E F 40 23'05 N 18 23'18 E\nG 40 23'54 N 18 17'30 E\nSAILING, ANCHORAGE AND FISHING ARE PROHIBITED\n\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Sailing, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sailing, anchorage and fishing are prohibited",
      "Coastal warning 112/26 feb 25 (6 repetition)",
      "30 and 31 mar from 08 00lt to 23 00lt, will be myyfpwmzchmm fy onbfsfhy mxhf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-03-26 01:20:18 AREA: U",
    "published_at": "2026-03-26 01:20:18",
    "area": "U",
    "message_id": "UA20",
    "text": "ZCZC UA20\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 148/26 MAR 24\nCENTRAL ADRIATIC SEA - PESCARA.\nLIGHTHOUSE OF PESCARA I.L. 3871 (E2316.35 IN POSITION:\nLAT 42 27.9'N - LONG 014 14.0'E\nNOT WORKING.\nNNNN",
    "clean_text": "ZCZC UA20\n252320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 148/26 MAR 24\nCENTRAL ADRIATIC SEA - PESCARA.\nLIGHTHOUSE OF PESCARA I.L. 3871 (E2316.35 IN POSITION:\nLAT 42 27.9'N - LONG 014 14.0'E\nNOT WORKING.\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Lighthouse of pescara i.l. 3871 (e2316.35 in position.",
    "decoded_highlights": [
      "Lighthouse of pescara i.l. 3871 (e2316.35 in position",
      "Coastal warning 148/26 mar 24",
      "Lat 42 27.9'n - long 014 14.0'e"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 51,
    "heading": "2026-03-26 01:18:32 AREA: T",
    "published_at": "2026-03-26 01:18:32",
    "area": "T",
    "message_id": "TA19",
    "text": "ZCZC TA19\n07140!._:__.YMONGZZJHPWPYWFZM_JF__XWE\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVERSIJDE ESTABLISHED LQH_PPMLP_DMONGWM\nH  __UZYGM\n_UC_ITE\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nUNDERWAH_YF_PSFPMSZ_L_W_F_WPMPJHLSFJDPWMLPH_PPMLP_DMONGWM_ZJM\nH _ _ CG_M_PWARTMPQE MARKED\nMARKED WITH NORTH CARDINAL BUOYM__G__X_0_0_3XXP_U__DBDAB_OR NOR TO FISH ABOVE \nTHESE PIPELINES\nNNNN",
    "clean_text": "ZCZC TA19\n07140!._:__.YMONGZZJHPWPYWFZM_JF__XWE\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVERSIJDE ESTABLISHED LQH_PPMLP_DMONGWM\nH __UZYGM\n_UC_ITE\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nUNDERWAH_YF_PSFPMSZ_L_W_F_WPMPJHLSFJDPWMLPH_PPMLP_DMONGWM_ZJM\nH _ _ CG_M_PWARTMPQE MARKED\nMARKED WITH NORTH CARDINAL BUOYM__G__X_0_0_3XXP_U__DBDAB_OR NOR TO FISH ABOVE\nTHESE PIPELINES\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text reports a pipeline-related hazard with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Marked with north cardinal buoym g x 0 0 3xxp u dbdab or nor to fish above",
      "Underwaterpipeline raversijde established lqh ppmlp dmongwm",
      "Marked with north cardinal buoy 'jdn'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-03-26 01:12:36 AREA: T",
    "published_at": "2026-03-26 01:12:36",
    "area": "T",
    "message_id": "",
    "text": "ZCAC\n_A\n___O MSI 544/24\n__9_'_1_*___-00_/=__09 _+)*\n_'0*__._9'\n5115.9_8_ _00258.482E\n_5115.94__, _58.492E\nN_JBF__FTED NOHMHZM_R NOR TO FISH IN ___ V_C__ZZZZ\n_ZZC TA20\nCOASTAR_WARNING NR.125/2+ __Q\n\nSICILY STRAIT ZONE - PANTPSSPYFM_P)\n\nDRIFT HY_MF_M_ZJFHFZM\nP__HBH ZGON_XMC_P____3 90_3\nBETWEEN FOLOKDM_ZZYWFHPJM___\n_H__P _CHGM\n_U_QEE\n51-20.82N _PPWATWMUYE \n51-19.93N 003-09.75E\n51-19.93N 003-09.75E \n51-19.31N 0_8.04E\n51-20.06N 002-51.09E \n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIRE CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF _H 16 AND 65\nNNNN",
    "clean_text": "ZCAC\n_A\n___O MSI 544/24\n__9_'_1_*___-00_/=__09 _+)*\n_'0*__._9'\n5115.9_8_ _00258.482E\n_5115.94__, _58.492E\nN_JBF__FTED NOHMHZM_R NOR TO FISH IN ___ V_C__ZZZZ\n_ZZC TA20\nCOASTAR_WARNING NR.125/2+ __Q\n\nSICILY STRAIT ZONE - PANTPSSPYFM_P)\n\nDRIFT HY_MF_M_ZJFHFZM\nP__HBH ZGON_XMC_P____3 90_3\nBETWEEN FOLOKDM_ZZYWFHPJM___\n_H__P _CHGM\n_U_QEE\n51-20.82N _PPWATWMUYE\n51-19.93N 003-09.75E\n51-19.93N 003-09.75E\n51-19.31N 0_8.04E\n51-20.06N 002-51.09E\n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIRE CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF _H 16 AND 65\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: N jbf fted nohmhzm r nor to fish in v c zzzz. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N jbf fted nohmhzm r nor to fish in v c zzzz",
      "A ban on achoring and fishing in the entire corridor",
      "Coastar warning nr.125/2 q"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 59,
    "heading": "2026-03-26 01:10:22 AREA: T",
    "published_at": "2026-03-26 01:10:22",
    "area": "T",
    "message_id": "TF57",
    "text": "ZCZC TF57\n252014 UTC MAR\nOOSTENDERADIO MSI 127/26\nBE EEZ\nPILOT STATION WANDELAAR: SUSPENDED FOR NON SWATH OPERABLE VESSELS DUE TO BAD WEATHER\nREMOTE PILOTAGE\nFROM 2000 UTC BY VTS-ZEEBRUGGE TO FLUSHINGCROWJ_MAX. LENGTH 180 METRES AND/OR MAX. DRAUGHT 8 METRES\nFOR RORO, 30743 :-4 :-44834' 94 '!_!'/._5\n_._'0__$_5 METERS.\nCONTACT AND INFO WANDELAAR APPROACH VHF 60 TWO HOCYJMLP_ZYPMYYFOSMZZJHWE_IGHTBUOY\nNNNN",
    "clean_text": "ZCZC TF57\n252014 UTC MAR\nOOSTENDERADIO MSI 127/26\nBE EEZ\nPILOT STATION WANDELAAR: SUSPENDED FOR NON SWATH OPERABLE VESSELS DUE TO BAD WEATHER\nREMOTE PILOTAGE\nFROM 2000 UTC BY VTS-ZEEBRUGGE TO FLUSHINGCROWJ_MAX. LENGTH 180 METRES AND/OR MAX. DRAUGHT 8 METRES\nFOR RORO, 30743 :-4 :-44834' 94 '!_!'/._5\n_._'0__$_5 METERS.\nCONTACT AND INFO WANDELAAR APPROACH VHF 60 TWO HOCYJMLP_ZYPMYYFOSMZZJHWE_IGHTBUOY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "pilot service notice",
    "subject_code": "F",
    "decoded_summary": "pilot service notice for Belgium - Belgian coast and southern North Sea. Readable text says: Pilot station wandelaar: suspended for non swath operable vessels due to bad weather.",
    "decoded_highlights": [
      "Pilot station wandelaar: suspended for non swath operable vessels due to bad weather",
      "Contact and info wandelaar approach vhf 60 two hocyjmlp zypmyyfosmzzjhwe ightbuoy",
      "From 2000 utc by vts-zeebrugge to flushingcrowj max. length 180 metres and/or max. draught 8 metres"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 60,
    "heading": "2026-03-26 01:05:29 AREA: S",
    "published_at": "2026-03-26 01:05:29",
    "area": "S",
    "message_id": "SE16",
    "text": "ZCZC SE16\n252300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFZYP_J_M_ZYM_PYBMLF_DHONONGHDCYJWE_WIND: NORTHWEST 6 TO 7, DECREASING SLOWLY 4 TO 5.\nVISIBILITY/WEATHER: AT TIMES RAIN- OR SNOW SHOWERS WI\nHM_ZWPYHPONIII_KG\nFJFLFSFH__SEA: NORTHERN PART FIRST 6 OPH_Y_MGZHDPY_FJPMWP_EKQGRBBNE_BNR_Z_(18:\n28,$: WEST TO NORTHWEST ABOUT 4, FOR A TIME SHIFTING SOUTHWEST TO\nSOUTH AND INCREASING ABOUT 5.\nVISIBILITY/WEATHER: LATER RAIN WITH INCREASING POOR VISIBILITY.\nSEA: FIRST 3 METER.\nNNNN",
    "clean_text": "ZCZC SE16\n252300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFZYP_J_M_ZYM_PYBMLF_DHONONGHDCYJWE_WIND: NORTHWEST 6 TO 7, DECREASING SLOWLY 4 TO 5.\nVISIBILITY/WEATHER: AT TIMES RAIN- OR SNOW SHOWERS WI\nHM_ZWPYHPONIII_KG\nFJFLFSFH__SEA: NORTHERN PART FIRST 6 OPH_Y_MGZHDPY_FJPMWP_EKQGRBBNE_BNR_Z_(18:\n28,$: WEST TO NORTHWEST ABOUT 4, FOR A TIME SHIFTING SOUTHWEST TO\nSOUTH AND INCREASING ABOUT 5.\nVISIBILITY/WEATHER: LATER RAIN WITH INCREASING POOR VISIBILITY.\nSEA: FIRST 3 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: at times rain- or snow showers wi. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: at times rain- or snow showers wi",
      "Visibility/weather: later rain with increasing poor visibility",
      "Weatherfzyp j m zym pybmlf dhononghdcyjwe wind: northwest 6 to 7, decreasing slowly 4 to 5"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 63,
    "heading": "2026-03-26 01:03:00 AREA: S",
    "published_at": "2026-03-26 01:03:00",
    "area": "S",
    "message_id": "SA42",
    "text": "ZCZC SA42\nNCC-HAMBURG\n110800 UTXM_Y_\n_NAV. WARN. NO. 139\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XR3',\nAROUNDM_ZJFHFZM_HY_Y_HGM\n_E_ GPONGYPJHYF_HP_M__P_YLFJF_QBUXE39___KD_)1_+_!!=345_ 9! 2 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA42\nNCC-HAMBURG\n110800 UTXM_Y_\n_NAV. WARN. NO. 139\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XR3',\nAROUNDM_ZJFHFZM_HY_Y_HGM\n_E_ GPONGYPJHYF_HP_M__P_YLFJF_QBUXE39___KD_)1_+_!!=345_ 9! 2 NM REQUESTED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text reports survey operations and implies local caution around the work area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey operations by mv 'fugro synergy', cs 'c6xr3'",
      "German bight. weisse bank",
      "Nav. warn. no. 139"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 66,
    "heading": "2026-03-26 01:00:16 AREA: S",
    "published_at": "2026-03-26 01:00:16",
    "area": "S",
    "message_id": "SB37",
    "text": "ZCZC SB37\n252300 NAV_ET_G__LCYM_VG_X_\nWARNING NO. 105  252120UTC MAR\nFOR GERMAN BIGHT:\nNW 7, CEASING LATER.\nNNNN",
    "clean_text": "ZCZC SB37\n252300 NAV_ET_G__LCYM_VG_X_\nWARNING NO. 105 252120UTC MAR\nFOR GERMAN BIGHT:\nNW 7, CEASING LATER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Germany - German Bight and German North Sea. Readable text says: Warning no. 105 252120utc mar. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Warning no. 105 252120utc mar",
      "For german bight",
      "Nw 7, ceasing later"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 67,
    "heading": "2026-03-26 00:41:05 AREA: Q",
    "published_at": "2026-03-26 00:41:05",
    "area": "Q",
    "message_id": "QE49",
    "text": "ZCZC QE49\n\n252240 UTC MAR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 26/03/2026 AT 0000 UTC\n\n1. WARNING:\nLOC GUSTS OF SE/SW WIND 35-55 KT. ON FAR N, FM MORNING EVERYWHERE ON N-ERN, THAN PARTLY ON CENTRAL ADRIATIC \nGUSTS OF NQ_N OFFSHORE ALSO NW 35-65 KT, ON N-ERN ADRIATIC LOC UP TO 85 KT. SEA LOC 5. POSS SUDDENVSTORMS.\n\n2. SYNOPSIS:\nDEEP LOW IS SHIFTING ACROSS TH_ _GPYMWYFHF_MM_P_GUY_J_\nEM FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 27/03/2026 AT 0000 UTC\n\nN-ERN ADRIATIC:\nSE WIND, OFFSHORE ALSO SW 12-28, LOC UP TO 32 KT. ON FAR N, TOWARD MORNING OFFSHORE, THAN EVERYWHERE TURNING \nTO NE/N, OFFSHORE ALSO NW 18-36, INM\nPSPLFHJ_FMV_S_MGLYFP'__+_*$+60.:_.__._66__=___._*0.!_6.._06.___._+6!_.+_*$+60._6__9,__!*_\n__UM_VB_B_GBZJ_SEM_SZ_WEM_FHDMYF_MG_ZJJMDP_FPYMH_G_D_YJ\nMGSZ_MHDPM_ZJHMJSF_DHM_ZJ_M_ZYMJSPPHMZYMJZ_MWCPMHDPM_F__ONONG_PHYSMWYFHFX_S/SE WIND, 4-14, OFFSHORE ALSO SW 12-24, ON S-ERN PART INCR ON 16-32 KT. FM MORNING ON N-ERN PYHMZ_MYP_M_Z_PY_F_DHMSJZONZM_PHYSM_YHMZ_MYPM_W 12-24, OFFSHORE UP TO 32 KT. SEA INCR ON 3-4, FM MORNING OFFSHORE 6_. VIS 10-20 KM.\nBECMG CLOUDY, FM MORNING WITH RAIN, POSS HEAVIER T-SD_YJ\n_ONONGJ_GPYMWYFHFX_S/SW WIND 2-24, INCR ON 16-32, OFFSHORE UP TO 38 KT, TOWARD EVENING/OVERNIGHT SLIGHTLY DECR AND ALONG THE COAST TURNING TO\nSE. SEA INCR ON 3-4, FM MORNING OFFSHORE 4-5. VIS 10-20 KM. BECMG CLOUDY, FM WITH RAIN, POSS HEAVIPY_O_G_D_YJ\n_ONGWZFFFXA___YA*_ZCZC",
    "clean_text": "ZCZC QE49\n\n252240 UTC MAR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 26/03/2026 AT 0000 UTC\n\n1. WARNING:\nLOC GUSTS OF SE/SW WIND 35-55 KT. ON FAR N, FM MORNING EVERYWHERE ON N-ERN, THAN PARTLY ON CENTRAL ADRIATIC\nGUSTS OF NQ_N OFFSHORE ALSO NW 35-65 KT, ON N-ERN ADRIATIC LOC UP TO 85 KT. SEA LOC 5. POSS SUDDENVSTORMS.\n\n2. SYNOPSIS:\nDEEP LOW IS SHIFTING ACROSS TH_ _GPYMWYFHF_MM_P_GUY_J_\nEM FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 27/03/2026 AT 0000 UTC\n\nN-ERN ADRIATIC:\nSE WIND, OFFSHORE ALSO SW 12-28, LOC UP TO 32 KT. ON FAR N, TOWARD MORNING OFFSHORE, THAN EVERYWHERE TURNING\nTO NE/N, OFFSHORE ALSO NW 18-36, INM\nPSPLFHJ_FMV_S_MGLYFP'__+_*$+60.:_.__._66__=___._*0.!_6.._06.___._+6!_.+_*$+60._6__9,__!*_\n__UM_VB_B_GBZJ_SEM_SZ_WEM_FHDMYF_MG_ZJJMDP_FPYMH_G_D_YJ\nMGSZ_MHDPM_ZJHMJSF_DHM_ZJ_M_ZYMJSPPHMZYMJZ_MWCPMHDPM_F__ONONG_PHYSMWYFHFX_S/SE WIND, 4-14, OFFSHORE ALSO SW 12-24, ON S-ERN PART INCR ON 16-32 KT. FM MORNING ON N-ERN PYHMZ_MYP_M_Z_PY_F_DHMSJZONZM_PHYSM_YHMZ_MYPM_W 12-24, OFFSHORE UP TO 32 KT. SEA INCR ON 3-4, FM MORNING OFFSHORE 6_. VIS 10-20 KM.\nBECMG CLOUDY, FM MORNING WITH RAIN, POSS HEAVIER T-SD_YJ\n_ONONGJ_GPYMWYFHFX_S/SW WIND 2-24, INCR ON 16-32, OFFSHORE UP TO 38 KT, TOWARD EVENING/OVERNIGHT SLIGHTLY DECR AND ALONG THE COAST TURNING TO\nSE. SEA INCR ON 3-4, FM MORNING OFFSHORE 4-5. VIS 10-20 KM. BECMG CLOUDY, FM WITH RAIN, POSS HEAVIPY_O_G_D_YJ\n_ONGWZFFFXA___YA*_ZCZC",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Croatia - Adriatic Sea. Readable text says: Becmg cloudy, fm morning with rain, poss heavier t-sd yj. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Becmg cloudy, fm morning with rain, poss heavier t-sd yj",
      "Se. sea incr on 3-4, fm morning offshore 4-5. vis 10-20 km. becmg cloudy, fm with rain, poss heavipy o g d yj",
      "Weather bulletin for adriatic issued by the marine meteorological center split on 26/03/2026 at 0000 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 68,
    "heading": "2026-03-26 00:40:16 AREA: Q",
    "published_at": "2026-03-26 00:40:16",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\n252240 UTXM_Y_\n_SPLIT RADIO\n\nCOASTAL - NAVTEX\nNORTHERN ADRIATIC - LUKA PULA\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIVE DEVICE IN VICINITY 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "clean_text": "ZCZC QA01\n252240 UTXM_Y_\n_SPLIT RADIO\n\nCOASTAL - NAVTEX\nNORTHERN ADRIATIC - LUKA PULA\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIVE DEVICE IN VICINITY 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Croatia - Adriatic Sea. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Pula port, breakwater, explosive device in vicinity 44-52,55 n 013-47,77 e. navigation, anchoring and other activities in 150 meters radius from position prohibited",
      "Coastal - navtex",
      "Northern adriatic - luka pula"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 71,
    "heading": "2026-03-26 00:32:07 AREA: P",
    "published_at": "2026-03-26 00:32:07",
    "area": "P",
    "message_id": "PA32",
    "text": "ZCZC PA32\n:91156 UTC OCT 25\nMSI 302/25\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOG HORN FNZ_PYHF_PON\nH_YYZLO6/___9,9,_/0'._*!_87! 5__9,9,9+_9,,888_+:+: 0-60\n20083\n UTC MAR 26\nMSI 93/26\nNORTH SEA\nFOLLOWING PLATFORMS HAVE DEFECTS:\nQ4-C              52-49N 004-16E NAV AIDS UNRELIABLE\nL2-FA-1          53-57N 004-29E FOGHORN UNRELIAB_N7-FA-1     ...._00___\n_E YG_M+_$+6.!+_06_!_09\n=_0:            53-42N 003-52E FOGHORN INOPERATIVE\nK14-FB-1       53-11N 003-34E UNLIT\nK7-FA-1         53-34N 003-18E UNLIT\nCANCEL MSI 91/26\nNNNN",
    "clean_text": "ZCZC PA32\n:91156 UTC OCT 25\nMSI 302/25\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOG HORN FNZ_PYHF_PON\nH_YYZLO6/___9,9,_/0'._*!_87! 5__9,9,9+_9,,888_+:+: 0-60\n20083\nUTC MAR 26\nMSI 93/26\nNORTH SEA\nFOLLOWING PLATFORMS HAVE DEFECTS:\nQ4-C 52-49N 004-16E NAV AIDS UNRELIABLE\nL2-FA-1 53-57N 004-29E FOGHORN UNRELIAB_N7-FA-1 ...._00___\n_E YG_M+_$+6.!+_06_!_09\n=_0: 53-42N 003-52E FOGHORN INOPERATIVE\nK14-FB-1 53-11N 003-34E UNLIT\nK7-FA-1 53-34N 003-18E UNLIT\nCANCEL MSI 91/26\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORTHSEA",
      "NORTH SEA"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "52-40.3n 004-09.8e hni4 fog horn fnz pyhf pon",
      "0: 53-42n 003-52e foghorn inoperative",
      "L2-fa-1 53-57n 004-29e foghorn unreliab n7-fa-1 .... 00"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 75,
    "heading": "2026-03-26 00:24:15 AREA: O",
    "published_at": "2026-03-26 00:24:15",
    "area": "O",
    "message_id": "OE87",
    "text": "ZCZC OE87\nWX FORECAST 25/1600 TO 26/0400 UTC \nWRNG-NIL\nGEN SIT-A DEPRESSION OVER THE GULF OF GENOA WILL MOVE OVER NORTHERN ITALY \nWX-FINE BEC RATHER CLOUDY LATER AT NIGHT\nVIS-GOOD\nWIND-W NW F5 LOC F5 TO F6 AND BEC F5 OVERNIGHT\nSEA-MOD\nSWELL-LOW NE BEC NW OVERNIGHT\nNNNN",
    "clean_text": "ZCZC OE87\nWX FORECAST 25/1600 TO 26/0400 UTC\nWRNG-NIL\nGEN SIT-A DEPRESSION OVER THE GULF OF GENOA WILL MOVE OVER NORTHERN ITALY\nWX-FINE BEC RATHER CLOUDY LATER AT NIGHT\nVIS-GOOD\nWIND-W NW F5 LOC F5 TO F6 AND BEC F5 OVERNIGHT\nSEA-MOD\nSWELL-LOW NE BEC NW OVERNIGHT\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Wx forecast 25/1600 to 26/0400 utc.",
    "decoded_highlights": [
      "Wx forecast 25/1600 to 26/0400 utc",
      "Gen sit-a depression over the gulf of genoa will move over northern italy",
      "Wx-fine bec rather cloudy later at night"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 76,
    "heading": "2026-03-26 00:23:03 AREA: O",
    "published_at": "2026-03-26 00:23:03",
    "area": "O",
    "message_id": "OA25",
    "text": "ZCZC OA25\nCOASTAL WARNING NR 122/26\nSTRAIT OF SICILY ==)-._'-\n7,58) -048) 15TH 2026, C/L MA\nJSFPHMF_ZM_BAAA_\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLAZFNG TRUCK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 57 02.88N - 012 57 34.8E\n3. 33 51 38.7N - 013 02 55.2E\nSHIPS TRANSIT BEWARE AND KEEP A SAFETY DISTANCE OF NOT LESS THAN 1NM FROM THE ABOVE MENTIONED UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "clean_text": "ZCZC OA25\nCOASTAL WARNING NR 122/26\nSTRAIT OF SICILY ==)-._'-\n7,58) -048) 15TH 2026, C/L MA\nJSFPHMF_ZM_BAAA_\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLAZFNG TRUCK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 57 02.88N - 012 57 34.8E\n3. 33 51 38.7N - 013 02 55.2E\nSHIPS TRANSIT BEWARE AND KEEP A SAFETY DISTANCE OF NOT LESS THAN 1NM FROM THE ABOVE MENTIONED UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Will carry out cable removal operations along the folazfng truck.",
    "decoded_highlights": [
      "Will carry out cable removal operations along the folazfng truck",
      "Coastal warning nr 122/26",
      "Ships transit beware and keep a safety distance of not less than 1nm from the above mentioned unit to be considered with limited manouverability"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 77,
    "heading": "2026-03-26 00:22:28 AREA: O",
    "published_at": "2026-03-26 00:22:28",
    "area": "O",
    "message_id": "OA04",
    "text": "ZCZC OA04\nNAVIGATIONAL WARNING\nLOST ANCHOR AND CHAIN INMSZ_HFZMLC_PY__MYPM_CHAIN IS LAID ALONG THE LINE FROM 35-57.1N 014-19E TO 35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "clean_text": "ZCZC OA04\nNAVIGATIONAL WARNING\nLOST ANCHOR AND CHAIN INMSZ_HFZMLC_PY__MYPM_CHAIN IS LAID ALONG THE LINE FROM 35-57.1N 014-19E TO 35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Lost anchor and chain inmsz hfzmlc py mypm chain is laid along the line from 35-57.1n 014-19e to 35-57.2n 014-19.6e. keep a safe distance.",
    "decoded_highlights": [
      "Lost anchor and chain inmsz hfzmlc py mypm chain is laid along the line from 35-57.1n 014-19e to 35-57.2n 014-19.6e. keep a safe distance",
      "Navigational warning"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 78,
    "heading": "2026-03-26 00:20:16 AREA: O",
    "published_at": "2026-03-26 00:20:16",
    "area": "O",
    "message_id": "OA73",
    "text": "ZCZC OA73\nNTM NO 19/26\nTM NOTIFIES THAT SEVERAL TYPES OF INVESTIGATIVE SURVEYS WILL BE CARRIED OUT FOR THE PROPOSED SECOND INTERCONNECTOR BETWEEN MALTA AND SF_IS_.\n\nTHESE INVESTIGATIVE SURVEYS WILL BE CARRIED OUT BY THE VESSLES SILVIO 1, CELINA 2 AND OCEAN MARLIN AND THEIR ANCILLARY EQUIPMENT.\n\nWEAHDPYM_PYBFHHF_MHDPMJCY\nP_JMYPM_SPWMHZMXZ_BPYXPMZMJCWEM_ H_G_YXDM\nUUEMG__MYPMHZMLPMP_PXHPWMHZMLPMXZ_SPHPWML_MJK_XEIKPB9)=_+_/!_--+_2328_)8) _\n__++5\n5'_!02.+:_.'+_._$0.6+:_0.)0__00._$0._+'_+_!._+!_*.9,._.0__:_ _7__14-26.334E\n Z QA EYAPWMPWON 014-28.574E\nC - 36-06.061N 104-26.994E \nD\n- 36-14.439N 014-31.994E \nE - 36-22.787N 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION AND TO MAINTAIN A SAFE DISTANCE OF 0.50 NAUTICAL MILE_ FRZM THE VESSELS WHEN THEY ARE DETECTED OR SIGHTED.\nNNNN",
    "clean_text": "ZCZC OA73\nNTM NO 19/26\nTM NOTIFIES THAT SEVERAL TYPES OF INVESTIGATIVE SURVEYS WILL BE CARRIED OUT FOR THE PROPOSED SECOND INTERCONNECTOR BETWEEN MALTA AND SF_IS_.\n\nTHESE INVESTIGATIVE SURVEYS WILL BE CARRIED OUT BY THE VESSLES SILVIO 1, CELINA 2 AND OCEAN MARLIN AND THEIR ANCILLARY EQUIPMENT.\n\nWEAHDPYM_PYBFHHF_MHDPMJCY\nP_JMYPM_SPWMHZMXZ_BPYXPMZMJCWEM_ H_G_YXDM\nUUEMG__MYPMHZMLPMP_PXHPWMHZMLPMXZ_SPHPWML_MJK_XEIKPB9)=_+_/!_--+_2328_)8) _\n__++5\n5'_!02.+:_.'+_._$0.6+:_0.)0__00._$0._+'_+_!._+!_*.9,._.0__:_ _7__14-26.334E\nZ QA EYAPWMPWON 014-28.574E\nC - 36-06.061N 104-26.994E\nD\n- 36-14.439N 014-31.994E\nE - 36-22.787N 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION AND TO MAINTAIN A SAFE DISTANCE OF 0.50 NAUTICAL MILE_ FRZM THE VESSELS WHEN THEY ARE DETECTED OR SIGHTED.\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Tm notifies that several types of investigative surveys will be carried out for the proposed second interconnector between malta and sf is. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tm notifies that several types of investigative surveys will be carried out for the proposed second interconnector between malta and sf is",
      "These investigative surveys will be carried out by the vessles silvio 1, celina 2 and ocean marlin and their ancillary equipment",
      "Mariners are instructed to navigate with caution and to maintain a safe distance of 0.50 nautical mile frzm the vessels when they are detected or sighted"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 79,
    "heading": "2026-03-26 00:06:40 AREA: P",
    "published_at": "2026-03-26 00:06:40",
    "area": "P",
    "message_id": "PL07",
    "text": "ZCZC PL07\n251711 UTC MAR 26\nWAVE HEIGHT WARNING  300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 252100 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE ATMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IMMNY_F_CSYM_YZBMM_PJH_GZYHD_PJHMHZMZYHDK_QDB_ABAE_WRP_KPG\nW__S_U_ZDWUG_L_G_JMJDZCSWMSHPYM_ZCYJPMF_MP_PJJY_MHZM_ZF_MXZ__MLNK_BBHDPYM_PRIATE MEASUR_S TO AVOID LOSING CONTAINERS..\nNNNN",
    "clean_text": "ZCZC PL07\n251711 UTC MAR 26\nWAVE HEIGHT WARNING 300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 252100 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE ATMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IMMNY_F_CSYM_YZBMM_PJH_GZYHD_PJHMHZMZYHDK_QDB_ABAE_WRP_KPG\nW__S_U_ZDWUG_L_G_JMJDZCSWMSHPYM_ZCYJPMF_MP_PJJY_MHZM_ZF_MXZ__MLNK_BBHDPYM_PRIATE MEASUR_S TO AVOID LOSING CONTAINERS..\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TERSCHELLING"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 1,
    "heading": "2026-03-25 23:56:37 AREA: G",
    "published_at": "2026-03-25 23:56:37",
    "area": "G",
    "message_id": "GB08",
    "text": "ZCZC GB08\nGALE WARNING WEDNESDA_T MARCH 2153 UHC\n_O_G\nF__M_FYMFJSPONGZYHD_PJHPYS_MJP_PI_IFORCE 9 DECREASING GALE FORCE 8 IMMINENT\nNNNN",
    "clean_text": "ZCZC GB08\nGALE WARNING WEDNESDA_T MARCH 2153 UHC\n_O_G\nF__M_FYMFJSPONGZYHD_PJHPYS_MJP_PI_IFORCE 9 DECREASING GALE FORCE 8 IMMINENT\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code G. Readable text says: F m fymfjspongzyhd pjhpys mjp pi iforce 9 decreasing gale force 8 imminent. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "F m fymfjspongzyhd pjhpys mjp pi iforce 9 decreasing gale force 8 imminent",
      "Gale warning wednesda t march 2153 uhc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-03-25 23:56:09 AREA: O",
    "published_at": "2026-03-25 23:56:09",
    "area": "O",
    "message_id": "OB77",
    "text": "ZCZC OB77\nGALE WARNINGCWEDNEJDEM_UH_G_YX_ON_X_B_XD_Z_B_X_1__1_(_-)3 ,92 :3-'3$\n\nROCKALL\nGAL_ZCZC",
    "clean_text": "ZCZC OB77\nGALE WARNINGCWEDNEJDEM_UH_G_YX_ON_X_B_XD_Z_B_X_1__1_(_-)3 ,92 :3-'3$\n\nROCKALL\nGAL_ZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code O. Readable text says: Gale warningcwednejdem uh g yx on x b xd z b x 1 1 ( -)3 ,92 :3-'3$. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warningcwednejdem uh g yx on x b xd z b x 1 1 ( -)3 ,92 :3-'3$"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-03-25 23:42:03 AREA: K",
    "published_at": "2026-03-25 23:42:03",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\nAVURNAV CZEPOOCB_DOVER - DST MANC_E EST\nACDS TO NAVIGATION C_ANGES\nAIS T_AJ_CE - LIGZ__UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80_3\n_,\n!2\n_=_285_ :-7589,\nNNNN",
    "clean_text": "ZCZC KA26\nAVURNAV CZEPOOCB_DOVER - DST MANC_E EST\nACDS TO NAVIGATION C_ANGES\nAIS T_AJ_CE - LIGZ__UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80_3\n_,\n!2\n_=_285_ :-7589,\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOVER"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text says: Ais t aj ce - ligz unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ais t aj ce - ligz unlit",
      "Avurnav czepoocb dover - dst manc e est",
      "Acds to navigation c anges"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-03-25 23:40:50 AREA: K",
    "published_at": "2026-03-25 23:40:50",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR_\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTFSM_CYHMZHF_PONGZM_FJDF_TRAWLING, DREDGING, ANCHORING ANDV_F_CM_FHDFIII_FJMYPONGYPMLZCWPW_LE_50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-21.02E\n50-15.86N 001-19.41E\n50-19__:__\nF _ UBUGP_N\nH Z_CYGV\n__RMUUE\n50-20.11N 001-84.97(_\n=_+3\n_+_0_1!\n_2-_$:-__=!/_+_/ \n20\n1!33_+$3 306=!/(-*6_2_001__3*+$_.92E\nNNNN",
    "clean_text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR_\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTFSM_CYHMZHF_PONGZM_FJDF_TRAWLING, DREDGING, ANCHORING ANDV_F_CM_FHDFIII_FJMYPONGYPMLZCWPW_LE_50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-21.02E\n50-15.86N 001-19.41E\n50-19__:__\nF _ UBUGP_N\nH Z_CYGV\n__RMUUE\n50-20.11N 001-84.97(_\n=_+3\n_+_0_1!\n_2-_$:-__=!/_+_/\n20\n1!33_+$3 306=!/(-*6_2_001__3*+$_.92E\nNNNN",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code K. Readable text says: Untfsm cyhmzhf pongzm fjdf trawling, dredging, anchoring andv f cm fhdfiii fjmypongypmlzcwpw le 50-10.84n 001-29.44e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Untfsm cyhmzhf pongzm fjdf trawling, dredging, anchoring andv f cm fhdfiii fjmypongypmlzcwpw le 50-10.84n 001-29.44e",
      "Cable laying operation",
      "Wight - large cayeux-sur"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-03-25 23:40:16 AREA: K",
    "published_at": "2026-03-25 23:40:16",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CNPYLZCYABN_K_HC__OVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLIGHT BUZ_ - LIGHT UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CNPYLZCYABN_K_HC__OVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLIGHT BUZ_ - LIGHT UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DST MANCHE"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text reports an aid-to-navigation fault near 51-21.20N 002-17.30E.",
    "decoded_highlights": [
      "Light buz - light unlit",
      "Avurnav cnpylzcyabn k hc over - dst manche est",
      "Aids to navigation changes"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 6,
    "heading": "2026-03-25 23:35:02 AREA: J",
    "published_at": "2026-03-25 23:35:02",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JAG__\nPPWQPTO UTC JKL\nBALTIC SEA NAV WARN 026/25\nSOUTHERN, SOUTHEASTERN, C_MLYSMIIIIHDPYMLSHF_D SEA OF AALAND.\nGNSS, AIS, RAYMWMIIICIE19__E_E__B_RVED IN AREA.\nMARINERS ADVISED TO EXERCND_C_CHFZONGWMLPM_YPYPWM_ZY__VIGATION IMWAFB_O\nCANCEL BALTIC SEA NAV WARN 023/25\nNNNN",
    "clean_text": "ZCZC JAG__\nPPWQPTO UTC JKL\nBALTIC SEA NAV WARN 026/25\nSOUTHERN, SOUTHEASTERN, C_MLYSMIIIIHDPYMLSHF_D SEA OF AALAND.\nGNSS, AIS, RAYMWMIIICIE19__E_E__B_RVED IN AREA.\nMARINERS ADVISED TO EXERCND_C_CHFZONGWMLPM_YPYPWM_ZY__VIGATION IMWAFB_O\nCANCEL BALTIC SEA NAV WARN 023/25\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: Gnss, ais, raymwmiiicie19 e e b rved in area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gnss, ais, raymwmiiicie19 e e b rved in area",
      "Southern, southeastern, c mlysmiiiihdpymlshf d sea of aaland",
      "Mariners advised to exercnd c chfzongwmlpm ypypwm zy vigation imwafb o"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-03-25 23:34:38 AREA: T",
    "published_at": "2026-03-25 23:34:38",
    "area": "T",
    "message_id": "",
    "text": "ZCZM JA03\n201402 UTC NO_ONGLSHF_MJPM\n_Y_M\nYU_SHONGSSMYPJONG_ZY\nM_YPHMF_PM__Z_XO_GAIIKKUU\nB_JZJF\n_G_ICESERVICE\nNNNN",
    "clean_text": "ZCZM JA03\n201402 UTC NO_ONGLSHF_MJPM\n_Y_M\nYU_SHONGSSMYPJONG_ZY\nM_YPHMF_PM__Z_XO_GAIIKKUU\nB_JZJF\n_G_ICESERVICE\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "G iceservice",
      "Yu shongssmypjong zy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-03-25 23:32:09 AREA: E",
    "published_at": "2026-03-25 23:32:09",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL BUOY 50-01.2N 005_W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL BUOY 50-01.2N 005_W UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005 w unlit.",
    "decoded_highlights": [
      "South cardinal buoy 50-01.2n 005 w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 9,
    "heading": "2026-03-25 23:29:33 AREA: T",
    "published_at": "2026-03-25 23:29:33",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_JA_=\n__-3.*__.9MVL_ AH_O_X)9(.(_E_,,___ 77_= __ )__/7_ ,3-_ 5__3$_3$__\n______0+___! 1)91+/_(6791___\n (__0 )8'5_,:3 _!=-5\nZCZC",
    "clean_text": "ZCZC_JA_=\n__-3.*__.9MVL_ AH_O_X)9(.(_E_,,___ 77_= __ )__/7_ ,3-_ 5__3$_3$__\n______0+___! 1)91+/_(6791___\n(__0 )8'5_,:3 _!=-5\nZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 10,
    "heading": "2026-03-25 23:26:27 AREA: S",
    "published_at": "2026-03-25 23:26:27",
    "area": "S",
    "message_id": "SB37",
    "text": "ZCZC SB37\n252125 NV\nI_-HAMBURG (NCC)\nWARNIO_V\nZTBM H_V\n_Q__UTC MA_\n03-23 07:00-13:00 K__ON\n_PUYM\nX PX_MG_H_ON\n_R QICPP TO 03-25 01:00 UTC\n03-25 04:00 TO 03-26 00:59 UTC\n03-26 04:00 TO 03-2  _M_Z\nGCH_ON\n_PUCMYX_MGHZM_ PX_MG_H_ON\n_PU_C_ PICPP TO 28 00:59 UTC\n03-28 04:00 TO 13:00 UTC\nCANCEL THISMBJ__UF __MG_HXM_YONGONNIII_ZC JA12\n181607 UTC MAR\nLITHUANIAN NAV WARN 018/26\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA  ENTRANCE  MAINTENANCE DREDGING\nMAINTENANCE DREDGING IN PROGRESS IN THE SEAWAY CHANNEL, WITHIN AREA BOUNDED BY:\n55-+_.8_V021-04.9W\nNV_HYP_CG_M_E\n55-43.7N 021-05.2_3\n55-43.6N 021_05.5E\n55-43.5N 021-04.4E\n55-43.7,_\n_ Y_CGPON_HHYPFG_\n_I Y__VP__H CAUTION NEAR THE DRED_INGIWORKS ARDA=(_+8_+_ -_ 0_''\n--5_.69_8. '*!___)7(7__1)6ZCZC",
    "clean_text": "ZCZC SB37\n252125 NV\nI_-HAMBURG (NCC)\nWARNIO_V\nZTBM H_V\n_Q__UTC MA_\n03-23 07:00-13:00 K__ON\n_PUYM\nX PX_MG_H_ON\n_R QICPP TO 03-25 01:00 UTC\n03-25 04:00 TO 03-26 00:59 UTC\n03-26 04:00 TO 03-2 _M_Z\nGCH_ON\n_PUCMYX_MGHZM_ PX_MG_H_ON\n_PU_C_ PICPP TO 28 00:59 UTC\n03-28 04:00 TO 13:00 UTC\nCANCEL THISMBJ__UF __MG_HXM_YONGONNIII_ZC JA12\n181607 UTC MAR\nLITHUANIAN NAV WARN 018/26\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA ENTRANCE MAINTENANCE DREDGING\nMAINTENANCE DREDGING IN PROGRESS IN THE SEAWAY CHANNEL, WITHIN AREA BOUNDED BY:\n55-+_.8_V021-04.9W\nNV_HYP_CG_M_E\n55-43.7N 021-05.2_3\n55-43.6N 021_05.5E\n55-43.5N 021-04.4E\n55-43.7,_\n_ Y_CGPON_HHYPFG_\n_I Y__VP__H CAUTION NEAR THE DRED_INGIWORKS ARDA=(_+8_+_ -_ 0_''\n--5_.69_8. '*!___)7(7__1)6ZCZC",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code S. Readable text says: Approaches to port klaipeda entrance maintenance dredging. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Approaches to port klaipeda entrance maintenance dredging",
      "Maintenance dredging in progress in the seaway channel, within area bounded by",
      "R qicpp to 03-25 01:00 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-03-25 23:23:53 AREA: J",
    "published_at": "2026-03-25 23:23:53",
    "area": "J",
    "message_id": "JA25",
    "text": "ZCZC JA25\n241755 UTC MAG\nI__IPMWARN 174/26\nWESTERN BALTIC. NORTH OF DARSSER ORT.\nSURVEY OPERATIONS BY MV 'FUGRO PIONEER',  'C6BH3',\nWITHIN A _ADIUS OF 2 NM AROUND POSITION\n54-36,9N 012-35,9E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1000 M REQUESTED.\nNNNN",
    "clean_text": "ZCZC JA25\n241755 UTC MAG\nI__IPMWARN 174/26\nWESTERN BALTIC. NORTH OF DARSSER ORT.\nSURVEY OPERATIONS BY MV 'FUGRO PIONEER', 'C6BH3',\nWITHIN A _ADIUS OF 2 NM AROUND POSITION\n54-36,9N 012-35,9E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1000 M REQUESTED.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text reports survey operations near 54-36.9N 012-35.9E and implies local caution around the work area.",
    "decoded_highlights": [
      "Survey operations by mv 'fugro pioneer', 'c6bh3'",
      "Restricted manoevrability during operations",
      "Western baltic. north of darsser ort"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 14,
    "heading": "2026-03-25 23:22:59 AREA: J",
    "published_at": "2026-03-25 23:22:59",
    "area": "J",
    "message_id": "JA26",
    "text": "ZCZC JA26\n251809 UTC MAR\n\nKALINGRAD NAV WARN 0505_-_\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTMMYONGFMYPMHP_ARILY DANGEROUS TO SHIPPING BR-42\n55-20.00N 020-08.00E 55-20.00N 020-25.00E\n55-07.6.N 020-25.00E 55-07.60N 020-08.00E\nCANCEL MESSAGE 302200=_(\n_ -04\nNNNN",
    "clean_text": "ZCZC JA26\n251809 UTC MAR\n\nKALINGRAD NAV WARN 0505_-_\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTMMYONGFMYPMHP_ARILY DANGEROUS TO SHIPPING BR-42\n55-20.00N 020-08.00E 55-20.00N 020-25.00E\n55-07.6.N 020-25.00E 55-07.60N 020-08.00E\nCANCEL MESSAGE 302200=_(\n_ -04\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Kalingrad nav warn 0505 -.",
    "decoded_highlights": [
      "Kalingrad nav warn 0505 -",
      "Southeastern baltic",
      "Cancel message 302200 ("
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 15,
    "heading": "2026-03-25 23:21:54 AREA: J",
    "published_at": "2026-03-25 23:21:54",
    "area": "J",
    "message_id": "JA27",
    "text": "ZCZC JA27\n251812 UTC MAR\n\nKALINGRAD NAV WARN 051/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 307 MG_H_MYONGFMYPMHP_ARILY DANGEROUS TO SHIPPING\n55-32.00N 019-01.60E 55-32.00N 019-50.00E\n55-03900__19-35.00E 54-46.40N 019-35.00E\n54-50.30N 019-20.30E 55-11.50N 019-09.20E\n55-20.00N 019-04.60E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "clean_text": "ZCZC JA27\n251812 UTC MAR\n\nKALINGRAD NAV WARN 051/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 307 MG_H_MYONGFMYPMHP_ARILY DANGEROUS TO SHIPPING\n55-32.00N 019-01.60E 55-32.00N 019-50.00E\n55-03900__19-35.00E 54-46.40N 019-35.00E\n54-50.30N 019-20.30E 55-11.50N 019-09.20E\n55-20.00N 019-04.60E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Kalingrad nav warn 051/26.",
    "decoded_highlights": [
      "Kalingrad nav warn 051/26",
      "Southeastern baltic"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 16,
    "heading": "2026-03-25 23:20:47 AREA: J",
    "published_at": "2026-03-25 23:20:47",
    "area": "J",
    "message_id": "JA28",
    "text": "ZCZC JA28\n251815 UTC MAR\n\nKALINGRAD N__M_RN 052/2/\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING BR-__7\n55-54.00N 019-03.00E 55-3_.00_5.00E\n55-04.00N 020-15.00E 54-57._0N 020-06.00E\n54-57.50N 019-55.00E 54-50.00N 019-50.00E\n54-50.00_OAWTMPPE\n_ANCEL THIS ___F_PM\n_PP UTC APR\nNNNN",
    "clean_text": "ZCZC JA28\n251815 UTC MAR\n\nKALINGRAD N__M_RN 052/2/\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING BR-__7\n55-54.00N 019-03.00E 55-3_.00_5.00E\n55-04.00N 020-15.00E 54-57._0N 020-06.00E\n54-57.50N 019-55.00E 54-50.00N 019-50.00E\n54-50.00_OAWTMPPE\n_ANCEL THIS ___F_PM\n_PP UTC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: In area temporarily dangerous to shipping br- 7. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "In area temporarily dangerous to shipping br- 7",
      "Southeastern baltic",
      "54-50.00 oawtmppe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 17,
    "heading": "2026-03-25 23:19:52 AREA: Q",
    "published_at": "2026-03-25 23:19:52",
    "area": "Q",
    "message_id": "",
    "text": "ZCZC Q_\nUZ_TQIQI UTC MAR\n\nKALINGRAD NAV WARN 053/26\n\nSOUTHEASTERN BALTIC\nBS_IPS EXERCISES 312100 KTXM_YMHDYCM\nPU MG_H_V_YONGFMYPMHP_ZQYFS_NGEROUS TO SHIPPING_BL_AQYQ\n55-09.50N 019-45.30E 55-09.50N 020-00.0_E\n9\n_UBG_WPAPPMPPE 55-02.00N 019-39.68_$\n)_:-,:3) 5_8' .3_'__.\n0U__TC APR\nNNNN",
    "clean_text": "ZCZC Q_\nUZ_TQIQI UTC MAR\n\nKALINGRAD NAV WARN 053/26\n\nSOUTHEASTERN BALTIC\nBS_IPS EXERCISES 312100 KTXM_YMHDYCM\nPU MG_H_V_YONGFMYPMHP_ZQYFS_NGEROUS TO SHIPPING_BL_AQYQ\n55-09.50N 019-45.30E 55-09.50N 020-00.0_E\n9\n_UBG_WPAPPMPPE 55-02.00N 019-39.68_$\n)_:-,:3) 5_8' .3_'__.\n0U__TC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code Q",
    "display_region_label": "B1 code Q",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code Q. Readable text says: Bs ips exercises 312100 ktxm ymhdycm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bs ips exercises 312100 ktxm ymhdycm",
      "Uz tqiqi utc mar",
      "Kalingrad nav warn 053/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-03-25 23:11:53 AREA: H",
    "published_at": "2026-03-25 23:11:53",
    "area": "H",
    "message_id": "HA60",
    "text": "ZCZC HA60\n140945 UTCNMAR 26\nIRAKLEIO RADIO NAVWARN 209/26\n_'_7_. 3-'534, 03)909,,3'3\n8-:9,8-, _7)!_\n3/34:8'3' _6 _3))3,8: ,-=6\n!49. 151500 UTC MAR 26 UNTIL GQT\nCQ_C SEP 26\nIN AREA BOUNDED BY:\n36 40.70N - 022 40.60E\n36 33.40N _W_RGE\n36 26.78N _A PWW RO_TP K\nF_PQFCEEP\nQ_Z_DJU_XVPJKEV\n__MSLC_TMPTUBKU_$_ 2! 26.30 N S_ W UP TO ROUGH. LHC\nPOOR. THUNDERSTORM_\nK_FTPZS_MJPONVMPM_PMTC_OR 4 LATER _W\nCFMH_M\nHOMG_S_\nBMG. THUNDELSTORM\nRODOS SEA\nVRB   OR 4 SOON N NW. _70 59 ')_5. C_ANCE\nOF TH_ODERSTO_M\nKA_PATHIO\nN NE 4 OR _._*++_-._4858_)\n,  :O_VQI SOON 7. ROULH\nOMPOOR_MO__THUNDERSTO_M\n_ADTIKO\nN NW 5\n,+6=__._*++_.__9$ 94 497__.._34'594.\n'975_23'5 -3_3- \n, 28 SOON 7__R 8 DECR. ROUGH. LOC POOR.\nCHANCE OF THUNDERSTORM\nSOUTHEAST AEGEAN IKARIO\nE OF -6.00 N NE 5 OR 6 ARD W OF 26.00 N\n7 OR 8 AND Y OF 2__6.00\n7 OR 8 DECR. MOD OF\nO_WO. LOC POOR.\nCHANFE OF THUNDERSTZY_ON__ZJMJPONMPM_HMGZ_M_SOON D\nZJ 37.20 6 OR 7. MOD.\nCHSNCE OF TDCYWMYJ_ZW_ONJYZF_ZJONM_HMGZYM_ND S OF 37.40 6 OR 7. SLGT OR\nMOD\nSOUTH EVVOIKOS\nN NE 7 OR 8 SOON N 6. MOD OR ROUGH. LO_\n_Y_OYONV__YPJMJH_FHONMPM_FMG\nPY_O POOR. CHANCE OF\nTHUNDERSTORM\nCENTRAL A__ AND W OF 25.40 7 OR 8 SOON 6\nOR 7. ROUGH. LOC POOR\nOUTLOOK FOR THE NXT 1\n_$+:6*9,'+/._'_._!2*.+_06.26!_!_.2.0'__._+!!!(_____Z_ZC JB20\n252039 UTC MAR\nBALTIC SEAVOPHM_YF_JONONGPYM_S_M_YF_ONONG_PJHPYMLSHF_W 14-17 M/S. OVERNIGHT THURSDAY DECR.\nSOUTHERN BALTICEC SW 14-17 M/S. THURSDAY MORNING DECR.\nSOUTHEASTERN BALTIC: SW 14-17 M/S9 \n_MORNING DECR.\nCENTRAL BALTIC: S-SW 14-17 M/S. OVERNIGHT THURJ_M_X___ONGONNIII_ZCZC",
    "clean_text": "ZCZC HA60\n140945 UTCNMAR 26\nIRAKLEIO RADIO NAVWARN 209/26\n_'_7_. 3-'534, 03)909,,3'3\n8-:9,8-, _7)!_\n3/34:8'3' _6 _3))3,8: ,-=6\n!49. 151500 UTC MAR 26 UNTIL GQT\nCQ_C SEP 26\nIN AREA BOUNDED BY:\n36 40.70N - 022 40.60E\n36 33.40N _W_RGE\n36 26.78N _A PWW RO_TP K\nF_PQFCEEP\nQ_Z_DJU_XVPJKEV\n__MSLC_TMPTUBKU_$_ 2! 26.30 N S_ W UP TO ROUGH. LHC\nPOOR. THUNDERSTORM_\nK_FTPZS_MJPONVMPM_PMTC_OR 4 LATER _W\nCFMH_M\nHOMG_S_\nBMG. THUNDELSTORM\nRODOS SEA\nVRB OR 4 SOON N NW. _70 59 ')_5. C_ANCE\nOF TH_ODERSTO_M\nKA_PATHIO\nN NE 4 OR _._*++_-._4858_)\n, :O_VQI SOON 7. ROULH\nOMPOOR_MO__THUNDERSTO_M\n_ADTIKO\nN NW 5\n,+6=__._*++_.__9$ 94 497__.._34'594.\n'975_23'5 -3_3-\n, 28 SOON 7__R 8 DECR. ROUGH. LOC POOR.\nCHANCE OF THUNDERSTORM\nSOUTHEAST AEGEAN IKARIO\nE OF -6.00 N NE 5 OR 6 ARD W OF 26.00 N\n7 OR 8 AND Y OF 2__6.00\n7 OR 8 DECR. MOD OF\nO_WO. LOC POOR.\nCHANFE OF THUNDERSTZY_ON__ZJMJPONMPM_HMGZ_M_SOON D\nZJ 37.20 6 OR 7. MOD.\nCHSNCE OF TDCYWMYJ_ZW_ONJYZF_ZJONM_HMGZYM_ND S OF 37.40 6 OR 7. SLGT OR\nMOD\nSOUTH EVVOIKOS\nN NE 7 OR 8 SOON N 6. MOD OR ROUGH. LO_\n_Y_OYONV__YPJMJH_FHONMPM_FMG\nPY_O POOR. CHANCE OF\nTHUNDERSTORM\nCENTRAL A__ AND W OF 25.40 7 OR 8 SOON 6\nOR 7. ROUGH. LOC POOR\nOUTLOOK FOR THE NXT 1\n_$+:6*9,'+/._'_._!2*.+_06.26!_!_.2.0'__._+!!!(_____Z_ZC JB20\n252039 UTC MAR\nBALTIC SEAVOPHM_YF_JONONGPYM_S_M_YF_ONONG_PJHPYMLSHF_W 14-17 M/S. OVERNIGHT THURSDAY DECR.\nSOUTHERN BALTICEC SW 14-17 M/S. THURSDAY MORNING DECR.\nSOUTHEASTERN BALTIC: SW 14-17 M/S9\n_MORNING DECR.\nCENTRAL BALTIC: S-SW 14-17 M/S. OVERNIGHT THURJ_M_X___ONGONNIII_ZCZC",
    "resolved_station_name": "Irakleio",
    "resolved_country": "Greece",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Eastern Mediterranean and Crete",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "IRAKLEIO"
    ],
    "display_region_heading": "Greece - Eastern Mediterranean and Crete",
    "display_region_label": "Irakleio, Greece",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Greece - Eastern Mediterranean and Crete. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Poor. thunderstorm",
      "Chance of thunderstorm",
      "Thunderstorm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-03-25 23:09:53 AREA: G",
    "published_at": "2026-03-25 23:09:53",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130_2_!945_.\nNEART NA GAOITHE WI\nW__Q\nGO\n___3__9'=8_::_-_:__1__7_5_/._+_=7-+_7+3_,_\n_0+'METHONI'\nFIRIN_ PRACTICE RE_TM\nQM AIRCRAFTS FIRI_ _\n_:8'3!_8 = !49. 01 JAN 26 TO 31 DEC 26\n   I) FROMTSUNRISE TO SUNSET EVECY_AY\n   II) FROM SUNRISE TO_2100 UTC EVER_\n       TUESDAY, WEDNESDAY AND THURSDAY\n   III) FROM SUNRISE TO 1000 UTC EVERY \n     \n __IDAY \n   IN AREA BOUNDED BY:\n   A. 36-48.00N QPWQARPMPPE\n   B. 36-48.00N 021-50.00E\n   C. 36-42.00N 021-54.00E\n   D. 36-31.00N 022-13.00_09,...0_21.50N 022-04.50E\n   F. _021-40.00E\nCAUTION ADVISED\n2. CANCEL THI_\nFM\n_ UUMGVHMMWPM\n_EZV__ONNIII_ZCZC",
    "clean_text": "ZCZC GA73\nWZ 130_2_!945_.\nNEART NA GAOITHE WI\nW__Q\nGO\n___3__9'=8_::_-_:__1__7_5_/._+_=7-+_7+3_,_\n_0+'METHONI'\nFIRIN_ PRACTICE RE_TM\nQM AIRCRAFTS FIRI_ _\n_:8'3!_8 = !49. 01 JAN 26 TO 31 DEC 26\nI) FROMTSUNRISE TO SUNSET EVECY_AY\nII) FROM SUNRISE TO_2100 UTC EVER_\nTUESDAY, WEDNESDAY AND THURSDAY\nIII) FROM SUNRISE TO 1000 UTC EVERY\n\n__IDAY\nIN AREA BOUNDED BY:\nA. 36-48.00N QPWQARPMPPE\nB. 36-48.00N 021-50.00E\nC. 36-42.00N 021-54.00E\nD. 36-31.00N 022-13.00_09,...0_21.50N 022-04.50E\nF. _021-40.00E\nCAUTION ADVISED\n2. CANCEL THI_\nFM\n_ UUMGVHMMWPM\n_EZV__ONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Firin practice re tm",
      "I) fromtsunrise to sunset evecy ay",
      "Ii) from sunrise to 2100 utc ever"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 20,
    "heading": "2026-03-25 23:09:28 AREA: G",
    "published_at": "2026-03-25 23:09:28",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31._,, 001-33.5E TEMPORAR_LY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31._,, 001-33.5E TEMPORAR_LY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31. ,, 001-33.5e temporar ly removed.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31. ,, 001-33.5e temporar ly removed",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 21,
    "heading": "2026-03-25 23:09:05 AREA: G",
    "published_at": "2026-03-25 23:09:05",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUD_ SOUTDMLCZ_EAQWMTN 001-25.6E USFH_\nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUD_ SOUTDMLCZ_EAQWMTN 001-25.6E USFH_\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon wind farm.",
    "decoded_highlights": [
      "Dudgeon wind farm",
      "Dud soutdmlcz eaqwmtn 001-25.6e usfh"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 22,
    "heading": "2026-03-25 23:08:28 AREA: G",
    "published_at": "2026-03-25 23:08:28",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK W_M_YB_\n1. TURB_N_ JZ_MJF_SJMFZ_PYHF_PI_KK\nXMONG_D01, 53-20.1N 000-49.1E. \nB. S_53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK W_M_YB_\n1. TURB_N_ JZ_MJF_SJMFZ_PYHF_PI_KK\nXMONG_D01, 53-20.1N 000-49.1E.\nB. S_53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Xmong d01, 53-20.1n 000-49.1e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Xmong d01, 53-20.1n 000-49.1e",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-03-25 23:07:26 AREA: G",
    "published_at": "2026-03-25 23:07:26",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD. \nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 24,
    "heading": "2026-03-25 23:07:02 AREA: G",
    "published_at": "2026-03-25 23:07:02",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICENF_OM CULLERCO\nJMJF_LV_HH_II_KYBYG_M\n_ UC__GUMZ_._6_\nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICENF_OM CULLERCO\nJMJF_LV_HH_II_KYBYG_M\n_ UC__GUMZ_._6_\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t servicenf om cullerco",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 25,
    "heading": "2026-03-25 23:06:37 AREA: G",
    "published_at": "2026-03-25 23:06:37",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SILE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SILE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey sile 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 26,
    "heading": "2026-03-25 23:06:10 AREA: G",
    "published_at": "2026-03-25 23:06:10",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND _YB_TURBINE B10 55-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND _YB_TURBINE B10 55-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 55-06.8N 001-23.6W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Blyth offshore demonstrator wind yb turbine b10 55-06.8n 001-23.6w unlit and fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 27,
    "heading": "2026-03-25 23:05:38 AREA: G",
    "published_at": "2026-03-25 23:05:38",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBV___MONGSP_M_JM_FP_W_\n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBV___MONGSP_M_JM_FP_W_\n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-03-25 23:05:13 AREA: G",
    "published_at": "2026-03-25 23:05:13",
    "area": "G",
    "message_id": "GA03",
    "text": "ZCZC GA03\nWZ _W_RXWY\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET HEAD SITE \n-40_3N 003-22.6W OFF AIR.\nNNNN",
    "clean_text": "ZCZC GA03\nWZ _W_RXWY\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET HEAD SITE\n-40_3N 003-22.6W OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Vhf dsc services from dunnet head site",
      "Gmdss. mrcc shetland",
      "-40 3n 003-22.6w off air"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 29,
    "heading": "2026-03-25 23:04:42 AREA: G",
    "published_at": "2026-03-25 23:04:42",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2_2 9!!_!6_2. CANCEL WZ 213/26 (GA80).\n,_9,,888_ZCZC",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2_2 9!!_!6_2. CANCEL WZ 213/26 (GA80).\n,_9,,888_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2 2 9!! !6 2. cancel wz 213/26 (ga80)",
      "Mrcc shetland"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 30,
    "heading": "2026-03-25 23:04:12 AREA: G",
    "published_at": "2026-03-25 23:04:12",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA50'_9,_9,,888ZCZC",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA50'_9,_9,,888ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 53-11.9N 002-29.1E.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "2. cancel wz 104/26 (ga50' 9, 9,,888zczc",
      "Bessemer gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 31,
    "heading": "2026-03-25 23:03:49 AREA: G",
    "published_at": "2026-03-25 23:03:49",
    "area": "G",
    "message_id": "GA10",
    "text": "ZCZC GA10\nWZ 230/26 \nFAIR ISLE. \nROVA HEAD LIGHTHOUSE 60-11.5N 001-08.6W SECTOR LIGHTS UNRELIABLE. \nNNNN",
    "clean_text": "ZCZC GA10\nWZ 230/26\nFAIR ISLE.\nROVA HEAD LIGHTHOUSE 60-11.5N 001-08.6W SECTOR LIGHTS UNRELIABLE.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text reports an aid-to-navigation fault near 60-11.5N 001-08.6W.",
    "decoded_highlights": [
      "Rova head lighthouse 60-11.5n 001-08.6w sector lights unreliable",
      "Fair isle"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 32,
    "heading": "2026-03-25 23:03:23 AREA: G",
    "published_at": "2026-03-25 23:03:23",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nDI_LP__\nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPEYHF\nP_BONGONNIII_ZCZC",
    "clean_text": "ZCZC GA12\nWZ 232/26\nDI_LP__\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPEYHF\nP_BONGONNIII_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform southwark 53-11.0n 002-05.8e unlit and all navaids inopeyhf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e unlit and all navaids inopeyhf",
      "Inner bank",
      "P bongonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-03-25 23:00:16 AREA: G",
    "published_at": "2026-03-25 23:00:16",
    "area": "G",
    "message_id": "GE89",
    "text": "ZCZC GE89\nISSUED BY THE MET OFFICE AT 2100 ON WED 25 MAR\n\n\nGALE WARNINGS: VIKING FORTIES __ZM_\nY_GER FAIR ISLEONONGHDPM_P_YKEBQTEXKD__($_78(1__*-(91:ULB_XR__AQ__EB_\n___7____6 _6 .8$$-6 59.94492. HIGH ATLANTIC 1036 DISSIPATING BY SAME TIME\n\n24-HR FORECASTS\n\nVIKING\nN_ 7 TO SEV GAL_ 9, DECR 5 TO 7 LTR. HIGH BECMG ROUGH OR VERY ROUGH LTR. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nFORTIES CROMARTY FORTH TYNE DOGGER\nNW 5 TO 7, OCNL GALE 8 UNTIL LTR EXCEPT IN FORTH AND TYNE. IN FORTIES AND DOGGER, ROUGH OR VERY ROUGH, OCNL HIGH AT FIRST. ELSEWHERE, ROUGH OR VERY ROUGH, BECMG MOD OR ROUGH LTR. SQUALLY WINTRY SHWRS. GOOK_\n_CNL POOR\n\nHUMBER THAMES\nNW 5 TO 7. IN THAMES, _.+2.+6.6+:$_._0'*0_$060.6+:_$.+6._08_8(63.6_:$_._)0/___ !94 - 58.3 8, , _34.-, _8__5. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nFAIR ISLE\nNW 7 TO SEV GALE 9, BECMG CYCLONIC 4 TO 6, THEN S OR SE 6 TO GALE 8 LTR, OCNL SEV GALE 9 LTR IN SE ICELAND. VERY ROUGH OR HIGH, BECMG ROUGH OR VE_DMY_CD_BMTJ_CUSEM_FI I_Y SHWRS, RAIN LTR. GOOD, OF_SM_ZZYONONGZCHSZZVM'7__76._$+:6*_GALES EXP IN VIKING AND FAIR ISLE. STRG WINDS EXP IN ALL OTHER AREAS \nNNNN",
    "clean_text": "ZCZC GE89\nISSUED BY THE MET OFFICE AT 2100 ON WED 25 MAR\n\nGALE WARNINGS: VIKING FORTIES __ZM_\nY_GER FAIR ISLEONONGHDPM_P_YKEBQTEXKD__($_78(1__*-(91:ULB_XR__AQ__EB_\n___7____6 _6 .8$$-6 59.94492. HIGH ATLANTIC 1036 DISSIPATING BY SAME TIME\n\n24-HR FORECASTS\n\nVIKING\nN_ 7 TO SEV GAL_ 9, DECR 5 TO 7 LTR. HIGH BECMG ROUGH OR VERY ROUGH LTR. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nFORTIES CROMARTY FORTH TYNE DOGGER\nNW 5 TO 7, OCNL GALE 8 UNTIL LTR EXCEPT IN FORTH AND TYNE. IN FORTIES AND DOGGER, ROUGH OR VERY ROUGH, OCNL HIGH AT FIRST. ELSEWHERE, ROUGH OR VERY ROUGH, BECMG MOD OR ROUGH LTR. SQUALLY WINTRY SHWRS. GOOK_\n_CNL POOR\n\nHUMBER THAMES\nNW 5 TO 7. IN THAMES, _.+2.+6.6+:$_._0'*0_$060.6+:_$.+6._08_8(63.6_:$_._)0/___ !94 - 58.3 8, , _34.-, _8__5. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nFAIR ISLE\nNW 7 TO SEV GALE 9, BECMG CYCLONIC 4 TO 6, THEN S OR SE 6 TO GALE 8 LTR, OCNL SEV GALE 9 LTR IN SE ICELAND. VERY ROUGH OR HIGH, BECMG ROUGH OR VE_DMY_CD_BMTJ_CUSEM_FI I_Y SHWRS, RAIN LTR. GOOD, OF_SM_ZZYONONGZCHSZZVM'7__76._$+:6*_GALES EXP IN VIKING AND FAIR ISLE. STRG WINDS EXP IN ALL OTHER AREAS\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "DOGGER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention gales, ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nw 5 to 7, ocnl gale 8 until ltr except in forth and tyne. in forties and dogger, rough or very rough, ocnl high at first. elsewhere, rough or very rough, becmg mod or rough ltr. squally wintry shwrs. gook",
      "Nw 7 to sev gale 9, becmg cyclonic 4 to 6, then s or se 6 to gale 8 ltr, ocnl sev gale 9 ltr in se iceland. very rough or high, becmg rough or ve dmy cd bmtj cusem fi i y shwrs, rain ltr. good, of sm zzyonongzchszzvm'7 76. $ :6 gales exp in viking and fair isle. strg winds exp in all other areas",
      "Gale warnings: viking forties zm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 36,
    "heading": "2026-03-25 22:43:49 AREA: E",
    "published_at": "2026-03-25 22:43:49",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\nWZ 192/26 \nSCWE_\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC EA27\nWZ 192/26\nSCWE_\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lavernock spit buoy 51-23.0n 003-10.8w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 38,
    "heading": "2026-03-25 22:40:15 AREA: E",
    "published_at": "2026-03-25 22:40:15",
    "area": "E",
    "message_id": "EE70",
    "text": "ZCZC EE70\nISSUED BY THE MET OFFICE AT 1900 ON WED 25 MAR\n\n\nGALE WARNINGS: FITZROY\n\nTHE GENERAL SITUATION AT MIDDAY\nLOW SWEDEN 974 LOSING ITS IDENTITY BY MIDDAY TOMORROW. HIGH ATLANTIC 1036 DISSIPATING BY SAME _F_PONON_HR FORECASTS\n\nTHAMES\nNW 5 TO 7. IN THAMES, MOD OR ROUGH, ELSEWHERE ROUGH OR VERY ROUGH, BECMG HIGH FOR A TIME IN N GERMAN BIGHT. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nDOVER WIGHT PORTLAND PLYMOUTH\nNW 6 OR 7._20_6.\n0.__+.__8_8_____+2.+6.6+:$_._+_'._063.6-_32_:$__31__)_-3_*(-()_8:6_7__8_84___80_62)6)8::+__,+_4_______0)6.975_. SHWRS. GOOD\n\nBISCAY\nNW 4 TO 6, VEER N 3 TO 5. VERY ROUGH BECMG ROUGH, OCNL MOD LTR IN E. SHWRS. GOOD\n\nS FITZROY\nNE 6 TO GALE 8. ROUGH OR VERY ROUGH. FAIR. GOOD\n\nN FITZROY SOLE\nNW BAC_CJUMF_M_E TO 5 ,OCNL _ AT FIRST IN E. VERY ROUGH, BECMG ROUGH LTR. FAIR. GOOD\n\nLUNDY FASTNET\nNW 5 TO 7, OCNL GALE 8 AT FIRST INMFYFJDMJPIIIK\nMGL_VMUMZYMJUMS_MG_ZM_HMGSHY_IN IRISH SEA, MOD OR ROUGH BECMG SLT OR MOD LTR, ELSEWHERE ROUGH OR VERY ROUGH_MGLPX_LT OR MOD LTR EXCEPT IN SW FASTNETQM _WINTR_MSD_YJ\n_MGZZW_M_Z_SM_ZZYIII_\nOUTLOOK FLW TA_ XZOURS:\nGALES EXP IN FITZROY. STRG WINDS EXP IN THAMES AND DOVER\nNNNN",
    "clean_text": "ZCZC EE70\nISSUED BY THE MET OFFICE AT 1900 ON WED 25 MAR\n\nGALE WARNINGS: FITZROY\n\nTHE GENERAL SITUATION AT MIDDAY\nLOW SWEDEN 974 LOSING ITS IDENTITY BY MIDDAY TOMORROW. HIGH ATLANTIC 1036 DISSIPATING BY SAME _F_PONON_HR FORECASTS\n\nTHAMES\nNW 5 TO 7. IN THAMES, MOD OR ROUGH, ELSEWHERE ROUGH OR VERY ROUGH, BECMG HIGH FOR A TIME IN N GERMAN BIGHT. SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nDOVER WIGHT PORTLAND PLYMOUTH\nNW 6 OR 7._20_6.\n0.__+.__8_8_____+2.+6.6+:$_._+_'._063.6-_32_:$__31__)_-3_*(-()_8:6_7__8_84___80_62)6)8::+__,+_4_______0)6.975_. SHWRS. GOOD\n\nBISCAY\nNW 4 TO 6, VEER N 3 TO 5. VERY ROUGH BECMG ROUGH, OCNL MOD LTR IN E. SHWRS. GOOD\n\nS FITZROY\nNE 6 TO GALE 8. ROUGH OR VERY ROUGH. FAIR. GOOD\n\nN FITZROY SOLE\nNW BAC_CJUMF_M_E TO 5 ,OCNL _ AT FIRST IN E. VERY ROUGH, BECMG ROUGH LTR. FAIR. GOOD\n\nLUNDY FASTNET\nNW 5 TO 7, OCNL GALE 8 AT FIRST INMFYFJDMJPIIIK\nMGL_VMUMZYMJUMS_MG_ZM_HMGSHY_IN IRISH SEA, MOD OR ROUGH BECMG SLT OR MOD LTR, ELSEWHERE ROUGH OR VERY ROUGH_MGLPX_LT OR MOD LTR EXCEPT IN SW FASTNETQM _WINTR_MSD_YJ\n_MGZZW_M_Z_SM_ZZYIII_\nOUTLOOK FLW TA_ XZOURS:\nGALES EXP IN FITZROY. STRG WINDS EXP IN THAMES AND DOVER\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "LUNDY",
      "PORTLAND"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention gales, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ne 6 to gale 8. rough or very rough. fair. good",
      "Nw 5 to 7, ocnl gale 8 at first inmfyfjdmjpiiik",
      "Gales exp in fitzroy. strg winds exp in thames and dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 39,
    "heading": "2026-03-25 21:56:35 AREA: X",
    "published_at": "2026-03-25 21:56:35",
    "area": "X",
    "message_id": "",
    "text": "ZCZC XT03_\n107_00 TC MAR 25\n__ZQ__T_QAWS ZKIKLWF_\n6+(2_1+7_.18+__'_!85(4\n____ 8TERMONNE_ORM_ OPK AE_N_\n ANEQBR_UJ_THE CAL_MFM_HAAN 004-08.69W\nI48-45.64FV_PMRAQPMPEW\n 48__5.8-N XPIRAQPMUPUA\n _8-,5_8_6!26$____!/\n_$_17_+6__+, 2_22_3__2(_-_2+-!__+:+: (_79\n252000 UTC MAR 26\nKERKYRA RADIO/GALE WARNING\nGALE WARNING ON METAREA 3\nHELLENIC NATIONAL MET. SERVICE\nWARNING NR 233..__020*23._7_9(3_/2200 UTC\nGENERAL SYNOPSIS 25-03-26/15 UTC\nEXTENDED LOW WITH CENTRE 1000 OVER W\nTA YCJMFJMBZ_MJ__EASTWARDS AND IS EXP BY 25/21 UTC WITH\nCENTRE 999 OVER CRUSADE.\nLOW PRESSURES 1007 OVER E BLACK SEA AND\nHIGH 1022 OVER TUNISIA.\nLOUMAFHD___OHSM_HF\nFHEMN_B_YPON_ZZEMGFJM_T_ER GULF OF\nGENOA BY 25/21 UTC\nN ADRIATIC\nFM 26/01 AT LEAST TO 26/10 UTF\nCYCLONIC 8 OR 9\nCENTRAL ADRIATIC\nFM 26/04 __.'0*_._+.\n735 _G_H_BT_NIC 7 OR 8 OVER N W NW 8 OR 9\nNNMONNIII_B_M_COAGABQ__U__KAM_\nEASTWARDSANA IS JXIK_ __\n:3$543__99) OVTTN 2__21=_75:\n:6:__0\n_=_ZCZC",
    "clean_text": "ZCZC XT03_\n107_00 TC MAR 25\n__ZQ__T_QAWS ZKIKLWF_\n6+(2_1+7_.18+__'_!85(4\n____ 8TERMONNE_ORM_ OPK AE_N_\nANEQBR_UJ_THE CAL_MFM_HAAN 004-08.69W\nI48-45.64FV_PMRAQPMPEW\n48__5.8-N XPIRAQPMUPUA\n_8-,5_8_6!26$____!/\n_$_17_+6__+, 2_22_3__2(_-_2+-!__+:+: (_79\n252000 UTC MAR 26\nKERKYRA RADIO/GALE WARNING\nGALE WARNING ON METAREA 3\nHELLENIC NATIONAL MET. SERVICE\nWARNING NR 233..__020*23._7_9(3_/2200 UTC\nGENERAL SYNOPSIS 25-03-26/15 UTC\nEXTENDED LOW WITH CENTRE 1000 OVER W\nTA YCJMFJMBZ_MJ__EASTWARDS AND IS EXP BY 25/21 UTC WITH\nCENTRE 999 OVER CRUSADE.\nLOW PRESSURES 1007 OVER E BLACK SEA AND\nHIGH 1022 OVER TUNISIA.\nLOUMAFHD___OHSM_HF\nFHEMN_B_YPON_ZZEMGFJM_T_ER GULF OF\nGENOA BY 25/21 UTC\nN ADRIATIC\nFM 26/01 AT LEAST TO 26/10 UTF\nCYCLONIC 8 OR 9\nCENTRAL ADRIATIC\nFM 26/04 __.'0*_._+.\n735 _G_H_BT_NIC 7 OR 8 OVER N W NW 8 OR 9\nNNMONNIII_B_M_COAGABQ__U__KAM_\nEASTWARDSANA IS JXIK_ __\n:3$543__99) OVTTN 2__21=_75:\n:6:__0\n_=_ZCZC",
    "resolved_station_name": "Kerkyra",
    "resolved_country": "Greece",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Ionian Sea and western Greece",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "KERKYRA"
    ],
    "display_region_heading": "Greece - Ionian Sea and western Greece",
    "display_region_label": "Kerkyra, Greece",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Greece - Ionian Sea and western Greece. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Kerkyra radio/gale warning",
      "Gale warning on metarea 3",
      "Warning nr 233.. 020 23. 7 9(3 /2200 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-03-25 21:43:22 AREA: W",
    "published_at": "2026-03-25 21:43:22",
    "area": "W",
    "message_id": "WA03",
    "text": "ZCZC WA03\nAVURNAV TOULON 1'+_26\nCORSE - ELBE - LIGURE - LION - MADDAHP_M_MG_YZ\nPXPM\nM_JYWCD\nBKBH_3//__KBH_K_E_JB\nEF_Y_KTCQ_ 121A_ _2-42.3=NCPPYAPEMW_E\n 4_-03.71N _05-169KQBZ__OFC_CND_BHMEO__ E_CQ_ZONE ENSEIGNEMENT BOUNDED BY :\n 43-46.80N PC_C_PPE/43-39.20N 007-36.10E\n \nPPN 007-37.40E/43-34.00N 007-34.70E\n 43-00.60N 007-49.60E/42-57.90N 007-44.60E\n 42-59.80N 007-43.40/3_-06.20N 006-55.00E\n 43-32.00N 0065__ '_09,._!2_.)06_$.60_:0*_029,\n_:-,:3) 5_8' .'_ 300059 UTC MAR 26NNNN",
    "clean_text": "ZCZC WA03\nAVURNAV TOULON 1'+_26\nCORSE - ELBE - LIGURE - LION - MADDAHP_M_MG_YZ\nPXPM\nM_JYWCD\nBKBH_3//__KBH_K_E_JB\nEF_Y_KTCQ_ 121A_ _2-42.3=NCPPYAPEMW_E\n4_-03.71N _05-169KQBZ__OFC_CND_BHMEO__ E_CQ_ZONE ENSEIGNEMENT BOUNDED BY :\n43-46.80N PC_C_PPE/43-39.20N 007-36.10E\n\nPPN 007-37.40E/43-34.00N 007-34.70E\n43-00.60N 007-49.60E/42-57.90N 007-44.60E\n42-59.80N 007-43.40/3_-06.20N 006-55.00E\n43-32.00N 0065__ '_09,._!2_.)06_$.60_:0*_029,\n_:-,:3) 5_8' .'_ 300059 UTC MAR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: 43-46.80n pc c ppe/43-39.20n 007-36.10e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "43-46.80n pc c ppe/43-39.20n 007-36.10e",
      "Corse - elbe - ligure - lion - maddahp m mg yz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 41,
    "heading": "2026-03-25 21:42:07 AREA: W",
    "published_at": "2026-03-25 21:42:07",
    "area": "W",
    "message_id": "WA06",
    "text": "ZCZC WA06\nAVURN_V TOULON_( ___9,_'!+_._(/_(_30__(97QHCEUZZQ_ OPERATION_\n1. SCIENTIFIC SURVEY\n UNTIL 312359 UTC MAR 26\n SCIENTIFIC SURVEY BY MV BLUE M (MMSN __ _\n AREA BOUNDED BY :\n 43-10.11N 003-56.61E/42-58.97N 004-07.17EONM\nY_H_OYPGM\nD3(_34__HECCEG_)9CRXK_,_42-50.87N 003-38.93E/43-00.59N 003-42.46E\nVIL\n WIDE T___EQUESTED\n2. CANCEL AVURNAV H_C_B_PIXWY\nEM CANCEL THIS MSG 010059 UTC APR 26NNNN",
    "clean_text": "ZCZC WA06\nAVURN_V TOULON_( ___9,_'!+_._(/_(_30__(97QHCEUZZQ_ OPERATION_\n1. SCIENTIFIC SURVEY\nUNTIL 312359 UTC MAR 26\nSCIENTIFIC SURVEY BY MV BLUE M (MMSN __ _\nAREA BOUNDED BY :\n43-10.11N 003-56.61E/42-58.97N 004-07.17EONM\nY_H_OYPGM\nD3(_34__HECCEG_)9CRXK_,_42-50.87N 003-38.93E/43-00.59N 003-42.46E\nVIL\nWIDE T___EQUESTED\n2. CANCEL AVURNAV H_C_B_PIXWY\nEM CANCEL THIS MSG 010059 UTC APR 26NNNN",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code W. Readable text points to a scientific survey area near 43-10.11N 003-56.61E; 43-00.59N 003-42.46E and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Scientific survey by mv blue m (mmsn",
      "D3( 34 hecceg )9crxk , 42-50.87n 003-38.93e/43-00.59n 003-42.46e",
      "1. scientific survey"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 42,
    "heading": "2026-03-25 21:41:06 AREA: W",
    "published_at": "2026-03-25 21:41:06",
    "area": "W",
    "message_id": "",
    "text": "ZCZC WA09=+-539, :_-,_3'\n*_.  __:_-,_3\n '-8*59'- )8__5_97'3\n 8, 09'8989_ _:\n 41-33!52NN'__(CHART FR7162)\n _+8__5 _99( )__\n_'_$_3__106_\nHB_UQLCTHOUSE UNCERTAIN\nVHAZ_RZOUS TOV_AVIGLTION\n2._CANCEL THIS MSG 2-_529 UTC APR 26NNNN",
    "clean_text": "ZCZC WA09=+-539, :_-,_3'\n*_. __:_-,_3\n'-8*59'- )8__5_97'3\n8, 09'8989_ _:\n41-33!52NN'__(CHART FR7162)\n_+8__5 _99( )__\n_'_$_3__106_\nHB_UQLCTHOUSE UNCERTAIN\nVHAZ_RZOUS TOV_AVIGLTION\n2._CANCEL THIS MSG 2-_529 UTC APR 26NNNN",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code W. Readable text says: 2. cancel this msg 2- 529 utc apr 26nnnn. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel this msg 2- 529 utc apr 26nnnn",
      "41-33!52nn' (chart fr7162)",
      "Hb uqlcthouse uncertain"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-03-25 21:38:08 AREA: N",
    "published_at": "2026-03-25 21:38:08",
    "area": "N",
    "message_id": "NB46",
    "text": "ZCZC NB46\n251920 UTC MAR 26\nNORWEGIAN GALE WARNING NO 208\n  HALTEN - ROERVIK\nFROM THURSDAY AFT_CNOON NORTHWEST GALE FORCE 8, LATE THUISDAY EVENING DECREASING.\n\nNNNN",
    "clean_text": "ZCZC NB46\n251920 UTC MAR 26\nNORWEGIAN GALE WARNING NO 208\nHALTEN - ROERVIK\nFROM THURSDAY AFT_CNOON NORTHWEST GALE FORCE 8, LATE THUISDAY EVENING DECREASING.\n\nNNNN",
    "resolved_station_name": "Orlandet",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Norwegian Sea and central Norwegian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NORWEGIAN GALE WARNING"
    ],
    "display_region_heading": "Norway - Norwegian Sea and central Norwegian coast",
    "display_region_label": "Orlandet, Norway",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Norway - Norwegian Sea and central Norwegian coast. Readable text says: From thursday aft cnoon northwest gale force 8, late thuisday evening decreasing.",
    "decoded_highlights": [
      "From thursday aft cnoon northwest gale force 8, late thuisday evening decreasing",
      "Norwegian gale warning no 208",
      "Halten - roervik"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 44,
    "heading": "2026-03-25 21:37:07 AREA: T",
    "published_at": "2026-03-25 21:37:07",
    "area": "T",
    "message_id": "",
    "text": "ZCZ__LE74_\n8\n9-: G_ MJ_ZCZC",
    "clean_text": "ZCZ__LE74_\n8\n9-: G_ MJ_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 45,
    "heading": "2026-03-25 21:31:41 AREA: V",
    "published_at": "2026-03-25 21:31:41",
    "area": "V",
    "message_id": "VA58",
    "text": "ZCZC VA58\n61547 UTC FEB 26 \nWZ 122/*6_\nTGRBINE A06__1-4\n_8_\nCANCE__Z KIXWY K\nA_DOLM\nNNNN",
    "clean_text": "ZCZC VA58\n61547 UTC FEB 26\nWZ 122/*6_\nTGRBINE A06__1-4\n_8_\nCANCE__Z KIXWY K\nA_DOLM\nNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 46,
    "heading": "2026-03-25 21:31:12 AREA: V",
    "published_at": "2026-03-25 21:31:12",
    "area": "V",
    "message_id": "VA63",
    "text": "ZCZC VA63\n_081043 UTC MAR 26 \nWZ 183/2_5_-.3'. \nEAST ANGLIA ONE WIND FRMO \nTKRBIN_E G27, 52-09.8N 033.5E, FOG SIGNAL INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC VA63\n_081043 UTC MAR 26\nWZ 183/2_5_-.3'.\nEAST ANGLIA ONE WIND FRMO\nTKRBIN_E G27, 52-09.8N 033.5E, FOG SIGNAL INOPERATIVE.\nNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. Readable text reports a fog signal outage.",
    "decoded_highlights": [
      "Tkrbin e g27, 52-09.8n 033.5e, fog signal inoperative",
      "East anglia one wind frmo"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 51,
    "heading": "2026-03-25 21:17:40 AREA: T",
    "published_at": "2026-03-25 21:17:40",
    "area": "T",
    "message_id": "",
    "text": "ZCZC T_9+_ _ 6 3____TB_NGZZJHPWPYWFZM_JF_\nFU_TUD_N_LPMPPAONGD_WYZ_YDFXSMFJH_C_PHMPJHLIIIUHED IN POS 5127.375N 00222.-0_E \n_RKED\n_R_HIPPING IS\n_P_TED NOT TO FISHMZYMHZ__MDI_I_ITY\nNNNN",
    "clean_text": "ZCZC T_9+_ _ 6 3____TB_NGZZJHPWPYWFZM_JF_\nFU_TUD_N_LPMPPAONGD_WYZ_YDFXSMFJH_C_PHMPJHLIIIUHED IN POS 5127.375N 00222.-0_E\n_RKED\n_R_HIPPING IS\n_P_TED NOT TO FISHMZYMHZ__MDI_I_ITY\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: P ted not to fishmzymhz mdi i ity. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "P ted not to fishmzymhz mdi i ity",
      "Fu tud n lpmppaongd wyz ydfxsmfjh c phmpjhliiiuhed in pos 5127.375n 00222.-0 e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 52,
    "heading": "2026-03-25 21:16:59 AREA: T",
    "published_at": "2026-03-25 21:16:59",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n051111  H_MJ\nSM_ZJHPWPYWF_M_FARJ__TMRU_ \nAND 51-20.99\n_ 003-02_\n7!_,_/'_8008,_ 8' 4$1--__'_*--_\n/__/ _+__ZCZC",
    "clean_text": "ZCZC TA45\n051111 H_MJ\nSM_ZJHPWPYWF_M_FARJ__TMRU_\nAND 51-20.99\n_ 003-02_\n7!_,_/'_8008,_ 8' 4$1--__'_*--_\n/__/ _+__ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 55,
    "heading": "2026-03-25 21:15:12 AREA: T",
    "published_at": "2026-03-25 21:15:12",
    "area": "T",
    "message_id": "TA85",
    "text": "ZCZC TA85\n300828 UTC SEPMONGZZJHPWPYWFZM_JFM_PHE_NGLPMPPAMONGZLJH_SPJMZMHDPMJPM_A__FF_ POS 51-23.76N 0077+__+ _0.2.9,\n_ 70___:_.\n_U_WIYE\nANCHORING AND FISHING ARE PROHIBITED \nWTHIN DISTANCE OF 200M\nNNNN",
    "clean_text": "ZCZC TA85\n300828 UTC SEPMONGZZJHPWPYWFZM_JFM_PHE_NGLPMPPAMONGZLJH_SPJMZMHDPMJPM_A__FF_ POS 51-23.76N 0077+__+ _0.2.9,\n_ 70___:_.\n_U_WIYE\nANCHORING AND FISHING ARE PROHIBITED\nWTHIN DISTANCE OF 200M\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text says: Anchoring and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Anchoring and fishing are prohibited",
      "Wthin distance of 200m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-03-25 21:13:43 AREA: T",
    "published_at": "2026-03-25 21:13:43",
    "area": "T",
    "message_id": "TA02",
    "text": "ZCZC TA02\n082N_MG_H_MZ\nM_UYONGZZJHPWPYWFZM_JFM_HY__\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POS\n5115.938N  00258.482E\n5115.943N  00258.492E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA02\n082N_MG_H_MZ\nM_UYONGZZJHPWPYWFZM_JFM_HY__\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POS\n5115.938N 00258.482E\n5115.943N 00258.492E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text reports seabed obstacles and warns against anchoring or fishing nearby. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Obstacles on the seabed in following pos",
      "Shipping is requested not to anchor nor to fish in the vicinity",
      "Oostende-zeebrugge"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 58,
    "heading": "2026-03-25 21:13:10 AREA: T",
    "published_at": "2026-03-25 21:13:10",
    "area": "T",
    "message_id": "TA04",
    "text": "ZCZC TA04\n240834 UT_R\nOOSTENDERADIO MSI 119_26 \n_:9-_5-) 49753 - DE PANNE-OOSTENDE \nSPECIAL PURPOSE BU_Y_N, Y. FL 5S, 51-09_!_.\n_U_PE ESTA_LISHED \n\nNNNN",
    "clean_text": "ZCZC TA04\n240834 UT_R\nOOSTENDERADIO MSI 119_26\n_:9-_5-) 49753 - DE PANNE-OOSTENDE\nSPECIAL PURPOSE BU_Y_N, Y. FL 5S, 51-09_!_.\n_U_PE ESTA_LISHED\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Special purpose bu y n, y. fl 5s, 51-09 !. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Special purpose bu y n, y. fl 5s, 51-09 !",
      "9- 5-) 49753 - de panne-oostende",
      "Oostenderadio msi 119 26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-03-25 21:11:32 AREA: T",
    "published_at": "2026-03-25 21:11:32",
    "area": "T",
    "message_id": "TE50",
    "text": "ZCZC TE50\n2514910 UTC MAR\nOOSTENDERADIO WX 50_26\nTHAMES:\nNW 6-7, TONIGHT VEER NNW AND DECR TO 6. TOMORROW MORNING BACK NW.\nDOVER:\nNW 7, T_NIGHT VEER NNW AND DECR TO 6. TBMO__\nU \n_\n_HYUX_BELGIA_ COAST:\nNW 6-7, TONIGHT AND TOMORROW MORNING VEER NNW AD DECRMHZM\n_ALL AREAS:\nPARTLY CLOUDY TO CLOUDY WI_O (THUNDERY) SHWRS, ACCOMPAGNIED BY GUY_EGEBP_KRPNU__UA_L_ZCZC",
    "clean_text": "ZCZC TE50\n2514910 UTC MAR\nOOSTENDERADIO WX 50_26\nTHAMES:\nNW 6-7, TONIGHT VEER NNW AND DECR TO 6. TOMORROW MORNING BACK NW.\nDOVER:\nNW 7, T_NIGHT VEER NNW AND DECR TO 6. TBMO__\nU\n_\n_HYUX_BELGIA_ COAST:\nNW 6-7, TONIGHT AND TOMORROW MORNING VEER NNW AD DECRMHZM\n_ALL AREAS:\nPARTLY CLOUDY TO CLOUDY WI_O (THUNDERY) SHWRS, ACCOMPAGNIED BY GUY_EGEBP_KRPNU__UA_L_ZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Belgium - Belgian coast and southern North Sea. Readable text says: Nw 6-7, tonight veer nnw and decr to 6. tomorrow morning back nw. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nw 6-7, tonight veer nnw and decr to 6. tomorrow morning back nw",
      "Nw 7, t night veer nnw and decr to 6. tbmo",
      "Nw 6-7, tonight and tomorrow morning veer nnw ad decrmhzm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 61,
    "heading": "2026-03-25 21:10:21 AREA: T",
    "published_at": "2026-03-25 21:10:21",
    "area": "T",
    "message_id": "TF56",
    "text": "ZCZC TF56\n251838 UTC MAR\nOOSTENDERADIO MSI 126/_$9,_)0.00-9,__!'+_.*__!+._20'3,$3$ !94 -)) =3''3)' $73 59 _-$ 23-5_34\nREMOTE PILOTAGE\nFROM 18:30 UTC BY VTS-_+00)6:_59 _!)7'_8,_ 49-$'. MAX. LENGTH\n__METRES AND/OR MAX. DRAUGHT 8 _.3543'\nFOR RORO, PURE CAR CA_RIERS OR SIMILAR MAX. LENGTH 175 METERS.\n 5-:5 -,$ 8,!92-,$3)--4 -0049-:_ =_! 60 TWO HOURS BEFORE ARRIVAL OO_\nW LIGHTBUOY\nNNNN",
    "clean_text": "ZCZC TF56\n251838 UTC MAR\nOOSTENDERADIO MSI 126/_$9,_)0.00-9,__!'+_.*__!+._20'3,$3$ !94 -)) =3''3)' $73 59 _-$ 23-5_34\nREMOTE PILOTAGE\nFROM 18:30 UTC BY VTS-_+00)6:_59 _!)7'_8,_ 49-$'. MAX. LENGTH\n__METRES AND/OR MAX. DRAUGHT 8 _.3543'\nFOR RORO, PURE CAR CA_RIERS OR SIMILAR MAX. LENGTH 175 METERS.\n5-:5 -,$ 8,!92-,$3)--4 -0049-:_ =_! 60 TWO HOURS BEFORE ARRIVAL OO_\nW LIGHTBUOY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "pilot service notice",
    "subject_code": "F",
    "decoded_summary": "pilot service notice for Belgium - Belgian coast and southern North Sea. Readable text says: W lightbuoy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "W lightbuoy",
      "For roro, pure car ca riers or similar max. length 175 meters",
      "5-:5 -,$ 8,!92-,$3)--4 -0049-: ! 60 two hours before arrival oo"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 67,
    "heading": "2026-03-25 21:00:43 AREA: S",
    "published_at": "2026-03-25 21:00:43",
    "area": "S",
    "message_id": "SE15",
    "text": "ZCZC SE15\n251900 NAVTEX_AOLCY.(NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nWEDNESDAY:\nWIND: ZYHD_PJ_M_TO 7.\nVISIBILITY/WEATHER: SHOWER WITH MODERATE VISIBILITY.\nSEA: NORTHERN PART LATER 6 METER.\n9,888__74'$-6:\nWIND: NORTHWEST 6 TO 7, DECREASING SLOWLY 4.__+.,$___9_'*__0HHKNK_: AT TIMES RAIN- OR SNOW SHOWERS WITH MODERATE\nVISIBISFHE_SEA: NORTHERN PART FIRST 6 METER, OTHERWISE DECREASING 3 METER.\nNNNN",
    "clean_text": "ZCZC SE15\n251900 NAVTEX_AOLCY.(NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nWEDNESDAY:\nWIND: ZYHD_PJ_M_TO 7.\nVISIBILITY/WEATHER: SHOWER WITH MODERATE VISIBILITY.\nSEA: NORTHERN PART LATER 6 METER.\n9,888__74'$-6:\nWIND: NORTHWEST 6 TO 7, DECREASING SLOWLY 4.__+.,$___9_'*__0HHKNK_: AT TIMES RAIN- OR SNOW SHOWERS WITH MODERATE\nVISIBISFHE_SEA: NORTHERN PART FIRST 6 METER, OTHERWISE DECREASING 3 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: shower with moderate visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: shower with moderate visibility",
      "Weatherforecast for german bight",
      "Visibisfhe sea: northern part first 6 meter, otherwise decreasing 3 meter"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 68,
    "heading": "2026-03-25 21:00:16 AREA: S",
    "published_at": "2026-03-25 21:00:16",
    "area": "S",
    "message_id": "SB36",
    "text": "ZCZC SB36\n251900 NAVTEX-HAMBURG (NCC)\nWARNING NO. 104  251500UTC MAR\nFOR GERMAN BIGHT:\nNW 7 IMMINENT.\nNNNN",
    "clean_text": "ZCZC SB36\n251900 NAVTEX-HAMBURG (NCC)\nWARNING NO. 104 251500UTC MAR\nFOR GERMAN BIGHT:\nNW 7 IMMINENT.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Germany - German Bight and German North Sea. Readable text says: Warning no. 104 251500utc mar.",
    "decoded_highlights": [
      "Warning no. 104 251500utc mar",
      "251900 navtex-hamburg (ncc)",
      "For german bight"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 69,
    "heading": "2026-03-25 20:41:07 AREA: Q",
    "published_at": "2026-03-25 20:41:07",
    "area": "Q",
    "message_id": "QE48",
    "text": "ZCZC QE48\n\n251840 UTC MAR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 25/03/2026 AT 1700 UTC\n\n1. WARNING:\nLOC GU_T_NOF SE/SW, TOMORROW ON CENTRAL ADRIATIC ALSO NW 35-45 KT. FM MIDNIGHT ON N-ERN ADRIATIC GUSTS OF NE,OFFSHORE ALSO N 35-65 KT, LOC UP TO 80 KT. SEA LOC 5. LOC SUDDEN STORMS.\n\n2. SYNOPSIS:\nDEEP TROUGH IS SHIFTING ACROSS THE N-ERN ADRIATIC  SE-WARDS.\n\n3. FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 26/03/2026 AT 1700 UTC\n\nN-ERN ADRIATIC:\nSE, OFFSHORE ALSO SW 6-16, INCR ON 12-24 KT. IN THE MORNING ON N-ERN PA_TVM__BMBFW__MSJZMZMZHDPYM_E_QBDXE3___B_HORE N/NW 16-32, OFFSHORE AND IN VELEBITSKI KANAL TEMPO 22-42 KT.\nSEA INCR ON 3-4, FM MORNING OFFSHORE 4-5.\nVIS 10-20 KM.\nVRB-MOSTLY CLOUDY, FM MIDNIGHT WITH RAIN, POSS HEAVIER T-SHWRS.\n\nCENTRAL ADRIATIC:\nAT FIRST SW 4-14, LATER SE, OFFSHORE ALSO SW 6-16, FM MIDNF_DH_\n___ ON S-ERN PART UP TO 28 KT. ON N-ERN PART FM MORNING NW 12-24, OFFSHORE UP TO 28 KT. ON N-ERN PART FM MORNING NW 12-24, OFFSHORE UP TO 28 KT.\nSEA INCR ON 3-4, FM MORNING OFFSHORE 4-5.\nVIS 10-20 KM.\nMOSTLY CLEAR. OVERNIGHT BECMG CLOUDY, TOMORROW WITH RAIN POSS HEAVIER T-SHWRS.\n\nS-ERN ADRIATIC:9,__._!6*_.*7._,/39*(_EBQBH_HORE ALSO SW 6-16, IN THE MORNING 12-24 KT, BEFORE NOON UP TO 28 KT. IN THE AFTERNOON NW 12-24 KT.\nSEA 3-4, FM MORNING 4-5.\n__!*_\n__UM_VB_BO_G_ZJ_SEM_SP_Y_OVERNIGHT BE__G CLOUDY, TZ_ZY_ZUM_FHDMYFM_ZJJMDP_FPYMH_G_D_YJ\n__LHIIIIA_/ZCZC",
    "clean_text": "ZCZC QE48\n\n251840 UTC MAR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 25/03/2026 AT 1700 UTC\n\n1. WARNING:\nLOC GU_T_NOF SE/SW, TOMORROW ON CENTRAL ADRIATIC ALSO NW 35-45 KT. FM MIDNIGHT ON N-ERN ADRIATIC GUSTS OF NE,OFFSHORE ALSO N 35-65 KT, LOC UP TO 80 KT. SEA LOC 5. LOC SUDDEN STORMS.\n\n2. SYNOPSIS:\nDEEP TROUGH IS SHIFTING ACROSS THE N-ERN ADRIATIC SE-WARDS.\n\n3. FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 26/03/2026 AT 1700 UTC\n\nN-ERN ADRIATIC:\nSE, OFFSHORE ALSO SW 6-16, INCR ON 12-24 KT. IN THE MORNING ON N-ERN PA_TVM__BMBFW__MSJZMZMZHDPYM_E_QBDXE3___B_HORE N/NW 16-32, OFFSHORE AND IN VELEBITSKI KANAL TEMPO 22-42 KT.\nSEA INCR ON 3-4, FM MORNING OFFSHORE 4-5.\nVIS 10-20 KM.\nVRB-MOSTLY CLOUDY, FM MIDNIGHT WITH RAIN, POSS HEAVIER T-SHWRS.\n\nCENTRAL ADRIATIC:\nAT FIRST SW 4-14, LATER SE, OFFSHORE ALSO SW 6-16, FM MIDNF_DH_\n___ ON S-ERN PART UP TO 28 KT. ON N-ERN PART FM MORNING NW 12-24, OFFSHORE UP TO 28 KT. ON N-ERN PART FM MORNING NW 12-24, OFFSHORE UP TO 28 KT.\nSEA INCR ON 3-4, FM MORNING OFFSHORE 4-5.\nVIS 10-20 KM.\nMOSTLY CLEAR. OVERNIGHT BECMG CLOUDY, TOMORROW WITH RAIN POSS HEAVIER T-SHWRS.\n\nS-ERN ADRIATIC:9,__._!6*_.*7._,/39*(_EBQBH_HORE ALSO SW 6-16, IN THE MORNING 12-24 KT, BEFORE NOON UP TO 28 KT. IN THE AFTERNOON NW 12-24 KT.\nSEA 3-4, FM MORNING 4-5.\n__!*_\n__UM_VB_BO_G_ZJ_SEM_SP_Y_OVERNIGHT BE__G CLOUDY, TZ_ZY_ZUM_FHDMYFM_ZJJMDP_FPYMH_G_D_YJ\n__LHIIIIA_/ZCZC",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Croatia - Adriatic Sea. Readable text says: Vrb-mostly cloudy, fm midnight with rain, poss heavier t-shwrs. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vrb-mostly cloudy, fm midnight with rain, poss heavier t-shwrs",
      "Mostly clear. overnight becmg cloudy, tomorrow with rain poss heavier t-shwrs",
      "Weather bulletin for adriatic issued by the marine meteorological center split on 25/03/2026 at 1700 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 70,
    "heading": "2026-03-25 20:40:19 AREA: Q",
    "published_at": "2026-03-25 20:40:19",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\n251840 UTC MAR 26\nSPLIT RADIO\n\nCZJHSM_M__HPTONZYHDPYMWYFHFXM_MGSC_B_XJ_B_W_RD_OM:.0+___/_:_-3_/8_4_0__5_=_56 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "clean_text": "ZCZC QA01\n251840 UTC MAR 26\nSPLIT RADIO\n\nCZJHSM_M__HPTONZYHDPYMWYFHFXM_MGSC_B_XJ_B_W_RD_OM:.0+___/_:_-3_/8_4_0__5_=_56 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Croatia - Adriatic Sea. Readable text says: Czjhsm m hptonzyhdpymwyfhfxm mgsc b xj b w rd om:.0 / : -3 /8 4 0 5 56 44-52,55 n 013-47,77 e. navigation, anchoring and other activities in 150 meters radius from position prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Czjhsm m hptonzyhdpymwyfhfxm mgsc b xj b w rd om:.0 / : -3 /8 4 0 5 56 44-52,55 n 013-47,77 e. navigation, anchoring and other activities in 150 meters radius from position prohibited",
      "Split radio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 71,
    "heading": "2026-03-25 20:33:22 AREA: P",
    "published_at": "2026-03-25 20:33:22",
    "area": "P",
    "message_id": "PA96",
    "text": "ZCZC PA96\n29___5 UTC JAN 26\n=.*!._0!5_BUOY WP1 53-19N 004-03E TEMPORARILY WITHDRAWN.\nOBJECT  ON THE SEABED 53-19.3N 004-02.5E \nDANGEROUS TO SHIPPING\nCANCEL MSI 248/25\nNNNN",
    "clean_text": "ZCZC PA96\n29___5 UTC JAN 26\n=.*!._0!5_BUOY WP1 53-19N 004-03E TEMPORARILY WITHDRAWN.\nOBJECT ON THE SEABED 53-19.3N 004-02.5E\nDANGEROUS TO SHIPPING\nCANCEL MSI 248/25\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: !. 0!5 buoy wp1 53-19n 004-03e temporarily withdrawn. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "!. 0!5 buoy wp1 53-19n 004-03e temporarily withdrawn",
      "Object on the seabed 53-19.3n 004-02.5e",
      "Dangerous to shipping"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 77,
    "heading": "2026-03-25 20:24:17 AREA: O",
    "published_at": "2026-03-25 20:24:17",
    "area": "O",
    "message_id": "OE87",
    "text": "ZCZC OE87\nWX FORECAST 25/1600 TON_WYXPRPP UTC \nWRNG-NIL\nGEN SIT-A DEPRESSION OVER THE GULF OF GENOA WILL MOVE OVER NORTHERN ITALY \nWX-FINE BEC RATHER CLOUDY LATER AT NIGHT\nVIS-GOOD\nWIND-W NW F5 LOC F5 TO F6 AND BEC F5 OVERNIGHT\nSEA-MOD\nSWELL-LOW NE BEC NW Z\nPY_F_DHONONNKKKKKKKKKKKKKK_ZCZC",
    "clean_text": "ZCZC OE87\nWX FORECAST 25/1600 TON_WYXPRPP UTC\nWRNG-NIL\nGEN SIT-A DEPRESSION OVER THE GULF OF GENOA WILL MOVE OVER NORTHERN ITALY\nWX-FINE BEC RATHER CLOUDY LATER AT NIGHT\nVIS-GOOD\nWIND-W NW F5 LOC F5 TO F6 AND BEC F5 OVERNIGHT\nSEA-MOD\nSWELL-LOW NE BEC NW Z\nPY_F_DHONONNKKKKKKKKKKKKKK_ZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Wx forecast 25/1600 ton wyxprpp utc.",
    "decoded_highlights": [
      "Wx forecast 25/1600 ton wyxprpp utc",
      "Gen sit-a depression over the gulf of genoa will move over northern italy",
      "Wx-fine bec rather cloudy later at night"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 78,
    "heading": "2026-03-25 20:23:05 AREA: O",
    "published_at": "2026-03-25 20:23:05",
    "area": "O",
    "message_id": "OA25",
    "text": "ZCZC OA25\nCOASTAL WARNING NR 122/2'9,_*_6!_.+_.*!_!'3._._'_7'-\n7,58) -048) 15TH 2026, C/L MAAVSLIET IMO - 9996915\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLLOWING TRACK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 57 02.88N - 012 57 34.8E\n_KBOXOGKB_E\nSHINAV__ANSFHMLP_YPMWM_PPMMJG_HEMWFJH_PMZ_MZHMSPJJMHDM_M FROM THE ABOVE MENTIONED UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "clean_text": "ZCZC OA25\nCOASTAL WARNING NR 122/2'9,_*_6!_.+_.*!_!'3._._'_7'-\n7,58) -048) 15TH 2026, C/L MAAVSLIET IMO - 9996915\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLLOWING TRACK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 57 02.88N - 012 57 34.8E\n_KBOXOGKB_E\nSHINAV__ANSFHMLP_YPMWM_PPMMJG_HEMWFJH_PMZ_MZHMSPJJMHDM_M FROM THE ABOVE MENTIONED UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Coastal warning nr 122/2'9, 6! . . ! !'3. . ' 7'-. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning nr 122/2'9, 6! . . ! !'3. . ' 7'-",
      "Will carry out cable removal operations along the following track",
      "7,58) -048) 15th 2026, c/l maavsliet imo - 9996915"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 79,
    "heading": "2026-03-25 20:22:29 AREA: T",
    "published_at": "2026-03-25 20:22:29",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_MZ__IGATIONAL WARNING\nLOST ANCHOR AND CHAIN IN LOCAT_OMLC_PY__MYPMP_CHAIN IS LAID ALONG THE LINE_FROM 3557.1N 014-19E \nO 35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "clean_text": "ZCZ_MZ__IGATIONAL WARNING\nLOST ANCHOR AND CHAIN IN LOCAT_OMLC_PY__MYPMP_CHAIN IS LAID ALONG THE LINE_FROM 3557.1N 014-19E\nO 35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: Lost anchor and chain in locat omlc py mypmp chain is laid along the line from 3557.1n 014-19e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lost anchor and chain in locat omlc py mypmp chain is laid along the line from 3557.1n 014-19e",
      "O 35-57.2n 014-19.6e. keep a safe distance",
      "Zcz mz igational warning"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 80,
    "heading": "2026-03-25 20:20:18 AREA: O",
    "published_at": "2026-03-25 20:20:18",
    "area": "O",
    "message_id": "OA73",
    "text": "ZCZC OA73\nNTM NO 19/26\nTM_NOTIFIESNTHAT SEVERAL TYPES OF INVESTIGATIVE SURVEYS WILL BE CARRIED OUT FOR THE PROPOSED SECOND INTERCDNNECTOR BETWEEN MALTA AND SICILY.\n\nTHESE INVESTIGATIVE SURVEYS WILLML_NF_YFPWMZCHO_OD_NBBQPEUM!2._$0!6.7_!'_6_\n0 :!_PB___ONONG_PHDPYMFPYBFHHFYMSDPME__\nP_MMERCE ON SUNDAY 15 MARCH 28_ WMYPMHZMLPMP__PXHPWMHZMLPMXZKSPHPWMLQB__KEIKPBNN9)(09,::_)-__'$BGBSQ_3(_BBPX_BPOKGEJBSD_KU_,_233, 5_3 !9))928,_ 098,5',\n -_=-\n35-57._2(, 014-26.334E\n\nB - 36-02.029N _P_RAWIMTURE\nC WA EYAPYMPYQN 104-26.994E \nD - 36-14.439N 014-31.994_ \n_QV_\nPEUUUN 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION AND _ZM_FHFMMJ_PMWFJH_P\nZ.\nBHM_CHF_SM_FSPJM_R__DW _BQP_Q_ARE DETECTED OR SIGHTED.\nNNNN",
    "clean_text": "ZCZC OA73\nNTM NO 19/26\nTM_NOTIFIESNTHAT SEVERAL TYPES OF INVESTIGATIVE SURVEYS WILL BE CARRIED OUT FOR THE PROPOSED SECOND INTERCDNNECTOR BETWEEN MALTA AND SICILY.\n\nTHESE INVESTIGATIVE SURVEYS WILLML_NF_YFPWMZCHO_OD_NBBQPEUM!2._$0!6.7_!'_6_\n0 :!_PB___ONONG_PHDPYMFPYBFHHFYMSDPME__\nP_MMERCE ON SUNDAY 15 MARCH 28_ WMYPMHZMLPMP__PXHPWMHZMLPMXZKSPHPWMLQB__KEIKPBNN9)(09,::_)-__'$BGBSQ_3(_BBPX_BPOKGEJBSD_KU_,_233, 5_3 !9))928,_ 098,5',\n-_=-\n35-57._2(, 014-26.334E\n\nB - 36-02.029N _P_RAWIMTURE\nC WA EYAPYMPYQN 104-26.994E\nD - 36-14.439N 014-31.994_\n_QV_\nPEUUUN 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION AND _ZM_FHFMMJ_PMWFJH_P\nZ.\nBHM_CHF_SM_FSPJM_R__DW _BQP_Q_ARE DETECTED OR SIGHTED.\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Tm notifiesnthat several types of investigative surveys will be carried out for the proposed second intercdnnector between malta and sicily. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tm notifiesnthat several types of investigative surveys will be carried out for the proposed second intercdnnector between malta and sicily",
      "These investigative surveys willml nf yfpwmzcho od nbbqpeum!2. $0!6.7 !' 6",
      "Mariners are instructed to navigate with caution and zm fhfmmj pmwfjh p"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 81,
    "heading": "2026-03-25 19:40:50 AREA: K",
    "published_at": "2026-03-25 19:40:50",
    "area": "K",
    "message_id": "",
    "text": "ZCZC KA_8\nWIGHT - LARGE CAYEUX-SUR-..39\n_294('\nCABLE LAYING OPE__\n_ON\nFCMM 050000 UTC MAR 26\nUNTIL_FURTHER NOTICE\nNOVFIFZSNG, TRAWLING, DREDGING, ANCHORIG AND DIVING WITIN T_IS_A__AO\nAREA BOUNDED BY:\n5_10.84N 00_*29.44E\n_50*:!*!_'9*__'!_ :3,543 998 IS EXP OV_R\n__I_\nBQ OR _ OVE_\n_W_LGT\nOR M\nD\nSOUTH IZ_FZONM_YMGZYM_HM_JZZMMU\nZ\n_ZZWOKH_MVZJON_M__M_ZSMADIAKOS\nVRB 3 ORI4 SM_XF_YW__YTS_R 6!_$'\n_5\n(85_84-.!_\n! 22.30 N - _94 8 VERY\nZOON _\n__\nH_JXT_WAG__GBJ\nRXO__EB_VA_R_MA\nU_UU_WW_K\n__ZZCZC",
    "clean_text": "ZCZC KA_8\nWIGHT - LARGE CAYEUX-SUR-..39\n_294('\nCABLE LAYING OPE__\n_ON\nFCMM 050000 UTC MAR 26\nUNTIL_FURTHER NOTICE\nNOVFIFZSNG, TRAWLING, DREDGING, ANCHORIG AND DIVING WITIN T_IS_A__AO\nAREA BOUNDED BY:\n5_10.84N 00_*29.44E\n_50*:!*!_'9*__'!_ :3,543 998 IS EXP OV_R\n__I_\nBQ OR _ OVE_\n_W_LGT\nOR M\nD\nSOUTH IZ_FZONM_YMGZYM_HM_JZZMMU\nZ\n_ZZWOKH_MVZJON_M__M_ZSMADIAKOS\nVRB 3 ORI4 SM_XF_YW__YTS_R 6!_$'\n_5\n(85_84-.!_\n! 22.30 N - _94 8 VERY\nZOON _\n__\nH_JXT_WAG__GBJ\nRXO__EB_VA_R_MA\nU_UU_WW_K\n__ZZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code K. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Novfifzsng, trawling, dredging, anchorig and diving witin t is a ao",
      "Cable laying ope",
      "Until further notice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 82,
    "heading": "2026-03-25 19:40:16 AREA: K",
    "published_at": "2026-03-25 19:40:16",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGEDBNGSFIII_OY - LIGHT UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGEDBNGSFIII_OY - LIGHT UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV CHERBOURG",
      "CHERBOURG"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text reports an aid-to-navigation fault near 51-21.20N 002-17.30E.",
    "decoded_highlights": [
      "Aids to navigation changedbngsfiii oy - light unlit",
      "Avurnav cherbourg 029/26",
      "Dover - dst manche est"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 83,
    "heading": "2026-03-25 19:12:04 AREA: P",
    "published_at": "2026-03-25 19:12:04",
    "area": "P",
    "message_id": "PL06",
    "text": "ZCZC PL06\n251711 UTC MAR 26\nWAVE HEIGHT WARNING  300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 251700 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE AT RISK OF LOSING CONTAINERS DURING HEAVY SEA CONDITIONS_N IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINERS..\nNNNN",
    "clean_text": "ZCZC PL06\n251711 UTC MAR 26\nWAVE HEIGHT WARNING 300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 251700 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE AT RISK OF LOSING CONTAINERS DURING HEAVY SEA CONDITIONS_N IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINERS..\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TERSCHELLING"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. Readable text says: These vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriate measures to avoid losing containers.",
    "decoded_highlights": [
      "These vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriate measures to avoid losing containers",
      "Container vessels with a length of 100-200m are at risk of losing containers during heavy sea conditions n in particular from a west-northwest to northwest to northerly direction"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 84,
    "heading": "2026-03-25 19:10:21 AREA: G",
    "published_at": "2026-03-25 19:10:21",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GZFHDPM_FW_YB_1. NNG E BUOY 5_-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "clean_text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GZFHDPM_FW_YB_1. NNG E BUOY 5_-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-12.3N 002-09.8W.",
    "decoded_highlights": [
      "Neart na gzfhdpm fw yb 1. nng e buoy 5 -14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "2. cancel wz 10/26 (ga91)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 85,
    "heading": "2026-03-25 19:09:57 AREA: G",
    "published_at": "2026-03-25 19:09:57",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \n*)346) 98) !83)$. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \n_9,,888ZCZC",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\n*)346) 98) !83)$.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\n_9,,888ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 86,
    "heading": "2026-03-25 19:09:26 AREA: G",
    "published_at": "2026-03-25 19:09:26",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNONNIII_ZCZC",
    "clean_text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNONNIII_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CROMARTY"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 57-29.4N 001-21.1W.",
    "decoded_highlights": [
      "1. turbine hs2, 57-29.4n 001-21.1w, fog signal inoperative",
      "Cromarty",
      "Hywind floating wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 87,
    "heading": "2026-03-25 19:08:32 AREA: G",
    "published_at": "2026-03-25 19:08:32",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/26 \nNORTH SEA. \nTEAL AND GUILLEMOT OIL FIELDS. \nCHART GB 278. \nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.38E\nNNNN",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/26\nNORTH SEA.\nTEAL AND GUILLEMOT OIL FIELDS.\nCHART GB 278.\nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.38E\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Safety zone, radius 500 metres, established in 57-16.48n 000-46.38e.",
    "decoded_highlights": [
      "Safety zone, radius 500 metres, established in 57-16.48n 000-46.38e",
      "Navarea i 43/26",
      "North sea"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  }
]