[
  {
    "index": 1,
    "heading": "2026-04-09 05:05:05 AREA: M",
    "published_at": "2026-04-09 05:05:05",
    "area": "M",
    "message_id": "",
    "text": "ZCZC MA1_\n010840 UHXM_Y_\n_V. WARNING 94/2026\n  CH_CT\n_9_.._60.)06+03__+12_\n,_')06_.'!_-_'.-0__:$(-.)9,_::$0__,_0_104_H_A\n_ZZCZC",
    "clean_text": "ZCZC MA1_\n010840 UHXM_Y_\n_V. WARNING 94/2026\nCH_CT\n_9_.._60.)06+03__+12_\n,_')06_.'!_-_'.-0__:$(-.)9,_::$0__,_0_104_H_A\n_ZZCZC",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code M. Readable text says: V. warning 94/2026. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "V. warning 94/2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-04-09 05:04:04 AREA: M",
    "published_at": "2026-04-09 05:04:04",
    "area": "M",
    "message_id": "MA24",
    "text": "ZCZC MA24\n*10_03 UTC MAR 26\nDAF__ZM_A\nM_Y_M_XWY\n_GWP_YVMS_FBM_FZYWMS_JHYMYPWPON_UGBMWP_HDMZLJPY_PW_N\nH_HFBP_GX_\n_QTMTQE\nN-SIDE OFM_DPSONONNIIIIZCZC",
    "clean_text": "ZCZC MA24\n*10_03 UTC MAR 26\nDAF__ZM_A\nM_Y_M_XWY\n_GWP_YVMS_FBM_FZYWMS_JHYMYPWPON_UGBMWP_HDMZLJPY_PW_N\nH_HFBP_GX_\n_QTMTQE\nN-SIDE OFM_DPSONONNIIIIZCZC",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code M. Readable text says: N-side ofm dpsononniiiizczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N-side ofm dpsononniiiizczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-04-09 05:03:33 AREA: M",
    "published_at": "2026-04-09 05:03:33",
    "area": "M",
    "message_id": "MA25",
    "text": "ZCZC MA25\n__870_\n__5: -04 26\nDANISH NAV WARN 189/26\nDENMARK. KATTEGAT. SKAGENVCPYMDYLZCYHBO_HYZ_PMFMFZJ_UAREMQN 010-35.5E\nCLOSED FOR _AJ_P_ZZMOZDX__ZCZC",
    "clean_text": "ZCZC MA25\n__870_\n__5: -04 26\nDANISH NAV WARN 189/26\nDENMARK. KATTEGAT. SKAGENVCPYMDYLZCYHBO_HYZ_PMFMFZJ_UAREMQN 010-35.5E\nCLOSED FOR _AJ_P_ZZMOZDX__ZCZC",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code M. Readable text says: Closed for aj p zzmozdx zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Closed for aj p zzmozdx zczc",
      "Denmark. kattegat. skagenvcpymdylzcyhbo hyz pmfmfzj uaremqn 010-35.5e",
      "Danish nav warn 189/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-04-09 05:03:06 AREA: M",
    "published_at": "2026-04-09 05:03:06",
    "area": "M",
    "message_id": "MA20",
    "text": "ZCZC MA20\n0_ UTC APR 26\nDANISH NAV WARN 194/26\nDENMARK.\nDGPS-STATION_GEN 290._ KHZ\n\n7-44.9N 010-35.7E\nUNRELIABLE.\n\n\nNNNN",
    "clean_text": "ZCZC MA20\n0_ UTC APR 26\nDANISH NAV WARN 194/26\nDENMARK.\nDGPS-STATION_GEN 290._ KHZ\n\n7-44.9N 010-35.7E\nUNRELIABLE.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code M. Readable text says: Danish nav warn 194/26.",
    "decoded_highlights": [
      "Danish nav warn 194/26",
      "Dgps-station gen 290. khz",
      "Unreliable"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 6,
    "heading": "2026-04-09 05:00:10 AREA: M",
    "published_at": "2026-04-09 05:00:10",
    "area": "M",
    "message_id": "ME22",
    "text": "ZCZC ME22\n082300 UTC AR 26\nWEATHER BULLETIN ISSUED BY NORWEGIAN METEORO_OGICAL CJHFHCHPONMMJ_ZHFM_/___!-._+2_.\n.__!._:_/_STORM CNTR 982 ,$_._\n.._, MO_WY NE, EXP 979 HPA AT, 65 N 25 W, THU_1!._:___BNGSZ_MPZZPMGD_MUH___FMGM__\nMTP_, EXP 101 HPA AO, __E, :=_2\n!*_82/_! =581(5\n_10$85HPA A _N WF _ 36 E: 7.9=::3_, EXP_10_4_HPVAECAST VALID N__T 24 _OURS_C\nV_AGER_A_D.\n = !8_34\n'3 ,3-* _-)3 7, DEC_ TU _UU__WY\nNORWEOIAN GALE _YF_M_ GX389/2026\nISSUED BF _EGIAN METEOROLOGIC__ INSTITUTE 8.4.2026 AT 22 UTC\nFISHER: SE GALE 8 FM THU 18UTC TO FRI 00/75:_\n\n_9,,888\n77_+:+: .-21\n082006 UTC APR 26\n_2!*$.,_, 195/26\nDENMARK. SKAGERRAK. HIRTSHALS HARBOUR.\nSTARBOARD HAND LIGHT BUOF\n5_0____9,\n_57.1E UNLIT.\nNNNN",
    "clean_text": "ZCZC ME22\n082300 UTC AR 26\nWEATHER BULLETIN ISSUED BY NORWEGIAN METEORO_OGICAL CJHFHCHPONMMJ_ZHFM_/___!-._+2_.\n.__!._:_/_STORM CNTR 982 ,$_._\n.._, MO_WY NE, EXP 979 HPA AT, 65 N 25 W, THU_1!._:___BNGSZ_MPZZPMGD_MUH___FMGM__\nMTP_, EXP 101 HPA AO, __E, :=_2\n!*_82/_! =581(5\n_10$85HPA A _N WF _ 36 E: 7.9=::3_, EXP_10_4_HPVAECAST VALID N__T 24 _OURS_C\nV_AGER_A_D.\n= !8_34\n'3 ,3-* _-)3 7, DEC_ TU _UU__WY\nNORWEOIAN GALE _YF_M_ GX389/2026\nISSUED BF _EGIAN METEOROLOGIC__ INSTITUTE 8.4.2026 AT 22 UTC\nFISHER: SE GALE 8 FM THU 18UTC TO FRI 00/75:_\n\n_9,,888\n77_+:+: .-21\n082006 UTC APR 26\n_2!*$.,_, 195/26\nDENMARK. SKAGERRAK. HIRTSHALS HARBOUR.\nSTARBOARD HAND LIGHT BUOF\n5_0____9,\n_57.1E UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code M. Readable text says: Fisher: se gale 8 fm thu 18utc to fri 00/75. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fisher: se gale 8 fm thu 18utc to fri 00/75",
      "Norweoian gale yf m gx389/2026",
      "Starboard hand light buof"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-04-09 04:59:21 AREA: T",
    "published_at": "2026-04-09 04:59:21",
    "area": "T",
    "message_id": "",
    "text": "ZCZCIHT-1\nTEST H3\nNDNN\n\n___ZCZC",
    "clean_text": "ZCZCIHT-1\nTEST H3\nNDNN\n\n___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": 10,
    "heading": "2026-04-09 04:56:11 AREA: L",
    "published_at": "2026-04-09 04:56:11",
    "area": "L",
    "message_id": "LA19",
    "text": "ZCZC LA19\n077_FNE____NY_\n_NORWEGIAN NAV. WARNING 141/2026\n  CHART 28\n  AREA FROEYSJOEEN N. GULEN\nTERNOEYNA PWYPMSPWF_MSF_DHM\n___WNV\n_PIMRPE IS UNLIT.\nNNNN",
    "clean_text": "ZCZC LA19\n077_FNE____NY_\n_NORWEGIAN NAV. WARNING 141/2026\nCHART 28\nAREA FROEYSJOEEN N. GULEN\nTERNOEYNA PWYPMSPWF_MSF_DHM\n___WNV\n_PIMRPE IS UNLIT.\nNNNN",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORWEGIAN NAV WARNING"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - South-west Norwegian coast. Readable text says: Norwegian nav. warning 141/2026. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Norwegian nav. warning 141/2026",
      "Area froeysjoeen n. gulen",
      "Ternoeyna pwypmspwf msf dhm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-09 04:55:39 AREA: L",
    "published_at": "2026-04-09 04:55:39",
    "area": "L",
    "message_id": "LAVWP",
    "text": "ZCZC LAVWP\nPUWPWI UTC APR 26\nNORWEGIAN NAV. /2-4,8,_ 142/2026\n  CHART 28\n  AREA FROEYSJOEEN N._GULEN\nTERNOEYNA UPPER LEADING LIGHT 61-45._'=_ 005-08.0$/_ 7,)85.\nNNNN",
    "clean_text": "ZCZC LAVWP\nPUWPWI UTC APR 26\nNORWEGIAN NAV. /2-4,8,_ 142/2026\nCHART 28\nAREA FROEYSJOEEN N._GULEN\nTERNOEYNA UPPER LEADING LIGHT 61-45._'=_ 005-08.0$/_ 7,)85.\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code L. Readable text says: Ternoeyna upper leading light 61-45. ' 005-08.0$/ 7,)85. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ternoeyna upper leading light 61-45. ' 005-08.0$/ 7,)85",
      "Puwpwi utc apr 26",
      "Norwegian nav. /2-4,8, 142/2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-04-09 04:54:44 AREA: L",
    "published_at": "2026-04-09 04:54:44",
    "area": "L",
    "message_id": "LA22",
    "text": "ZCZC LA22\n081053 UTC APR 26\nNORWEGIAN NAV. WARNING 144/2026\n  CHART 23\n  AREA HJELTEFJORDEN\nFLESI LIGHT 60-40.59N 004-53.37E IS UNLIT.\nNNONNIII__UKZCZF LU\n_PIPUPE UTC APR 26\nDANISH NAV _Y_M_C_TP_ZBW_D_RH_GPS-STATION SKAGEN 296.0 KHZ\n5 _+__.\n___H_CGPONCYPSFLSP_OONONON_\n_ZCZC",
    "clean_text": "ZCZC LA22\n081053 UTC APR 26\nNORWEGIAN NAV. WARNING 144/2026\nCHART 23\nAREA HJELTEFJORDEN\nFLESI LIGHT 60-40.59N 004-53.37E IS UNLIT.\nNNONNIII__UKZCZF LU\n_PIPUPE UTC APR 26\nDANISH NAV _Y_M_C_TP_ZBW_D_RH_GPS-STATION SKAGEN 296.0 KHZ\n5 _+__.\n___H_CGPONCYPSFLSP_OONONON_\n_ZCZC",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORWEGIAN NAV WARNING"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - South-west Norwegian coast. Readable text says: Flesi light 60-40.59n 004-53.37e is unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Flesi light 60-40.59n 004-53.37e is unlit",
      "Norwegian nav. warning 144/2026",
      "Area hjeltefjorden"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-09 04:54:14 AREA: L",
    "published_at": "2026-04-09 04:54:14",
    "area": "L",
    "message_id": "LA15",
    "text": "ZCZC LA15\n087NEMG_HBM\nYM\n_DANISH NAV WARN 195/26\nDENMARK. SKAGERRAK. __845'_-)' _-4_974.\nSTARBOARD HAND LIGHT BUOY 57-36.1N\n_FCZ_ _ UNLIT.\nNNNN",
    "clean_text": "ZCZC LA15\n087NEMG_HBM\nYM\n_DANISH NAV WARN 195/26\nDENMARK. SKAGERRAK. __845'_-)' _-4_974.\nSTARBOARD HAND LIGHT BUOY 57-36.1N\n_FCZ_ _ UNLIT.\nNNNN",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "SKAGERRAK"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - South-west Norwegian coast. Readable text says: Starboard hand light buoy 57-36.1n. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Starboard hand light buoy 57-36.1n",
      "Danish nav warn 195/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-09 04:50:09 AREA: T",
    "published_at": "2026-04-09 04:50:09",
    "area": "T",
    "message_id": "",
    "text": "ZCACZF_ 26\nWET BULA_TIN I_S BY NORWEGIAN METEORO_Z__S_KQD$/$___911)-____1__(*\n_-_$-_-5 18 UTC_\nSTORM CNTR 972 HPA AT, 6377\n 27 W, MOV IL\n_G_M\nEXP 979_3'-5, 65 N 25 W, TH  _UTC.\nLOW 993 HPA AT, 78 N !0=_0MOV NE, UXC\n F M_D_M_H_MCFMGM_VALID NE_T 24 HO_R___ INNER SKAGERRAK\nSE 4,_/9__)\n,06.__\n_ SLT, OCNL ROUGHTZMDRY, GOOD.\n  _U\nBHIE_OHE_PYMSPM_M_MP_PUGH, OCNL VERY ROUGH. RAIN, MOD.\n  SOUTH U\nSIRE\nSE GALE 8, OCNL SEV GALE 9. ROUGH OR VERY ROUGH. RAIN,,59_+.\n  NORTH UTSIRE\nSE GALE 8, OCNL S SEV GALE\nZ_VO_VY_MY_C___BVTJIN, 7_9$.9\n_ \n__K_PXIQ____8_7=_0_(_(!3_+:+: )_28\n082144 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX389/2,26\nISSUED BY _EGIAN METEOROLOGIMUH__NSTITUTE 8.4.2026 AT 22 UTC\nFISHER: F_M_S\nM_FM_THU 18_7).:__.0!=_'!____9,*+:_$.:_*!60__._*0.*0\n._'_._+.___7 07UTC TO FRI 03UTC\nNORTH UTSI_E: S SEV GALE 9 FM THU 04UTC TO FRI 0___5:\n=8(8,_: S SEV GALE 9 FM WED 22UTC TO FRI 02UTC\nEAST-TAMPEN!._*.*0\n._'_._+._23$ 22UTC TO FRI 02UTC\n\nNNNN",
    "clean_text": "ZCACZF_ 26\nWET BULA_TIN I_S BY NORWEGIAN METEORO_Z__S_KQD$/$___911)-____1__(*\n_-_$-_-5 18 UTC_\nSTORM CNTR 972 HPA AT, 6377\n27 W, MOV IL\n_G_M\nEXP 979_3'-5, 65 N 25 W, TH _UTC.\nLOW 993 HPA AT, 78 N !0=_0MOV NE, UXC\nF M_D_M_H_MCFMGM_VALID NE_T 24 HO_R___ INNER SKAGERRAK\nSE 4,_/9__)\n,06.__\n_ SLT, OCNL ROUGHTZMDRY, GOOD.\n_U\nBHIE_OHE_PYMSPM_M_MP_PUGH, OCNL VERY ROUGH. RAIN, MOD.\nSOUTH U\nSIRE\nSE GALE 8, OCNL SEV GALE 9. ROUGH OR VERY ROUGH. RAIN,,59_+.\nNORTH UTSIRE\nSE GALE 8, OCNL S SEV GALE\nZ_VO_VY_MY_C___BVTJIN, 7_9$.9\n_\n__K_PXIQ____8_7=_0_(_(!3_+:+: )_28\n082144 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX389/2,26\nISSUED BY _EGIAN METEOROLOGIMUH__NSTITUTE 8.4.2026 AT 22 UTC\nFISHER: F_M_S\nM_FM_THU 18_7).:__.0!=_'!____9,*+:_$.:_*!60__._*0.*0\n._'_._+.___7 07UTC TO FRI 03UTC\nNORTH UTSI_E: S SEV GALE 9 FM THU 04UTC TO FRI 0___5:\n=8(8,_: S SEV GALE 9 FM WED 22UTC TO FRI 02UTC\nEAST-TAMPEN!._*.*0\n._'_._+._23$ 22UTC TO FRI 02UTC\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-fallback",
    "resolved_match_terms": [
      "NORWEGIAN GALE WARNING"
    ],
    "display_region_heading": "Norway - Norwegian Sea and central Norwegian coast",
    "display_region_label": "Orlandet, Norway",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Norway - Norwegian Sea and central Norwegian coast. Readable text says: Se gale 8, ocnl sev gale 9. rough or very rough. rain,,59. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Se gale 8, ocnl sev gale 9. rough or very rough. rain,,59",
      "North utsi e: s sev gale 9 fm thu 04utc to fri 0 5",
      "8(8, : s sev gale 9 fm wed 22utc to fri 02utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-04-09 04:46:09 AREA: F",
    "published_at": "2026-04-09 04:46:09",
    "area": "F",
    "message_id": "",
    "text": "ZCZC FT2TQTEST T\nNNNN",
    "clean_text": "ZCZC FT2TQTEST T\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. 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": 16,
    "heading": "2026-04-09 04:41:45 AREA: K",
    "published_at": "2026-04-09 04:41:45",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHOYI_MWMWF_FM_FHDFIII_FJMYPONGYPMLZCUUBSQ_TPAQPMIRN 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-21.02E\n50-15.86N 001-19.41E\n50-19.01N 001-12.02E\n50-19.74N 001-04.77E\n50-20.11N 60 Y_ZPGPON_HGCM_LN_HLONG.:.(30__NDGCMD_XLBG.::__,+,$_:.XHLON.::._:___9,,888_+: (-26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nFJIII_ANSMITTER OQSUZFM_NZS_IGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\nF_HPMIIK_UFH_M_CHFZONGONNIVVVVVVVVVVVVVVVVZCZC",
    "clean_text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHOYI_MWMWF_FM_FHDFIII_FJMYPONGYPMLZCUUBSQ_TPAQPMIRN 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-21.02E\n50-15.86N 001-19.41E\n50-19.01N 001-12.02E\n50-19.74N 001-04.77E\n50-20.11N 60 Y_ZPGPON_HGCM_LN_HLONG.:.(30__NDGCMD_XLBG.::__,+,$_:.XHLON.::._:___9,,888_+: (-26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nFJIII_ANSMITTER OQSUZFM_NZS_IGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\nF_HPMIIK_UFH_M_CHFZONGONNIVVVVVVVVVVVVVVVVZCZC",
    "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 sets local operating restrictions near 50-10.44N 001-29.13E; 50-13.61N 001-21.02E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoyi mwmwf fm fhdfiii fjmypongypmlzcuubsq tpaqpmirn 001-29.44e",
      "Cable laying operation",
      "Until further notice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 17,
    "heading": "2026-04-09 04:41:11 AREA: K",
    "published_at": "2026-04-09 04:41:11",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO N\nF_HFZM_GES\nLIGHT BUOY - LIGHT UNLIT\nBYOY FAIGAMJCWON\nH _U BUG__\n_U CBP_GPONG\nF_H_M_FH_M_CHFZONGONIII_ZCZC",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO N\nF_HFZM_GES\nLIGHT BUOY - LIGHT UNLIT\nBYOY FAIGAMJCWON\nH _U BUG__\n_U CBP_GPONG\nF_H_M_FH_M_CHFZONGONIII_ZCZC",
    "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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Light buoy - light unlit",
      "Avurnav cherbourg 029/26",
      "Dover - dst manche est"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-04-09 04:40:15 AREA: K",
    "published_at": "2026-04-09 04:40:15",
    "area": "K",
    "message_id": "KA40",
    "text": "ZCZC KA40\nAVURNAV CHERBOURG 40/26\nWIGHT - D82\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nKG__ZBM\n __PMG_H_MYM KQ_H_QQQTPP G_H_MNKQRON_YPMLD_UUO_Q_ROATOMOW_ \nPPPAQWMYEW\n49-40.78N 000-00.25W\n49-32.33N 000-18.62W\n*+06_:___0-55.12W\nNAVIGATE WITH CAUTION\n2. CANCEL THIS MSG 111500 UTC APR 26\nNNNN",
    "clean_text": "ZCZC KA40\nAVURNAV CHERBOURG 40/26\nWIGHT - D82\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nKG__ZBM\n__PMG_H_MYM KQ_H_QQQTPP G_H_MNKQRON_YPMLD_UUO_Q_ROATOMOW_\nPPPAQWMYEW\n49-40.78N 000-00.25W\n49-32.33N 000-18.62W\n*+06_:___0-55.12W\nNAVIGATE WITH CAUTION\n2. CANCEL THIS MSG 111500 UTC APR 26\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 says: 1. firing exercise. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. firing exercise",
      "Avurnav cherbourg 40/26",
      "Special operations"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-04-09 04:29:32 AREA: J",
    "published_at": "2026-04-09 04:29:32",
    "area": "J",
    "message_id": "JA12",
    "text": "ZCZC JA12\n181607 _75: .-49__'!_$!./\n._6\nWY\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA  ENTG_  MAINTENANCE DR_NG\nMAINTENANCE D_ED_ING IN PROGRESS IN THE SEAWAY CHANNEL\n__!_$!.60.)+:202.)3_55-4_.8N 0_1-04.9E\n55-_N 021-05.2E\n55-43.7N 021-._2E\n55-43.6N 021-05.5E\n55-_N 021-04.4_.\n__=0*_JQBKEBKUB1)8589, ,3-4 5_3 $43$_8,_ 294(' -43-. VESSELS MUST PASS AT MINIMUM SAFK S__\n_M_D_KS ARE_\nALL VESSELS _UST_K_W_ ZIS_AOP\nZ_M\nSPJHM\nP_MG I UBPH\nYKM_ING.\n+3\n__\n\n172_7(\n:9_.__:(_1_1___=_OMLG\nLW_\n\nO!__*.9,_*-, _\n(_4,-__-2,_9__,!1____.0+_+:(*_\n .78 _9,,8_8_7ZCZC",
    "clean_text": "ZCZC JA12\n181607 _75: .-49__'!_$!./\n._6\nWY\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA ENTG_ MAINTENANCE DR_NG\nMAINTENANCE D_ED_ING IN PROGRESS IN THE SEAWAY CHANNEL\n__!_$!.60.)+:202.)3_55-4_.8N 0_1-04.9E\n55-_N 021-05.2E\n55-43.7N 021-._2E\n55-43.6N 021-05.5E\n55-_N 021-04.4_.\n__=0*_JQBKEBKUB1)8589, ,3-4 5_3 $43$_8,_ 294(' -43-. VESSELS MUST PASS AT MINIMUM SAFK S__\n_M_D_KS ARE_\nALL VESSELS _UST_K_W_ ZIS_AOP\nZ_M\nSPJHM\nP_MG I UBPH\nYKM_ING.\n+3\n__\n\n172_7(\n:9_.__:(_1_1___=_OMLG\nLW_\n\nO!__*.9,_*-, _\n(_4,-__-2,_9__,!1____.0+_+:(*_\n.78 _9,,8_8_7ZCZC",
    "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: Approaches to port klaipeda entg maintenance dr ng. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Approaches to port klaipeda entg maintenance dr ng",
      "Maintenance d ed ing in progress in the seaway channel",
      "South-eastern baltic"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 21,
    "heading": "2026-04-09 04:26:27 AREA: J",
    "published_at": "2026-04-09 04:26:27",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_AI\nWH F_HM_VHX_\n\nKALINGRAD NAV WARN 052/26\n\nSOUTOEASTERN BALTIC\nSHIPS_EXERCISQEM_ _ _TC MAR THRU 302100 UTC A_R\nIN AREA TEMPORARILY DAN__Y_CJMHZMJDF_ 019-03.00E__HHPB_G_TMPPE\n55-04.0__,=_3 54757.50N 020-_0E\n54-57.50N 019-55_3 54-50.00N 019-_0E\n54-50._0.,_\n_25.00E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "clean_text": "ZCZC JA_AI\nWH F_HM_VHX_\n\nKALINGRAD NAV WARN 052/26\n\nSOUTOEASTERN BALTIC\nSHIPS_EXERCISQEM_ _ _TC MAR THRU 302100 UTC A_R\nIN AREA TEMPORARILY DAN__Y_CJMHZMJDF_ 019-03.00E__HHPB_G_TMPPE\n55-04.0__,=_3 54757.50N 020-_0E\n54-57.50N 019-55_3 54-50.00N 019-_0E\n54-50._0.,_\n_25.00E\nCANCEL THIS MESSAGE 302200 UTC APR\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: Kalingrad nav warn 052/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Kalingrad nav warn 052/26",
      "Soutoeastern baltic"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-04-09 04:22:33 AREA: T",
    "published_at": "2026-04-09 04:22:33",
    "area": "T",
    "message_id": "",
    "text": "Z_ZC\n_6__,\n__ _\n-___ 8,'__7_ 63))92 _8_______:9_ 8, 049_43'' 8, '3-2-6 :\n- _, WITHIN AREA\nB_RMEOE\n5_-43.77N 021-04._\n55-43.72N 021-04.48_0\n,___60_:6_.\n___YBP_GP\n_ONG_YFPYJMYPMW_FJ_WMHZM\nF__\nM_K_FZMFMHDPMYPMWOIIICONTACT VTS _OIM_CYHDPYMF_ZYBHFZ__ONG_\n\n_U_TAX__\n251818 UTC MAR\nQV__Z_\nYZH_\nZ__D_\nQF_X_C_CV=0_\n2__6+).)_SHIPS EXERCIS_ESM_\n U MGVH___KQ_EPWQPP _O_\nIN AREA TP_HZYYFS_ TO SHIPPING BR-16_9.50_,=0__+76__0__0_ 02000E\n_GXC_IKXPSMHDFJM_P_JYPM_VP UTC APR\nNNNN",
    "clean_text": "Z_ZC\n_6__,\n__ _\n-___ 8,'__7_ 63))92 _8_______:9_ 8, 049_43'' 8, '3-2-6 :\n- _, WITHIN AREA\nB_RMEOE\n5_-43.77N 021-04._\n55-43.72N 021-04.48_0\n,___60_:6_.\n___YBP_GP\n_ONG_YFPYJMYPMW_FJ_WMHZM\nF__\nM_K_FZMFMHDPMYPMWOIIICONTACT VTS _OIM_CYHDPYMF_ZYBHFZ__ONG_\n\n_U_TAX__\n251818 UTC MAR\nQV__Z_\nYZH_\nZ__D_\nQF_X_C_CV=0_\n2__6+).)_SHIPS EXERCIS_ESM_\nU MGVH___KQ_EPWQPP _O_\nIN AREA TP_HZYYFS_ TO SHIPPING BR-16_9.50_,=0__+76__0__0_ 02000E\n_GXC_IKXPSMHDFJM_P_JYPM_VP UTC APR\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: - , within area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "- , within area"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-04-09 04:21:36 AREA: T",
    "published_at": "2026-04-09 04:21:36",
    "area": "T",
    "message_id": "",
    "text": "_CZC JA42\n_0 __58:_\n__+'!*$._+*.9,_2:0._+8(_(._!'__6_.0506/!*\n*.-+0.!_._'+(59E\nA_AZIITM APR\nNNNN",
    "clean_text": "_CZC JA42\n_0 __58:_\n__+'!*$._+*.9,_2:0._+8(_(._!'__6_.0506/!*\n*.-+0.!_._'+(59E\nA_AZIITM APR\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: A aziitm apr. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A aziitm apr"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-09 04:17:37 AREA: J",
    "published_at": "2026-04-09 04:17:37",
    "area": "J",
    "message_id": "JA57",
    "text": "ZCZC JA57\n070 __\n\n8__2-2+9_\nAND IS AC RQ_ B_OY.\nMARIN_RS_ARE ADVISED TO KEEP_WELL_\nCLEAR.\nNNNN",
    "clean_text": "ZCZC JA57\n070 __\n\n8__2-2+9_\nAND IS AC RQ_ B_OY.\nMARIN_RS_ARE ADVISED TO KEEP_WELL_\nCLEAR.\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. 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": 26,
    "heading": "2026-04-09 04:13:42 AREA: T",
    "published_at": "2026-04-09 04:13:42",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_MF_HY_NI_ZMGKDBH___OK__9/1(UGQ_)(9_((3)_$$:.,_3092 __)\n_:PDA C_MLSHF_FROM SUNDAY EVENING -50 TO -68_BMXZM\n_SZMZKSHF_MJVM_EK_ZMWHCB_DAY AFTERNOOWJ____OK__GSTR RE_JE.\n\n2_ _352___M_TY\nZA_TUMON 009-12.7E\nNNNN",
    "clean_text": "ZCZ_MF_HY_NI_ZMGKDBH___OK__9/1(UGQ_)(9_((3)_$$:.,_3092 __)\n_:PDA C_MLSHF_FROM SUNDAY EVENING -50 TO -68_BMXZM\n_SZMZKSHF_MJVM_EK_ZMWHCB_DAY AFTERNOOWJ____OK__GSTR RE_JE.\n\n2_ _352___M_TY\nZA_TUMON 009-12.7E\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: Pda c mlshf from sunday evening -50 to -68 bmxzm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Pda c mlshf from sunday evening -50 to -68 bmxzm",
      "Za tumon 009-12.7e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 27,
    "heading": "2026-04-09 04:10:48 AREA: G",
    "published_at": "2026-04-09 04:10:48",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\n_ZM\n FT_EMONGDC_LP__\nRACE BANK WIND FARM. \n1. TURBINE FOG SIGNALS INOPERATIVE: \nA. D01, 53-20._000-49.1E. \nB. S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/((73.=___7+'_.9/_9,,888_ZCZXM__HABN_XMOKMHKPO_W_SRB_. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA61\n_ZM\nFT_EMONGDC_LP__\nRACE BANK WIND FARM.\n1. TURBINE FOG SIGNALS INOPERATIVE:\nA. D01, 53-20._000-49.1E.\nB. S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/((73.=___7+'_.9/_9,,888_ZCZXM__HABN_XMOKMHKPO_W_SRB_.\nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT.\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": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit",
      "1. turbine fog signals inoperative",
      "Race bank wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-04-09 04:10:16 AREA: G",
    "published_at": "2026-04-09 04:10:16",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\n_$:_)0__ORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\n_$:_)0__ORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-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": [
      "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: 1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative",
      "$: )0 orwell gas field northwestwards",
      "2. cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 29,
    "heading": "2026-04-09 04:09:46 AREA: G",
    "published_at": "2026-04-09 04:09:46",
    "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-079_P\nMGCSFHMWMSSM_71_)__CD9,LB_ZCZC",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-079_P\nMGCSFHMWMSSM_71_)__CD9,LB_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": [
      "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-079 p. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-079 p",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 30,
    "heading": "2026-04-09 04:09:21 AREA: G",
    "published_at": "2026-04-09 04:09:21",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \n_S. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 0_ 7:__-70_-84. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\n_S.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 0_ 7:__-70_-84.\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-04.4n 0 7: -70 -84",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 31,
    "heading": "2026-04-09 04:08:57 AREA: G",
    "published_at": "2026-04-09 04:08:57",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \n__6_/._+_06\n_.9___/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\n__6_/._+_06\n_.9___/T SERVICE FROM BAWDSEY SITE 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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "9 /t service from bawdsey site 51-59.6n 001-24.5e off air"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-04-09 04:08:30 AREA: G",
    "published_at": "2026-04-09 04:08:30",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OF_JDZYPMWP_ZJHYHZYM_F_M_YB_TURBINP_Z\n_TAPYMIN 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OF_JDZYPMWP_ZJHYHZYM_F_M_YB_TURBINP_Z\n_TAPYMIN 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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tapymin 001-23.6w unlit and fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-04-09 04:07:57 AREA: G",
    "published_at": "2026-04-09 04:07:57",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDSMFZ_PYK_\n0__._.\n(__(5__KBNMGGHCPB_E_DKJ__HZFFF_ZCZC",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDSMFZ_PYK_\n0__._.\n(__(5__KBNMGGHCPB_E_DKJ__HZFFF_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": [
      "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: 1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaidsmfz pyk. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaidsmfz pyk",
      "Leman gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-04-09 04:07:27 AREA: G",
    "published_at": "2026-04-09 04:07:27",
    "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.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "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.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\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": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2w off air",
      "Mrcc shetland",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 35,
    "heading": "2026-04-09 04:06:56 AREA: G",
    "published_at": "2026-04-09 04:06:56",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMEE MAFPKM_FP_1. 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.\nBESSEMEE MAFPKM_FP_1. 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"
    ],
    "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": [
      "Bessemee mafpkm fp 1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "2. cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 36,
    "heading": "2026-04-09 04:06:30 AREA: G",
    "published_at": "2026-04-09 04:06:30",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 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 53-11.0n 002-05.8e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 37,
    "heading": "2026-04-09 04:05:56 AREA: G",
    "published_at": "2026-04-09 04:05:56",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. N1 55-08.1N 002-09.5E. \nB. E5 54-51.5N _U_U_C_\n2. CANCEL WZ 95/26 (GA50). \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA. N1 55-08.1N 002-09.5E.\nB. E5 54-51.5N _U_U_C_\n2. CANCEL WZ 95/26 (GA50).\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": [
      "DOGGER",
      "SOFIA OFFSHORE WIND FARM"
    ],
    "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: 1. buoys unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. buoys unlit",
      "Sofia offshore wind farm",
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 38,
    "heading": "2026-04-09 04:05:20 AREA: G",
    "published_at": "2026-04-09 04:05:20",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nFORTH. \nNEART NA GAOITHE WINDFARM. \n1. NNG E BUOEM\nHE Y_PG_M\n_U_YW AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE. \n2. CANCEL WZ 130/26 (GA73). \nNNNN",
    "clean_text": "ZCZC GA18\nWZ 243/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOEM\nHE Y_PG_M\n_U_YW AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 130/26 (GA73).\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": [
      "U yw and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "Neart na gaoithe windfarm",
      "1. nng e buoem"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 39,
    "heading": "2026-04-09 04:04:50 AREA: G",
    "published_at": "2026-04-09 04:04:50",
    "area": "G",
    "message_id": "GA25",
    "text": "ZCZC GA25\nWZ 254/26 \nVIKING. \nBERYL OIL FIEL__M_M BERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \n2. CANCEL WZ 143/26 (GA82). \nNNNN",
    "clean_text": "ZCZC GA25\nWZ 254/26\nVIKING.\nBERYL OIL FIEL__M_M BERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\n2. CANCEL WZ 143/26 (GA82).\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: Beryl oil fiel m m beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl oil fiel m m beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed",
      "2. cancel wz 143/26 (ga82)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 40,
    "heading": "2026-04-09 04:02:12 AREA: G",
    "published_at": "2026-04-09 04:02:12",
    "area": "G",
    "message_id": "GP",
    "text": "ZCZC GP\nP_ONGFJJWML_MHDPM_PH_Z_!/0._.\n7 MGZM_PW__APR\nGALE WARNINGS VIKING FORTIES FAIR ISLE\nTHE GENERAL SITUATION AT MIDDAY\nLOW 400 MIL W OF BAILEY 971 EXP W OF ICELAND 975 BY MIDDAY\n24 HR FORECASTS\nVIKING\nSE 6 TO _ALE 8,SEV GALE 9 LTR.ROUGH OR VERY ROUGH,MOD.RAIN GOOD, OCNL POOR\nFORTIES\nSE 4 TO 6, INCR 6 TO GALE 8.MOD OR ROUGH,SLT AT FIRST WM_PYEMY_C_DMSHYMYFM_ZWMZYM_ZZWONG_ZYHFPJM_YZBYHEM_ZYHDMH_PMWZ_SE 3 TO 5 6 IN FORTIES AND DZ_ER W 4 TO 6.RAIN.MOD OR GOOD\nHUMBER\nSE 3 TO 5, VEER W 4 HZM\n_LT,MOD IN NE.FAIR.MOD OR GOOD\nTHAMES\nVRB BECM SW 2 TO 4 THEMMUM_Y_M_BNQHPLAA_W__K4LL_OD, __++2_.5+:'._++69,__!'_!1*_P_EQZL_P_Q_IZTG_T 4 HZM_IN E FAIR ISLE, _\n006.*7.__8_8_.*0.!_0'2._063.3__42_H_32__91(HJQK_E_XEWB__BLQ_LE_XRWLOH_UO_B_K3_1_P_QUALLY.GOOD\nOUTLK FSU__UYMGDZCYJONGJP\nM_SPJMYPMP_N VIKING, WITH GALES EXP IN FORTIES ANWMIIK_!_.!1*BHQ_ERBKGUQBKEON___(_60*9,_9,,888ZCZC",
    "clean_text": "ZCZC GP\nP_ONGFJJWML_MHDPM_PH_Z_!/0._.\n7 MGZM_PW__APR\nGALE WARNINGS VIKING FORTIES FAIR ISLE\nTHE GENERAL SITUATION AT MIDDAY\nLOW 400 MIL W OF BAILEY 971 EXP W OF ICELAND 975 BY MIDDAY\n24 HR FORECASTS\nVIKING\nSE 6 TO _ALE 8,SEV GALE 9 LTR.ROUGH OR VERY ROUGH,MOD.RAIN GOOD, OCNL POOR\nFORTIES\nSE 4 TO 6, INCR 6 TO GALE 8.MOD OR ROUGH,SLT AT FIRST WM_PYEMY_C_DMSHYMYFM_ZWMZYM_ZZWONG_ZYHFPJM_YZBYHEM_ZYHDMH_PMWZ_SE 3 TO 5 6 IN FORTIES AND DZ_ER W 4 TO 6.RAIN.MOD OR GOOD\nHUMBER\nSE 3 TO 5, VEER W 4 HZM\n_LT,MOD IN NE.FAIR.MOD OR GOOD\nTHAMES\nVRB BECM SW 2 TO 4 THEMMUM_Y_M_BNQHPLAA_W__K4LL_OD, __++2_.5+:'._++69,__!'_!1*_P_EQZL_P_Q_IZTG_T 4 HZM_IN E FAIR ISLE, _\n006.*7.__8_8_.*0.!_0'2._063.3__42_H_32__91(HJQK_E_XEWB__BLQ_LE_XRWLOH_UO_B_K3_1_P_QUALLY.GOOD\nOUTLK FSU__UYMGDZCYJONGJP\nM_SPJMYPMP_N VIKING, WITH GALES EXP IN FORTIES ANWMIIK_!_.!1*BHQ_ERBKGUQBKEON___(_60*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"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "P",
    "decoded_summary": "operational notice 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": [
      "Se 6 to ale 8,sev gale 9 ltr.rough or very rough,mod.rain good, ocnl poor",
      "Se 4 to 6, incr 6 to gale 8.mod or rough,slt at first wm pyemy c dmshymyfm zwmzym zzwong zyhfpjm yzbyhem zyhdmh pmwz se 3 to 5 6 in forties and dz er w 4 to 6.rain.mod or good",
      "M spjmypmp n viking, with gales exp in forties anwmiik ! .!1 bhq erbkguqbkeon ( 60 9, 9,,888zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 41,
    "heading": "2026-04-09 04:00:17 AREA: G",
    "published_at": "2026-04-09 04:00:17",
    "area": "G",
    "message_id": "GE33",
    "text": "ZCZC GE33\nFRI TO MON\nISSUED BY THE MET OFFICE, ON LPDS__Z_MHBPM_YFHF_PMWM_Z_H_C_WM_P_II_XOHKB_KCN:,___*-(_,_1:__ 016W TRACKS SE INTO ROCKALL BEFORE TURNING N ANDM_YZJJF_MJHDYMFIII_XPSWMWCYF_MJCMLP_ZYPMLPMJSZUMBZ_MHZMHDPMJMZ_MFXPSWM_Z\n_CYF_MHDFJMHF_B_PQIW FILLS AND LOW 983 60N 023W MOVES SE AS A FLN FEATURE. HIGH 1037 NW OF THE AZORES MOVES STEADILY SE OVER THE PERIOD ASMSZUM\n _ YMPFGM_HEG_MW_P_PJMLP_ZY_M_JJF_MPMHZMHDPM__Z_MHDPMAZYPIIIKQ\nUXEGEBQMBH_PJMHZMWPP_PMJMFHMBZ_PJM___DPMJ_MXZJHMZ_MHDPMC_MSHYM_Z_II_LOW 1001 NEWFOUNDSWMJCMWPP_PJMJMFHMBZ_PJBB_-_$2B_Q_E_K_LES SPREAD E ACROSS THE NRTHN HALF OF THE ON SAT AND EARLY SUN\nNONNIII___\n_ZCZC",
    "clean_text": "ZCZC GE33\nFRI TO MON\nISSUED BY THE MET OFFICE, ON LPDS__Z_MHBPM_YFHF_PMWM_Z_H_C_WM_P_II_XOHKB_KCN:,___*-(_,_1:__ 016W TRACKS SE INTO ROCKALL BEFORE TURNING N ANDM_YZJJF_MJHDYMFIII_XPSWMWCYF_MJCMLP_ZYPMLPMJSZUMBZ_MHZMHDPMJMZ_MFXPSWM_Z\n_CYF_MHDFJMHF_B_PQIW FILLS AND LOW 983 60N 023W MOVES SE AS A FLN FEATURE. HIGH 1037 NW OF THE AZORES MOVES STEADILY SE OVER THE PERIOD ASMSZUM\n_ YMPFGM_HEG_MW_P_PJMLP_ZY_M_JJF_MPMHZMHDPM__Z_MHDPMAZYPIIIKQ\nUXEGEBQMBH_PJMHZMWPP_PMJMFHMBZ_PJM___DPMJ_MXZJHMZ_MHDPMC_MSHYM_Z_II_LOW 1001 NEWFOUNDSWMJCMWPP_PJMJMFHMBZ_PJBB_-_$2B_Q_E_K_LES SPREAD E ACROSS THE NRTHN HALF OF THE ON SAT AND EARLY SUN\nNONNIII___\n_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast 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": [
      "Issued by the met office, on lpds z mhbpm yfhf pmwm z h c wm p ii xohkb kcn:, -( , 1: 016w tracks se into rockall before turning n andm yzjjf mjhdymfiii xpswmwcyf mjcmlp zypmlpmjszumbz mhzmhdpmjmz mfxpswm z",
      "Cyf mhdfjmhf b pqiw fills and low 983 60n 023w moves se as a fln feature. high 1037 nw of the azores moves steadily se over the period asmszum",
      "Uxegebqmbh pjmhzmwpp pmjmfhmbz pjm dpmj mxzjhmz mhdpmc mshym z ii low 1001 newfoundswmjcmwpp pjmjmfhmbz pjbb - $2b q e k les spread e across the nrthn half of the on sat and early sun"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 42,
    "heading": "2026-04-09 03:57:11 AREA: F",
    "published_at": "2026-04-09 03:57:11",
    "area": "F",
    "message_id": "FA15",
    "text": "ZCZC FA15\n201402 UT_MZ_ONLSHF_MJPMLKBBKCPSGYX__GSSMYPJON_ZYM_CYYPHMF_PM_+_/9_2.SMHI.SE/ICESERVICE\nNNNN",
    "clean_text": "ZCZC FA15\n201402 UT_MZ_ONLSHF_MJPMLKBBKCPSGYX__GSSMYPJON_ZYM_CYYPHMF_PM_+_/9_2.SMHI.SE/ICESERVICE\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": [
      "201402 ut mz onlshf mjpmlkbbkcpsgyx gssmypjon zym cyyphmf pm /9 2.smhi.se/iceservice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 47,
    "heading": "2026-04-09 03:48:31 AREA: E",
    "published_at": "2026-04-09 03:48:31",
    "area": "E",
    "message_id": "EA21",
    "text": "ZCZC EA21\nWZ_\n FUT_EMONGSCWE_\nSPANIEL BUOY_\nH_P__ 004-39.7W UNLIT.\nNNNN",
    "clean_text": "ZCZC EA21\nWZ_\nFUT_EMONGSCWE_\nSPANIEL BUOY_\nH_P__ 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": [
      "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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Spaniel buoy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 48,
    "heading": "2026-04-09 03:48:10 AREA: E",
    "published_at": "2026-04-09 03:48:10",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EA2-9___-.\n_!_5_\nWIGHT. \nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC EA2-9___-.\n_!_5_\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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice 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": 49,
    "heading": "2026-04-09 03:47:50 AREA: E",
    "published_at": "2026-04-09 03:47:50",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\nWZ 192/26 \nLUNDY. \nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC EA27\nWZ 192/26\nLUNDY.\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT.\n\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"
    ],
    "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: 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": 50,
    "heading": "2026-04-09 03:47:26 AREA: E",
    "published_at": "2026-04-09 03:47:26",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDJ__\nMRCC DOVER. 9___/T SERVICE FROM BAHMJ_HPMJHH_M\nH__ 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDJ__\nMRCC DOVER. 9___/T SERVICE FROM BAHMJ_HPMJHH_M\nH__ 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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc dover. 9 /t service from bahmj hpmjhh m",
      "H 001-24.5e off air"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 51,
    "heading": "2026-04-09 03:47:02 AREA: E",
    "published_at": "2026-04-09 03:47:02",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL LUZEMN_GCGMKHL_ 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL LUZEMN_GCGMKHL_ 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 luzemn gcgmkhl 005-40.4w unlit.",
    "decoded_highlights": [
      "South cardinal luzemn gcgmkhl 005-40.4w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 52,
    "heading": "2026-04-09 03:46:32 AREA: E",
    "published_at": "2026-04-09 03:46:32",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EA_RO\n__UCUYFGAM_Y_WY \nEA49 \nWZ 240/26 \nFASTNET. \nBLACKBALL LEDGE SOUTHEASTWARDS. \nEAST_SMLCZEM\nH_HH_PG_M\n_RIMTW UNLIT. \n\nNNNN",
    "clean_text": "ZCZC EA_RO\n__UCUYFGAM_Y_WY\nEA49\nWZ 240/26\nFASTNET.\nBLACKBALL LEDGE SOUTHEASTWARDS.\nEAST_SMLCZEM\nH_HH_PG_M\n_RIMTW UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code E. Readable text says: Blackball ledge southeastwards. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Blackball ledge southeastwards",
      "East smlczem",
      "Rimtw unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 53,
    "heading": "2026-04-09 03:46:09 AREA: E",
    "published_at": "2026-04-09 03:46:09",
    "area": "E",
    "message_id": "EA54",
    "text": "ZCZC EA54\nWZ 251/26 \nFASHPH_\nGREAT SALTEE_S_UTHWARDS. \nCONINGBEG BUO_WAPEMWN 006-_W OFF STATI_\nNNNN",
    "clean_text": "ZCZC EA54\nWZ 251/26\nFASHPH_\nGREAT SALTEE_S_UTHWARDS.\nCONINGBEG BUO_WAPEMWN 006-_W OFF STATI_\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: Coningbeg buo wapemwn 006- w off stati. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coningbeg buo wapemwn 006- w off stati",
      "Great saltee s uthwards"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 54,
    "heading": "2026-04-09 03:45:47 AREA: E",
    "published_at": "2026-04-09 03:45:47",
    "area": "E",
    "message_id": "EA55",
    "text": "ZCZC EA55\nWZ 257/26\nPORTLAND.\nSARK EASTWARDS.\nBLANCHARD BUOY 49-25.4N 002-17.4W UNLIT.\nNNNN",
    "clean_text": "ZCZC EA55\nWZ 257/26\nPORTLAND.\nSARK EASTWARDS.\nBLANCHARD BUOY 49-25.4N 002-17.4W 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": [
      "PORTLAND"
    ],
    "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: Blanchard buoy 49-25.4n 002-17.4w unlit.",
    "decoded_highlights": [
      "Blanchard buoy 49-25.4n 002-17.4w unlit",
      "Sark eastwards",
      "Portland"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 55,
    "heading": "2026-04-09 03:45:20 AREA: E",
    "published_at": "2026-04-09 03:45:20",
    "area": "E",
    "message_id": "EA56",
    "text": "ZCZC EA56\nWZ 258/26\nPORTLAND.\nOFF CASQUETS TJJMJZCHD_GJZCHD_PJH_Y_J_CASQUETS LIGHT 49-43.3N 002-22.6W RACON INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC EA56\nWZ 258/26\nPORTLAND.\nOFF CASQUETS TJJMJZCHD_GJZCHD_PJH_Y_J_CASQUETS LIGHT 49-43.3N 002-22.6W RACON 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": [
      "PORTLAND"
    ],
    "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: Off casquets tjjmjzchd gjzchd pjh y j casquets light 49-43.3n 002-22.6w racon inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Off casquets tjjmjzchd gjzchd pjh y j casquets light 49-43.3n 002-22.6w racon inoperative",
      "Portland"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 56,
    "heading": "2026-04-09 03:42:23 AREA: E",
    "published_at": "2026-04-09 03:42:23",
    "area": "E",
    "message_id": "EE13",
    "text": "ZCZC EE13\nISSUED BY THE MET OFFICE AT 1900 ON WED 08 APR\n\n\nGALE WARNINGS:._+099._$2FFKENERAL SITUATION AT MIDDAY\nLOW 400 MILES W OF BAILEY 971 EXP W OF ICELAND 975 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nTHAMES DOVER WIGHT\nVRB BECMG SW, 2 TO 4, THEN W 4 TO 6. SMOOTH OR SLT. FAIR. MOD OR GOOD, OCNL POOR\n\nPORTLAND PLYMOUTH BISCAY\nVRB 4 OR LESS, BECMG NW 4 TOM\n_LT OR MOD IN PORTLAND, PSJP_DPYPM_ZWMZYMYZCD_M_Z_SMJSHMFMPM_SQ_ZC_D_FOG PATCHES. MOD OR GOOD, OCNLM_PYEM_ZZYONONG_FHAYZ_ONGMZYMPM_YMGHZM_Q\nH_3_XOE_K0_4(_,_!_8 LTR, IN S. MOD OR ROUGH, BECMG VERY ROUGH LHYMFM_Y_U_THUNDERY SHWRS, FOG PAHXDPJMIII_IRST. MOD OR GOOD, OCNL VERY POOR AT FIRST\nNONGJZSPMSC_WEO__Q_D_ OR NW, BACK SW, 3 TO 5, VEER NW 4 TO 6, OCNL 7 IN SOLE. MOD OR ROUGH, OCNL SLT AT FIRST IN LUNDY AND FASTNET, BECMG ROUGH OR VERY ROUGH IN SOLE AND SW FASTNET. RAIN, FOG PATCHES AT FIRST. MOD OR GOOD, /+_' =346 0+,0._3___,9,_+:_'++=.'7__76._$+:6*_SEV GALES ARE EXP IN SO_ WITH GALES PAIKKTMF_M_FHAYZ_LUNDY AND FASTNET. STRG WINDS ARE EXP IN ALL OTH_R AREAS\nNNNN",
    "clean_text": "ZCZC EE13\nISSUED BY THE MET OFFICE AT 1900 ON WED 08 APR\n\nGALE WARNINGS:._+099._$2FFKENERAL SITUATION AT MIDDAY\nLOW 400 MILES W OF BAILEY 971 EXP W OF ICELAND 975 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nTHAMES DOVER WIGHT\nVRB BECMG SW, 2 TO 4, THEN W 4 TO 6. SMOOTH OR SLT. FAIR. MOD OR GOOD, OCNL POOR\n\nPORTLAND PLYMOUTH BISCAY\nVRB 4 OR LESS, BECMG NW 4 TOM\n_LT OR MOD IN PORTLAND, PSJP_DPYPM_ZWMZYMYZCD_M_Z_SMJSHMFMPM_SQ_ZC_D_FOG PATCHES. MOD OR GOOD, OCNLM_PYEM_ZZYONONG_FHAYZ_ONGMZYMPM_YMGHZM_Q\nH_3_XOE_K0_4(_,_!_8 LTR, IN S. MOD OR ROUGH, BECMG VERY ROUGH LHYMFM_Y_U_THUNDERY SHWRS, FOG PAHXDPJMIII_IRST. MOD OR GOOD, OCNL VERY POOR AT FIRST\nNONGJZSPMSC_WEO__Q_D_ OR NW, BACK SW, 3 TO 5, VEER NW 4 TO 6, OCNL 7 IN SOLE. MOD OR ROUGH, OCNL SLT AT FIRST IN LUNDY AND FASTNET, BECMG ROUGH OR VERY ROUGH IN SOLE AND SW FASTNET. RAIN, FOG PATCHES AT FIRST. MOD OR GOOD, /+_' =346 0+,0._3___,9,_+:_'++=.'7__76._$+:6*_SEV GALES ARE EXP IN SO_ WITH GALES PAIKKTMF_M_FHAYZ_LUNDY AND FASTNET. STRG WINDS ARE EXP IN ALL OTH_R AREAS\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, fog, ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warnings:. 099. $2ffkeneral situation at midday",
      "Lt or mod in portland, psjp dpypm zwmzymyzcd m z smjshmfmpm sq zc d fog patches. mod or good, ocnlm pyem zzyonong fhayz ongmzympm ymghzm q",
      "H 3 xoe k0 4( , ! 8 ltr, in s. mod or rough, becmg very rough lhymfm y u thundery shwrs, fog pahxdpjmiii irst. mod or good, ocnl very poor at first"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-04-09 03:40:16 AREA: T",
    "published_at": "2026-04-09 03:40:16",
    "area": "T",
    "message_id": "",
    "text": "ZCACMP__\nEXTENDED OUTLOOK\nFRI TO MON\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COAAH_CYWM_PX_AT 082300 UTC\n\n\nLOW 962 55N 016W TRACKS SE INTO ROCKALL BEFORE TURNING N AND CROSSING SOUYMYMF_PSWMWCYF_MJCMLP_ZYPMLPX_OW MOV TO THE S OF ICELAND MON. DURING TNFJMHF_PMHDPMSZC_ YON 018W FILLS RPDY AND LOW 983 60N 023W MOVES SE AS A FLN FEATUR__. HIGH 1037._MZ._$0.-+60*._+_0*.*_0(1_,_1_1-_323_2W_EGBUB__7_(_1014 38N 056W DEEPENS BEFORE PASSING E TO THE N OF THE AZORES DURING SUN. THFJMSZUM_ZHFCPJMHZMWPP_PBKQB__-_,19_3 59 43-:_ 5_3 '975_23'506._+_$____$_OX_B_RTHER LOW 1001 NEWFOUNWSWMJCMWPP_PJIII_MFHMBZ_PJMPMFHZMHDPM_PJHPYMHSHFXM__\n_MGSPJM_0/_._$0.7._6!.!_$_.!_+.06'_.*_.*._0''888_ 5_3 , !. )-53 '7, 8,59 .9,\nNNNN",
    "clean_text": "ZCACMP__\nEXTENDED OUTLOOK\nFRI TO MON\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COAAH_CYWM_PX_AT 082300 UTC\n\nLOW 962 55N 016W TRACKS SE INTO ROCKALL BEFORE TURNING N AND CROSSING SOUYMYMF_PSWMWCYF_MJCMLP_ZYPMLPX_OW MOV TO THE S OF ICELAND MON. DURING TNFJMHF_PMHDPMSZC_ YON 018W FILLS RPDY AND LOW 983 60N 023W MOVES SE AS A FLN FEATUR__. HIGH 1037._MZ._$0.-+60*._+_0*.*_0(1_,_1_1-_323_2W_EGBUB__7_(_1014 38N 056W DEEPENS BEFORE PASSING E TO THE N OF THE AZORES DURING SUN. THFJMSZUM_ZHFCPJMHZMWPP_PBKQB__-_,19_3 59 43-:_ 5_3 '975_23'506._+_$____$_OX_B_RTHER LOW 1001 NEWFOUNWSWMJCMWPP_PJIII_MFHMBZ_PJMPMFHZMHDPM_PJHPYMHSHFXM__\n_MGSPJM_0/_._$0.7._6!.!_$_.!_+.06'_.*_.*._0''888_ 5_3 , !. )-53 '7, 8,59 .9,\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": [
      "Issued by the met office, on behalf of the maritime and coaah cywm px at 082300 utc",
      "Low 962 55n 016w tracks se into rockall before turning n and crossing souymymf pswmwcyf mjcmlp zypmlpx ow mov to the s of iceland mon. during tnfjmhf pmhdpmszc yon 018w fills rpdy and low 983 60n 023w moves se as a fln featur . high 1037. mz. $0.- 60 . 0 . 0(1 , 1 1- 323 2w egbub 7 ( 1014 38n 056w deepens before passing e to the n of the azores during sun. thfjmszum zhfcpjmhzmwpp pbkqb - ,19 3 59 43-: 5 3 '975 23'506. $ $ ox b rther low 1001 newfounwswmjcmwpp pjiii mfhmbz pjmpmfhzmhdpm pjhpymhshfxm",
      "Extended outlook"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 58,
    "heading": "2026-04-09 02:59:57 AREA: T",
    "published_at": "2026-04-09 02:59:57",
    "area": "T",
    "message_id": "",
    "text": "ZCZCKXART_UA__J_U_RADIO_MMIDPE_UO_BY_ XCKK_OO UINVE_MGLK_.._6_!7.__.5_\nROUGHIG__X_MBZW\nZHVABUGH T_IS EVENING, TZE_MY_C_DMZY_O_YEOKAKAW_DA_AZY_MK__YZI_ONGSZ__MJ_F_KBV_JBRZNIPL_ROW ATERNOON.\nLOC POOO VIS IN\n__CZ_LE OCMJZMN_H_ONYM_M___WM_ZYMP_I\nH\nTHREAT OF NE NEAR GALE OR GALE OVER FINIST_LE A__EW\nAVURNAV BREST 134626\nCANTABRICO - CASQUE S _A FINISTER_Q P VS_OISE _AM_ZCWJJHMLMG_APM_GV E_*_,__$_- YEU\nIN-FORCE BULLETIN\n1. AVURNA_MBM_JHM2__735_80801 UTC APR 26:\n 6/26! _ 7573_-5. \nTPPTM__REST 121/26NNNN",
    "clean_text": "ZCZCKXART_UA__J_U_RADIO_MMIDPE_UO_BY_ XCKK_OO UINVE_MGLK_.._6_!7.__.5_\nROUGHIG__X_MBZW\nZHVABUGH T_IS EVENING, TZE_MY_C_DMZY_O_YEOKAKAW_DA_AZY_MK__YZI_ONGSZ__MJ_F_KBV_JBRZNIPL_ROW ATERNOON.\nLOC POOO VIS IN\n__CZ_LE OCMJZMN_H_ONYM_M___WM_ZYMP_I\nH\nTHREAT OF NE NEAR GALE OR GALE OVER FINIST_LE A__EW\nAVURNAV BREST 134626\nCANTABRICO - CASQUE S _A FINISTER_Q P VS_OISE _AM_ZCWJJHMLMG_APM_GV E_*_,__$_- YEU\nIN-FORCE BULLETIN\n1. AVURNA_MBM_JHM2__735_80801 UTC APR 26:\n6/26! _ 7573_-5.\nTPPTM__REST 121/26NNNN",
    "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: Threat of ne near gale or gale over finist le a ew. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Threat of ne near gale or gale over finist le a ew",
      "Loc pooo vis in",
      "Avurnav brest 134626"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 59,
    "heading": "2026-04-09 02:39:26 AREA: W",
    "published_at": "2026-04-09 02:39:26",
    "area": "W",
    "message_id": "",
    "text": "ZCZC WE5_9,__'0_!._+*_._:62.0__9,*0_/3=__IGH SEAS BULLETIN FGPZ_YPYPM_ISSUED AT 2000 UTC Z_ WEDNESDAY 08 APRIL 202_._)_._$0._0__+_!/0_._0_0__6_._:!_0_..__7_____$0._06!+888:2000 UT_MZBM_PWPJWEM_F_VK*(/\n_\n*+5/_BG_\nUAAITP CG LG_Z__\nP\n_LT/_ARK \n IAIT, N_RTH OFV_!\n_+6_$-9/_!ZFORCE 108\nAT TIMES _NT_MG__,945__4, _ _\n89__\nBOQRTRNVTOAT 0812000_C,4__\n):\n5_$(_,_5 !84') ,__'9\n5__-'__.=+,+:6_!_\n.9_6*.6+_+$.+6._!_$__.=*_:_'4._!_6_8_'_9234'__*_0.+6._++__2\n_-(_=2) -/_0_A, ZHD_JHPYSEM\nEGEBAELY, 4 TO 6, BECOMING VARIABLE 2 TO 4, THEN CYCLONIC__U TO S_\n_MMOS\nM_ZMGSHPYMFBMKPPO_H_H OR VERY ROUGH_AL RAIN AT FIRST IN EAST AND LATER IIZN AEST. GOOM_FYM\nJMWMM__NOYJ__OO__3_(____35_8! )__: )40_'9+7'____.+6_$06___D___U _P_MPMH_MICI__\nX_DKDBQ_$_)OH_W_J_AWL__ALES ARE EXPENTAD IN SOSP_MGJDZ_MVLFSP_\nV_P__-_$__2.2.9+_(EGKLBUK__KJKJQ_KE_ZZ_T_BUB__(_+7_)_ )=7=_4)48888_)4_77-)__9,\n.=995_95_,._)0__4-$7-))6 ')_5 8, , 8, -!534,99,.\nPOOR VISMWCPMHZMJZ_PM+__*(___,0_+__3.\nVRB 1 TO 3, INCR W 2 TO 4 IN N IN AFTERNOON.\nSMOOTH.\nPOOR VIS DUEMHZMJZ_PM+.___/$0__\n\n,6._.__02._+6.0__.\n_6._$9,_6).'!_$_.+6._+2._'+7__3___ ,2 .9$ 94 !43'_ !)92 8, _7)! 9! )89,\n8, '3:9,$ 0-45 9! !48$-6 ,8__5, THEN DECR IN AFTERNOON.\n\nNNNN",
    "clean_text": "ZCZC WE5_9,__'0_!._+*_._:62.0__9,*0_/3=__IGH SEAS BULLETIN FGPZ_YPYPM_ISSUED AT 2000 UTC Z_ WEDNESDAY 08 APRIL 202_._)_._$0._0__+_!/0_._0_0__6_._:!_0_..__7_____$0._06!+888:2000 UT_MZBM_PWPJWEM_F_VK*(/\n_\n*+5/_BG_\nUAAITP CG LG_Z__\nP\n_LT/_ARK\nIAIT, N_RTH OFV_!\n_+6_$-9/_!ZFORCE 108\nAT TIMES _NT_MG__,945__4, _ _\n89__\nBOQRTRNVTOAT 0812000_C,4__\n):\n5_$(_,_5 !84') ,__'9\n5__-'__.=+,+:6_!_\n.9_6*.6+_+$.+6._!_$__.=*_:_'4._!_6_8_'_9234'__*_0.+6._++__2\n_-(_=2) -/_0_A, ZHD_JHPYSEM\nEGEBAELY, 4 TO 6, BECOMING VARIABLE 2 TO 4, THEN CYCLONIC__U TO S_\n_MMOS\nM_ZMGSHPYMFBMKPPO_H_H OR VERY ROUGH_AL RAIN AT FIRST IN EAST AND LATER IIZN AEST. GOOM_FYM\nJMWMM__NOYJ__OO__3_(____35_8! )__: )40_'9+7'____.+6_$06___D___U _P_MPMH_MICI__\nX_DKDBQ_$_)OH_W_J_AWL__ALES ARE EXPENTAD IN SOSP_MGJDZ_MVLFSP_\nV_P__-_$__2.2.9+_(EGKLBUK__KJKJQ_KE_ZZ_T_BUB__(_+7_)_ )=7=_4)48888_)4_77-)__9,\n.=995_95_,._)0__4-$7-))6 ')_5 8, , 8, -!534,99,.\nPOOR VISMWCPMHZMJZ_PM+__*(___,0_+__3.\nVRB 1 TO 3, INCR W 2 TO 4 IN N IN AFTERNOON.\nSMOOTH.\nPOOR VIS DUEMHZMJZ_PM+.___/$0__\n\n,6._.__02._+6.0__.\n_6._$9,_6).'!_$_.+6._+2._'+7__3___ ,2 .9$ 94 !43'_ !)92 8, _7)! 9! )89,\n8, '3:9,$ 0-45 9! !48$-6 ,8__5, THEN DECR IN AFTERNOON.\n\nNNNN",
    "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: M zmgshpymfbmkppo h h or very rough al rain at first in east and later iizn aest. goom fym. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "M zmgshpymfbmkppo h h or very rough al rain at first in east and later iizn aest. goom fym",
      "Egebaely, 4 to 6, becoming variable 2 to 4, then cyclonic u to s",
      "Vrb 1 to 3, incr w 2 to 4 in n in afternoon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-04-09 02:33:55 AREA: V",
    "published_at": "2026-04-09 02:33:55",
    "area": "V",
    "message_id": "VA24",
    "text": "ZCZC VA24\n082330 UTC APGM\n_SELLIA MARINA RADIO\n_M_ATA_ _YFM\n _TU__G0)___0\n_+!.*0_KBREE_9_(*(_3:_ROM 08 UNTIL 27 APR 2026, THE UNIT GAIA BLU, __!'_._66_.+:M_PJONZ__L_ER__5__:(______1_$_-$ LATITUDE     LONGITU_E\n12  35 09'12 N  017 41'49 E\n13  35 17'20 N  018 00'00 E\n14  38 00'00 N  018 00'00 E\n15  38 00'00 N V:_ 1 *_0._09,\n_0!._99,_/_9__0(**_7_)5_\n) )__)\n0=_'5 0-6 .-/8_:_._:\n!+.2._!__(+_.__09_2_1_(_B_Q MILE FROM UNITS.\n\nNNNN",
    "clean_text": "ZCZC VA24\n082330 UTC APGM\n_SELLIA MARINA RADIO\n_M_ATA_ _YFM\n_TU__G0)___0\n_+!.*0_KBREE_9_(*(_3:_ROM 08 UNTIL 27 APR 2026, THE UNIT GAIA BLU, __!'_._66_.+:M_PJONZ__L_ER__5__:(______1_$_-$ LATITUDE LONGITU_E\n12 35 09'12 N 017 41'49 E\n13 35 17'20 N 018 00'00 E\n14 38 00'00 N 018 00'00 E\n15 38 00'00 N V:_ 1 *_0._09,\n_0!._99,_/_9__0(**_7_)5_\n) )__)\n0=_'5 0-6 .-/8_:_._:\n!+.2._!__(+_.__09_2_1_(_B_Q MILE FROM UNITS.\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: Sellia marina radio. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sellia marina radio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 61,
    "heading": "2026-04-09 02:33:06 AREA: V",
    "published_at": "2026-04-09 02:33:06",
    "area": "V",
    "message_id": "",
    "text": "ZCZC VA__P_NF__PMG_H_MYM\n_SELLIA MARINA RADIO\nUCOASTAL WARNING NR. 134/26 APR 01   2 RELEASE\nMES_INA STRAIT ZON\n_78=\n+:62((_/3____BBQPJB__K_\n5_1 _9_,___8:3' -,$ 8,!94.-589,.\nSHIP_MAWM_SZHF_JMFMPHYE_XIT FROM THE VTS AREA BEWARE.\nNNNN",
    "clean_text": "ZCZC VA__P_NF__PMG_H_MYM\n_SELLIA MARINA RADIO\nUCOASTAL WARNING NR. 134/26 APR 01 2 RELEASE\nMES_INA STRAIT ZON\n_78=\n+:62((_/3____BBQPJB__K_\n5_1 _9_,___8:3' -,$ 8,!94.-589,.\nSHIP_MAWM_SZHF_JMFMPHYE_XIT FROM THE VTS AREA 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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Italy - Ionian Sea and Strait of Messina. Readable text says: Ucoastal warning nr. 134/26 apr 01 2 release. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ucoastal warning nr. 134/26 apr 01 2 release",
      "Ship mawm szhf jmfmphye xit from the vts area beware",
      "Mes ina strait zon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 62,
    "heading": "2026-04-09 02:31:58 AREA: V",
    "published_at": "2026-04-09 02:31:58",
    "area": "V",
    "message_id": "VA21",
    "text": "ZCZC VA21\n082330 UTC APR 26\nSELLIA MARINA RZ_ONZZN_NZJZMKMZEBMNHB_NHC3__49R_PV_I OF MESSINA - MESSINA (ME)\nON APRIL 9TH, 10TH AND 11TH, 2026, FROM 6:00 TMG TO 16:00 TMG,\nDIVERS WILL OPERATE IN CCY_CSYMYP_MGYWFCJM\nY_MGBH_MG_PHPYPWMZON_ZS_Z_FM_ZF_HM_GOMEM_ - 015 37.192E. TWO RUBBER BOATS WFHDONSF_FHPWM__C_PYLFSFHEM_FSSMLPMFMJJFJHXP_BO_G_PJJPSJMFMHYJFHML_KRNAZE_I_UALLO_U\nZCZC",
    "clean_text": "ZCZC VA21\n082330 UTC APR 26\nSELLIA MARINA RZ_ONZZN_NZJZMKMZEBMNHB_NHC3__49R_PV_I OF MESSINA - MESSINA (ME)\nON APRIL 9TH, 10TH AND 11TH, 2026, FROM 6:00 TMG TO 16:00 TMG,\nDIVERS WILL OPERATE IN CCY_CSYMYP_MGYWFCJM\nY_MGBH_MG_PHPYPWMZON_ZS_Z_FM_ZF_HM_GOMEM_ - 015 37.192E. TWO RUBBER BOATS WFHDONSF_FHPWM__C_PYLFSFHEM_FSSMLPMFMJJFJHXP_BO_G_PJJPSJMFMHYJFHML_KRNAZE_I_UALLO_U\nZCZC",
    "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: Sellia marina rz onzzn nzjzmkmzebmnhb nhc3 49r pv i of messina - messina (me). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sellia marina rz onzzn nzjzmkmzebmnhb nhc3 49r pv i of messina - messina (me)",
      "On april 9th, 10th and 11th, 2026, from 6:00 tmg to 16:00 tmg",
      "Divers will operate in ccy csymyp mgywfcjm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 65,
    "heading": "2026-04-09 02:25:00 AREA: U",
    "published_at": "2026-04-09 02:25:00",
    "area": "U",
    "message_id": "UA90",
    "text": "ZCZC UA90\n08232 G \nC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 172/26 APR 05 ALT\nCENTRAL ADRIATIC SEA - PESCARA.\nFAI_KYEMZ_MHDPMZ_HFXSM\nF_HFZMFWJMJ_JHV_Z_HDPMM_FZ\nMM_SH_ZYBMF_M_P_ZYPAMFM_ZJFHFZ_LAT. 42 46' 02''N - LONG. 014 27' 50''E.\nTRANSITTING VESSELS PLEASE PAY MAXIMUM CAUTION\nNNNN",
    "clean_text": "ZCZC UA90\n08232 G\nC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 172/26 APR 05 ALT\nCENTRAL ADRIATIC SEA - PESCARA.\nFAI_KYEMZ_MHDPMZ_HFXSM\nF_HFZMFWJMJ_JHV_Z_HDPMM_FZ\nMM_SH_ZYBMF_M_P_ZYPAMFM_ZJFHFZ_LAT. 42 46' 02''N - LONG. 014 27' 50''E.\nTRANSITTING VESSELS PLEASE PAY MAXIMUM CAUTION\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: Coastal warning 172/26 apr 05 alt. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning 172/26 apr 05 alt",
      "Transitting vessels please pay maximum caution",
      "Central adriatic sea - pescara"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 66,
    "heading": "2026-04-09 02:24:15 AREA: U",
    "published_at": "2026-04-09 02:24:15",
    "area": "U",
    "message_id": "UA89",
    "text": "ZCZC UA89\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 173/26 APR 07 \nSOUTHERN ADRIATIC SPM_MGLYFWFJF_THE BRINDISI VTS CENTER ISMFMZ_\nZ_PYHF_PMDJPON_YZBM_CB_GSHMHZM_ ZB_ OF 0:.__6=2026,\nTHEREFORE VTS SERVICES CANNOT BE PROVIDED.\n\nNNNN",
    "clean_text": "ZCZC UA89\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 173/26 APR 07\nSOUTHERN ADRIATIC SPM_MGLYFWFJF_THE BRINDISI VTS CENTER ISMFMZ_\nZ_PYHF_PMDJPON_YZBM_CB_GSHMHZM_ ZB_ OF 0:.__6=2026,\nTHEREFORE VTS SERVICES CANNOT BE PROVIDED.\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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Therefore vts services cannot be provided",
      "Coastal warning 173/26 apr 07",
      "Southern adriatic spm mglyfwfjf the brindisi vts center ismfmz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 67,
    "heading": "2026-04-09 02:22:21 AREA: U",
    "published_at": "2026-04-09 02:22:21",
    "area": "U",
    "message_id": "UA87",
    "text": "ZCZC UA87\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 200/26 APR 05\nADRIATIC SEA - VENICEMQONGWEM_HGHDM_YM\nUUE_G6+_.\n7MG_H_ONWCPMHZMSF_FHUO__CD__(*__(('_*___)____0_=2__)6 049=8$3$ 8, =3,8:3 \n_*9,''._6*!_!_.*_!_*._0_6=9,9,9,,888\n_\n+:+: 7-88\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOSTAL WARNING NR. 189/_04 02 (1 RELEASE)\nADRIATIC SEA - VENICE\nUNTIL THE END OF THE NEED\nDUE TO LIMITED OPERATIZNSMX_LFSFH_MF_ZYBHFZMJPY\nF_PONFJMZSEM__Z\nFWPWMFWM_PF_PM\nHJMYPONSSMHYJFHF_MJ_F_JM_P_YPON_XPS__EMXZJHSBKKE3_4BRMXK_OH_E_ONX9__6!'_!+\n'9___/0'\n_3._+*_'._6!_.)4.___(19_(4_,X_ANCEL MY COSHSM_YF_M_\nB_ _Y APR 01\n\nNNNN",
    "clean_text": "ZCZC UA87\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 200/26 APR 05\nADRIATIC SEA - VENICEMQONGWEM_HGHDM_YM\nUUE_G6+_.\n7MG_H_ONWCPMHZMSF_FHUO__CD__(*__(('_*___)____0_=2__)6 049=8$3$ 8, =3,8:3\n_*9,''._6*!_!_.*_!_*._0_6=9,9,9,,888\n_\n+:+: 7-88\n082320 UTC APR 26\nMONDOLFO RADIO\n\nCOSTAL WARNING NR. 189/_04 02 (1 RELEASE)\nADRIATIC SEA - VENICE\nUNTIL THE END OF THE NEED\nDUE TO LIMITED OPERATIZNSMX_LFSFH_MF_ZYBHFZMJPY\nF_PONFJMZSEM__Z\nFWPWMFWM_PF_PM\nHJMYPONSSMHYJFHF_MJ_F_JM_P_YPON_XPS__EMXZJHSBKKE3_4BRMXK_OH_E_ONX9__6!'_!+\n'9___/0'\n_3._+*_'._6!_.)4.___(19_(4_,X_ANCEL MY COSHSM_YF_M_\nB_ _Y APR 01\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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Costal warning nr. 189/ 04 02 (1 release)",
      "Coastal warning nr. 200/26 apr 05",
      "Adriatic sea - venicemqongwem hghdm ym"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 68,
    "heading": "2026-04-09 02:20:57 AREA: T",
    "published_at": "2026-04-09 02:20:57",
    "area": "T",
    "message_id": "",
    "text": "ZC_CMK\nF_\nPIWEWP UTC APR 26\nMONDOLFO RADIO\n\nCOASTALCWARNING NR. 204/26 APR 07\nADRIATIC SEA   CHIOGGIA  \nAREA BOUNDED BY FOLLOWING POINTS:\n  45 12.824_._.\n_U_UU_GPOGPONMM_YH_ _IN  _W WWMRROE\n M_YH\n _BCUPGMMM\n_U_KKLXXEN_RT QWM CGMMM\n_U\nCKMNAZ_M 08TH UNTIL 30TH _YM\nUUE_GL__FBPMDZCYJONWM_PHDPYM_PYBFHHF_ONBITGMW_FW_MXM_FHDMHDPMFWMJCLMZ_PYHZYON_FS_M_YY_MZCHMJPLPWMYPJHZYHFZONJDF_G   FISHING   A_CDZ__PMWMP_PYEMJ_Y/__5_:206__069,__!\n!_1__08050!80_.\nALL TRANSITT__MJ_F_MLP_YPONONONNIII\nZCZC",
    "clean_text": "ZC_CMK\nF_\nPIWEWP UTC APR 26\nMONDOLFO RADIO\n\nCOASTALCWARNING NR. 204/26 APR 07\nADRIATIC SEA CHIOGGIA\nAREA BOUNDED BY FOLLOWING POINTS:\n45 12.824_._.\n_U_UU_GPOGPONMM_YH_ _IN _W WWMRROE\nM_YH\n_BCUPGMMM\n_U_KKLXXEN_RT QWM CGMMM\n_U\nCKMNAZ_M 08TH UNTIL 30TH _YM\nUUE_GL__FBPMDZCYJONWM_PHDPYM_PYBFHHF_ONBITGMW_FW_MXM_FHDMHDPMFWMJCLMZ_PYHZYON_FS_M_YY_MZCHMJPLPWMYPJHZYHFZONJDF_G FISHING A_CDZ__PMWMP_PYEMJ_Y/__5_:206__069,__!\n!_1__08050!80_.\nALL TRANSITT__MJ_F_MLP_YPONONONNIII\nZCZC",
    "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-fallback",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Italy - Adriatic Sea and central Italian coast. Readable text says: Uue gl fbpmdzcyjonwm phdpym pybfhhf onbitgmw fw mxm fhdmhdpmfwmjclmz pyhzyon fs m yy mzchmjplpwmypjhzyhfzonjdf g fishing a cdz pmwmp pyemj y/ 5 :206 069, !. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uue gl fbpmdzcyjonwm phdpym pybfhhf onbitgmw fw mxm fhdmhdpmfwmjclmz pyhzyon fs m yy mzchmjplpwmypjhzyhfzonjdf g fishing a cdz pmwmp pyemj y/ 5 :206 069, !",
      "Coastalcwarning nr. 204/26 apr 07",
      "Ckmnaz m 08th until 30th ym"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 69,
    "heading": "2026-04-09 02:20:16 AREA: T",
    "published_at": "2026-04-09 02:20:16",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMC_FH_NFU__MG_H_MYM\n__O_G_ZWZS_ZMYWFZONON_ZJHSM_YF_M__BMUZTU_M__Y_\nADRIATIC SEA - TRIESTE -\nFROM 080600 UTC APR TO 081800 UTC H_\nUUEONGHYFPJHPM_HJMFJMFM_. (NOT OPERATKJAZCJ_JBD_KJB\n_\n__\n_SI\n _EWARE\n\nNNNN",
    "clean_text": "ZCZCMC_FH_NFU__MG_H_MYM\n__O_G_ZWZS_ZMYWFZONON_ZJHSM_YF_M__BMUZTU_M__Y_\nADRIATIC SEA - TRIESTE -\nFROM 080600 UTC APR TO 081800 UTC H_\nUUEONGHYFPJHPM_HJMFJMFM_. (NOT OPERATKJAZCJ_JBD_KJB\n_\n__\n_SI\n_EWARE\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: Uueonghyfpjhpm hjmfjmfm . (not operatkjazcj jbd kjb. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uueonghyfpjhpm hjmfjmfm . (not operatkjazcj jbd kjb",
      "Adriatic sea - trieste -"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 70,
    "heading": "2026-04-09 02:18:08 AREA: T",
    "published_at": "2026-04-09 02:18:08",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n_0_1 UTC SEP 25\nOOSTENDERADIO MSI 31\n\nBE EEZ\nEXPLOSIVE LOS_ON THE LINE B_ET_MPRN 003-05.47E ONGWM_H_MOOPN 003-03.586_\nJDF_G IS REQUPE_F_NOT TO ANCHOR NOR TO FIS_ THE VICINIT__O\nNG_FFF_C  __UU_AXA_MH__\n071438 UTC APR \nOOSTENDERADFZM_JF\nGJP)\nUNDERWATERPIPELINE __PY_F_WPMPJHLSFJDPWML_EN BEACH \nAND 51-13.2+6_._51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nU_TERPIPELINE LOMBARDSIJWPJPLSFLSFJDPW_WEEN BEACH \nAND POS 51-10.17N 002-45.01E MARKPWONG_YVPW_H NORTH CARDISMLCZEM__1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABO_PM_NG_D_JONG____\nU\n\n\nU\nZCZC",
    "clean_text": "ZCZC TA45\n_0_1 UTC SEP 25\nOOSTENDERADIO MSI 31\n\nBE EEZ\nEXPLOSIVE LOS_ON THE LINE B_ET_MPRN 003-05.47E ONGWM_H_MOOPN 003-03.586_\nJDF_G IS REQUPE_F_NOT TO ANCHOR NOR TO FIS_ THE VICINIT__O\nNG_FFF_C __UU_AXA_MH__\n071438 UTC APR\nOOSTENDERADFZM_JF\nGJP)\nUNDERWATERPIPELINE __PY_F_WPMPJHLSFJDPWML_EN BEACH\nAND 51-13.2+6_._51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nU_TERPIPELINE LOMBARDSIJWPJPLSFLSFJDPW_WEEN BEACH\nAND POS 51-10.17N 002-45.01E MARKPWONG_YVPW_H NORTH CARDISMLCZEM__1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABO_PM_NG_D_JONG____\nU\n\nU\nZCZC",
    "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 reports a pipeline-related hazard near 51-10.17N 002-45.01E with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Jdf g is requpe f not to anchor nor to fis the vicinit o",
      "Shipping is requested not to anchor nor to fish abo pm ng d jong",
      "And pos 51-10.17n 002-45.01e markpwong yvpw h north cardismlczem 1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 73,
    "heading": "2026-04-09 02:13:23 AREA: T",
    "published_at": "2026-04-09 02:13:23",
    "area": "T",
    "message_id": "TA12",
    "text": "ZCZC TA12\n2_19)$ 375: .-4 26\nOOSTENDERADIO MSI 131/26\nTERRITORIAL SEAHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 51-_ -332=, 003-06,817E  UNMARKED\nSHIPPING IS REQUESH_WMHO PAAS_ANCE_ANAMZHMHZM_W_ZAW__A_T_ZCC__ _ 0_102_702 .7\n:\n=OOS_D_OS\nADDER_SI_ _, M5_MB_FJHZP_M_B_TGM_HPMWFMF__P\nMTLHHGBEGQ_KQ_GIZDSGRD_ZP8\n8__8+4_0_:*.2.'0+6___446_..+0/+_0__4_1=3_(1.(19(_-/$_1_3 :-_)3 )-68,__,=_9$03__:*_.)0._+2!206IBBQP_QBEQ_ THEM ABILITY TO MANOEUVRE SHIPPING F_SZ_M__GU_DZ__PM_WMP_PYEMJ_Y/__5_:_2=6___6.__!__$1__,)_!-0/0:9___8+$/___75 :__ZXA__H_ZA\n_\nF __EMG_H_MA_MONPZZQDUEK_I 543/24\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SVD IN FOLLZ_FM_ZJ_N\nH  C_XP G\nM___NIGKL_\n5117.2_  00302.007E\n5116.304N  00259.844E\nJHF_G IS REQUESTED _O_MHZM_DZYMZYMHZM_FJDMFMHDPM\nF_FFH_HNV__9_,'__\n_\n7_7__7__ZCZC",
    "clean_text": "ZCZC TA12\n2_19)$ 375: .-4 26\nOOSTENDERADIO MSI 131/26\nTERRITORIAL SEAHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 51-_ -332=, 003-06,817E UNMARKED\nSHIPPING IS REQUESH_WMHO PAAS_ANCE_ANAMZHMHZM_W_ZAW__A_T_ZCC__ _ 0_102_702 .7\n:\n=OOS_D_OS\nADDER_SI_ _, M5_MB_FJHZP_M_B_TGM_HPMWFMF__P\nMTLHHGBEGQ_KQ_GIZDSGRD_ZP8\n8__8+4_0_:*.2.'0+6___446_..+0/+_0__4_1=3_(1.(19(_-/$_1_3 :-_)3 )-68,__,=_9$03__:*_.)0._+2!206IBBQP_QBEQ_ THEM ABILITY TO MANOEUVRE SHIPPING F_SZ_M__GU_DZ__PM_WMP_PYEMJ_Y/__5_:_2=6___6.__!__$1__,)_!-0/0:9___8+$/___75 :__ZXA__H_ZA\n_\nF __EMG_H_MA_MONPZZQDUEK_I 543/24\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SVD IN FOLLZ_FM_ZJ_N\nH C_XP G\nM___NIGKL_\n5117.2_ 00302.007E\n5116.304N 00259.844E\nJHF_G IS REQUESTED _O_MHZM_DZYMZYMHZM_FJDMFMHDPM\nF_FFH_HNV__9_,'__\n_\n7_7__7__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": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Obstacles on the svd in follz fm zj n. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Obstacles on the svd in follz fm zj n",
      "Territorial seahydrographical instrument established in pos 51- -332 , 003-06,817e unmarked",
      "Jhf g is requested o mhzm dzymzymhzm fjdmfmhdpm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 75,
    "heading": "2026-04-09 02:12:17 AREA: T",
    "published_at": "2026-04-09 02:12:17",
    "area": "T",
    "message_id": "TA21",
    "text": "ZCZC TA21\n011011 UTC \nYONGZZJHPWPYWFZM_JF__ YUT_EONGHJJ_G__OORDHINDER \nSPECIAL PURPOSE BUOY OWFA, W. FL 5S, \n51-41.69N 002-449_:(.0*_)'!*$__U_ANCEL THIS MESSAGE: 151011 UTC APR 26\nNNNN",
    "clean_text": "ZCZC TA21\n011011 UTC\nYONGZZJHPWPYWFZM_JF__ YUT_EONGHJJ_G__OORDHINDER\nSPECIAL PURPOSE BUOY OWFA, W. FL 5S,\n51-41.69N 002-449_:(.0*_)'!*$__U_ANCEL THIS MESSAGE: 151011 UTC APR 26\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: Special purpose buoy owfa, w. fl 5s. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Special purpose buoy owfa, w. fl 5s"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 78,
    "heading": "2026-04-09 02:08:20 AREA: S",
    "published_at": "2026-04-09 02:08:20",
    "area": "S",
    "message_id": "SE01",
    "text": "ZCZC SE01\n082300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nWIND: SOUTHEAJHMLZCHMHB_3KQGEBKSAXDOQOKQDELB(3__12_$WEST LATER_9_1___'JGCNHK_)8__)\n.6!.+6.*$+_06._!__._++_._!*!)!'!__\nLOCALLYVTDCWPYJHZYBJ_BONGJP_NORTHERN PART INCREASING 3 METER.\n\nFRIDAY:\n_F__EASTERN PART FIRST SOUTHEAST 6 TO 7, OTHERWISE WEST 5 TO 6,\nA_ATING.\nVISIBILITY/WEATHER: FIRST RAIN OR SHOWER WITH PARTLY POOR VISIBILITY,\nLATER COASTAL FOG PATCHES.\nSEA: NOR_HPASTERN PART FIRST 3 METER, DECREASING 1,5 METER.\n_9,,(((((((((((((((((((((((((((((___ZCZA2727\n031437 UTC APR\nOOSTENDERADIO MSI \n_YUTWY EEZONGZLQP_HMZMHDPMJPLPWM\nH U_B _G_PWARWMYTE\nSHIPPING REQUESTED NOT TO ANFD_QMZYMHZM_FJDMFMMYWFCJMZ.\n__M_BPHPYMYZCWMHDFJMZL_EC_\nNNNN",
    "clean_text": "ZCZC SE01\n082300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nWIND: SOUTHEAJHMLZCHMHB_3KQGEBKSAXDOQOKQDELB(3__12_$WEST LATER_9_1___'JGCNHK_)8__)\n.6!.+6.*$+_06._!__._++_._!*!)!'!__\nLOCALLYVTDCWPYJHZYBJ_BONGJP_NORTHERN PART INCREASING 3 METER.\n\nFRIDAY:\n_F__EASTERN PART FIRST SOUTHEAST 6 TO 7, OTHERWISE WEST 5 TO 6,\nA_ATING.\nVISIBILITY/WEATHER: FIRST RAIN OR SHOWER WITH PARTLY POOR VISIBILITY,\nLATER COASTAL FOG PATCHES.\nSEA: NOR_HPASTERN PART FIRST 3 METER, DECREASING 1,5 METER.\n_9,,(((((((((((((((((((((((((((((___ZCZA2727\n031437 UTC APR\nOOSTENDERADIO MSI\n_YUTWY EEZONGZLQP_HMZMHDPMJPLPWM\nH U_B _G_PWARWMYTE\nSHIPPING REQUESTED NOT TO ANFD_QMZYMHZM_FJDMFMMYWFCJMZ.\n__M_BPHPYMYZCWMHDFJMZL_EC_\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. This is a weather bulletin; readable sections mention fog, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: first rain or shower with partly poor visibility",
      "Later coastal fog patches",
      "Weatherforecast for german bight"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 81,
    "heading": "2026-04-09 02:05:54 AREA: S",
    "published_at": "2026-04-09 02:05:54",
    "area": "S",
    "message_id": "SA80",
    "text": "ZCZC SA80\nNCC-HAMBUYGON\nP_ PPMGVHXM_Y_\n_NAV. WARN. NO. 189\nEIDER ESTUAGE___N\nJGPFWPY_JMGSF_DHSMAQO_N_ECXQLO_:(_,+$,_3(__1_4,_(__79* )_*$_'.__U_ZDIIIIALL\nO\nOOOOO_OO_ZCZC",
    "clean_text": "ZCZC SA80\nNCC-HAMBUYGON\nP_ PPMGVHXM_Y_\n_NAV. WARN. NO. 189\nEIDER ESTUAGE___N\nJGPFWPY_JMGSF_DHSMAQO_N_ECXQLO_:(_,+$,_3(__1_4,_(__79* )_*$_'.__U_ZDIIIIALL\nO\nOOOOO_OO_ZCZC",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code S. Readable text says: Nav. warn. no. 189. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nav. warn. no. 189",
      "Ncc-hambuygon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 82,
    "heading": "2026-04-09 02:04:00 AREA: S",
    "published_at": "2026-04-09 02:04:00",
    "area": "S",
    "message_id": "SA82",
    "text": "ZCZC SA82\nNCC-HAMBURG\n010630 KH_MYM\n_NAV. WARN. NO_. +_9,__06_.)!_$_\n_._+6_$_0*_06'_.+7.\n*_)62.+_943 1'.\nSURVEY OPERATIONS IN PROGRESS BY MV 'KOMMANDOR ORCA', CS 'MKFI8!,\n,_6+:2._+*!_!+.__6_:):,___,!!+_43'548:53$ .-,93=4-_8)856 $7_!_.+PYHFZJ_BERTH OF 1 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA82\nNCC-HAMBURG\n010630 KH_MYM\n_NAV. WARN. NO_. +_9,__06_.)!_$_\n_._+6_$_0*_06'_.+7.\n*_)62.+_943 1'.\nSURVEY OPERATIONS IN PROGRESS BY MV 'KOMMANDOR ORCA', CS 'MKFI8!,\n,_6+:2._+*!_!+.__6_:):,___,!!+_43'548:53$ .-,93=4-_8)856 $7_!_.+PYHFZJ_BERTH OF 1 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 in progress by mv 'kommandor orca', cs 'mkfi8!",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 83,
    "heading": "2026-04-09 02:03:07 AREA: S",
    "published_at": "2026-04-09 02:03:07",
    "area": "S",
    "message_id": "SA83",
    "text": "ZCZC SA83\nNCC-HAMBURG\n020420 KH__YM\n_NAV. WARN. NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XY_PJONGYZCWM_ZJFHFZM_HYYCPGM_ATINEE\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\nBERTH OF 2 NM REQUESTED_9,_9,,(((((((((((((((((((((((((((((((((((((_ZCZC",
    "clean_text": "ZCZC SA83\nNCC-HAMBURG\n020420 KH__YM\n_NAV. WARN. NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XY_PJONGYZCWM_ZJFHFZM_HYYCPGM_ATINEE\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\nBERTH OF 2 NM REQUESTED_9,_9,,(((((((((((((((((((((((((((((((((((((_ZCZC",
    "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.",
    "decoded_highlights": [
      "Survey operations by mv 'fugro synergy', cs 'c6xy pjongyzcwm zjfhfzm hyycpgm atinee",
      "Restricted manoevrability during operations",
      "Berth of 2 nm requested 9, 9,,((((((((((((((((((((((((((((((((((((( zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 84,
    "heading": "2026-04-09 02:02:11 AREA: S",
    "published_at": "2026-04-09 02:02:11",
    "area": "S",
    "message_id": "SA85",
    "text": "ZCZC SA85\nNCC-HAMBUY_ON\nUE MG_H_R 26\nNAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHOREJL_H_XO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N \n_TRNWE\nRESTRICTED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF 1 NM REQCPJHPW_NNNN",
    "clean_text": "ZCZC SA85\nNCC-HAMBUY_ON\nUE MG_H_R 26\nNAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHOREJL_H_XO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N\n_TRNWE\nRESTRICTED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF 1 NM REQCPJHPW_NNNN",
    "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",
      "BARD OFFSHORE"
    ],
    "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 says: German bight. northwesterly owf 'bard offshorejl h xo survey by.",
    "decoded_highlights": [
      "German bight. northwesterly owf 'bard offshorejl h xo survey by",
      "Restricted manoeuvrability during operations",
      "Mv 'ocean researcher', cs 'gdls' around position"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 85,
    "heading": "2026-04-09 02:01:35 AREA: S",
    "published_at": "2026-04-09 02:01:35",
    "area": "S",
    "message_id": "SA91",
    "text": "ZCZC SA91\nNCC-HAMBURG\n060900 UTCMY_\n_NAV. WARN. NO. 203\nEASTERLY HELIGOLAND.\n 'HELGOLAND-O'  LIGHTBUOY  54-09M  007-53EM_ORARILY REMOVED.\nNNNN",
    "clean_text": "ZCZC SA91\nNCC-HAMBURG\n060900 UTCMY_\n_NAV. WARN. NO. 203\nEASTERLY HELIGOLAND.\n'HELGOLAND-O' LIGHTBUOY 54-09M 007-53EM_ORARILY REMOVED.\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 says: 'helgoland-o' lightbuoy 54-09m 007-53em orarily removed.",
    "decoded_highlights": [
      "'helgoland-o' lightbuoy 54-09m 007-53em orarily removed",
      "Easterly heligoland",
      "Nav. warn. no. 203"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 86,
    "heading": "2026-04-09 02:00:56 AREA: S",
    "published_at": "2026-04-09 02:00:56",
    "area": "S",
    "message_id": "SA92",
    "text": "ZCZC SA92\nNCC-HAMBURG\n08_ _MYM\n__\nNAV. WARN. NH_BMUNY\nEAST FRISIAN ISLANDS. NORDERNEY.\n'NORDNEY' LIGHTHOUSE 53-43N 007-14E\nCHARACTERS CHANGED TO: FL \n QTS\nNNNN",
    "clean_text": "ZCZC SA92\nNCC-HAMBURG\n08_ _MYM\n__\nNAV. WARN. NH_BMUNY\nEAST FRISIAN ISLANDS. NORDERNEY.\n'NORDNEY' LIGHTHOUSE 53-43N 007-14E\nCHARACTERS CHANGED TO: FL\nQTS\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 says: 'nordney' lighthouse 53-43n 007-14e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'nordney' lighthouse 53-43n 007-14e",
      "East frisian islands. norderney",
      "Characters changed to: fl"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 87,
    "heading": "2026-04-09 02:00:14 AREA: T",
    "published_at": "2026-04-09 02:00:14",
    "area": "T",
    "message_id": "",
    "text": "ZDZCZC",
    "clean_text": "ZDZCZC",
    "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": 88,
    "heading": "2026-04-09 02:00:14 AREA: S",
    "published_at": "2026-04-09 02:00:14",
    "area": "S",
    "message_id": "SPTNGPONQHAMBURG",
    "text": "ZCZC SPTNGPONQHAMBURG\n081330 UTC APR 26\nNAV. WARN. NO. 209\nGERMAN BIGHT. HELIGOLAND.\nCARDINALE BUOY 'DUENE-O'  54-10.8N 007-56.1E DPF_HO_GX__J__W0_QPKEBOO-.._04 26\nNNNN",
    "clean_text": "ZCZC SPTNGPONQHAMBURG\n081330 UTC APR 26\nNAV. WARN. NO. 209\nGERMAN BIGHT. HELIGOLAND.\nCARDINALE BUOY 'DUENE-O' 54-10.8N 007-56.1E DPF_HO_GX__J__W0_QPKEBOO-.._04 26\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": "operational notice",
    "subject_code": "P",
    "decoded_summary": "operational notice for Germany - German Bight and German North Sea. Readable text says: Cardinale buoy 'duene-o' 54-10.8n 007-56.1e dpf ho gx j w0 qpkeboo-.. 04 26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Cardinale buoy 'duene-o' 54-10.8n 007-56.1e dpf ho gx j w0 qpkeboo-.. 04 26",
      "German bight. heligoland",
      "Nav. warn. no. 209"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 89,
    "heading": "2026-04-09 01:57:27 AREA: R",
    "published_at": "2026-04-09 01:57:27",
    "area": "R",
    "message_id": "RA23",
    "text": "ZCZC RA23\n082250 UTC _YM\n_LA MADDALENA RADIO\n\nCOSTAVURNAV NR. 041/26 APR 06\nSARDINIA  TYRRHENIAN LA MADDALEON_YZBM\nUPMGSHMZM\nEB_BUUEMGHZM\nU_XPMGSHMZM_ZBYBUUEONGSM_WWSPM\n__GHI_L_\n_MGYZ\nFWPJMJPY\nF_PJZM_DPSM\n_VHF/HF\n\n\nNNNN",
    "clean_text": "ZCZC RA23\n082250 UTC _YM\n_LA MADDALENA RADIO\n\nCOSTAVURNAV NR. 041/26 APR 06\nSARDINIA TYRRHENIAN LA MADDALEON_YZBM\nUPMGSHMZM\nEB_BUUEMGHZM\nU_XPMGSHMZM_ZBYBUUEONGSM_WWSPM\n__GHI_L_\n_MGYZ\nFWPJMJPY\nF_PJZM_DPSM\n_VHF/HF\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Sardinia tyrrhenian la maddaleon yzbm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sardinia tyrrhenian la maddaleon yzbm",
      "Costavurnav nr. 041/26 apr 06",
      "Upmgshmzm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 90,
    "heading": "2026-04-09 01:54:45 AREA: R",
    "published_at": "2026-04-09 01:54:45",
    "area": "R",
    "message_id": "RA21",
    "text": "ZCZC RA21\n082250 UTC APR 26\nLA MADDALENA RADIZON_N_ZJHSM_YFM\n _TU_MT_YM\n_U_V MG_P_PHHFZ_SMGSHONH_YYDPFMJPMHY_CFFM_ZJHM_VG\nH_SONGW_JM\nZ_  _ Y _LXPMM\nCBIXXIB_IXIIXIIX\nIB_L_UC_GGIFLBAPRIL 2026 FROM LOCAL TIME 07.00 UNTIL HALF AN HOUR AFTER SUNSET,\nAF_SMTARRIED OUT A FIRING MILITARY ACTIVITIES IN THE SEA AREA\nNEAR 'PIAN DI SPILLE' FIRING RANGE ON THE COAST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' _NMJGY\nY_JONGLZCWPWML_MHDPM_ZS_Z_FM_ZFHJ_A. 42 16'14''N 011 39'52''E,\nB_.67._3*6_**_.\n_ MP_J_PJJGP_O_GX_W QRSETSSN 011 37'52''E,\nD. 42 13'26''N 011 40'00''E,\nE. 42 15'02''N 011 40'45''E.\nTRANSIT, __$+__0.2.2!*__3_(4B3_2'_,8__9,,888(_\n+:+: 4-22\n082250 UTC APR 26\nLA MADDALENMYWFAZZ_AQ_KBXELKBBRLBGRXHKPOHK3_,1_62!!._.___66$0!.*0._._':___8(__06.04.2026 _59:\n7_/0MGSHMZMIFZ4):_:0__*:_(78(_CBHOO_HNPOHGE_O:_ ),2,_NZMSK_S_F__CHQP VHF/HF\nALL TRANSITING SHIPS BEWARE\n\nNNNN",
    "clean_text": "ZCZC RA21\n082250 UTC APR 26\nLA MADDALENA RADIZON_N_ZJHSM_YFM\n_TU_MT_YM\n_U_V MG_P_PHHFZ_SMGSHONH_YYDPFMJPMHY_CFFM_ZJHM_VG\nH_SONGW_JM\nZ_ _ Y _LXPMM\nCBIXXIB_IXIIXIIX\nIB_L_UC_GGIFLBAPRIL 2026 FROM LOCAL TIME 07.00 UNTIL HALF AN HOUR AFTER SUNSET,\nAF_SMTARRIED OUT A FIRING MILITARY ACTIVITIES IN THE SEA AREA\nNEAR 'PIAN DI SPILLE' FIRING RANGE ON THE COAST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' _NMJGY\nY_JONGLZCWPWML_MHDPM_ZS_Z_FM_ZFHJ_A. 42 16'14''N 011 39'52''E,\nB_.67._3*6_**_.\n_ MP_J_PJJGP_O_GX_W QRSETSSN 011 37'52''E,\nD. 42 13'26''N 011 40'00''E,\nE. 42 15'02''N 011 40'45''E.\nTRANSIT, __$+__0.2.2!*__3_(4B3_2'_,8__9,,888(_\n+:+: 4-22\n082250 UTC APR 26\nLA MADDALENMYWFAZZ_AQ_KBXELKBBRLBGRXHKPOHK3_,1_62!!._.___66$0!.*0._._':___8(__06.04.2026 _59:\n7_/0MGSHMZMIFZ4):_:0__*:_(78(_CBHOO_HNPOHGE_O:_ ),2,_NZMSK_S_F__CHQP VHF/HF\nALL TRANSITING SHIPS BEWARE\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Af smtarried out a firing military activities in the sea area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Af smtarried out a firing military activities in the sea area",
      "Ib l uc ggiflbapril 2026 from local time 07.00 until half an hour after sunset",
      "Near 'pian di spille' firing range on the coast near tarquinia"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 91,
    "heading": "2026-04-09 01:52:45 AREA: R",
    "published_at": "2026-04-09 01:52:45",
    "area": "R",
    "message_id": "RA20",
    "text": "ZCZC RA20\n082250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 MAR 31 (1 REPETATION)\nTYRRHENIAN SEA   LATINA\nDAYS 10,13,14,15,17,20,21,22,24,27,28 AND 29 APRIL 2026\nFROM LOCSMHF_PM\nCBP_MGHZM_ FB_MGWMZM_QYNWE AND 30 APRIL 2026,\nFROM LOCAL TIME 07.30 TO 23.00, __!''.)0._66!02.+:_.._!6__9,_!'!_6_./_!\n!_3.!._$0.*0.60._*_0_$-_NNNKBN3_33:3EL_JA_KJG_PBP\n_VERDE', _)+:202.)_._$0._+'_+_!._!$1_A. 41 27'16''N 012 40'55''E,\nB. 41 22'00''N 012 36'00''E,\nC. 41 14'50''N012 37'52'*P_ONGW_Q PYSRISSN 012 51'46''E,\nE. 41 16'00''N 012 55'00''E,\nF._41 20'30 012 55'50''E,\nG. 41 24'57''N 012 48*0:**_0_9,__1 27'16''N 012 40'55''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PRZDFLFHPWONONNIII_\nZCZC",
    "clean_text": "ZCZC RA20\n082250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 MAR 31 (1 REPETATION)\nTYRRHENIAN SEA LATINA\nDAYS 10,13,14,15,17,20,21,22,24,27,28 AND 29 APRIL 2026\nFROM LOCSMHF_PM\nCBP_MGHZM_ FB_MGWMZM_QYNWE AND 30 APRIL 2026,\nFROM LOCAL TIME 07.30 TO 23.00, __!''.)0._66!02.+:_.._!6__9,_!'!_6_./_!\n!_3.!._$0.*0.60._*_0_$-_NNNKBN3_33:3EL_JA_KJG_PBP\n_VERDE', _)+:202.)_._$0._+'_+_!._!$1_A. 41 27'16''N 012 40'55''E,\nB. 41 22'00''N 012 36'00''E,\nC. 41 14'50''N012 37'52'*P_ONGW_Q PYSRISSN 012 51'46''E,\nE. 41 16'00''N 012 55'00''E,\nF._41 20'30 012 55'50''E,\nG. 41 24'57''N 012 48*0:**_0_9,__1 27'16''N 012 40'55''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PRZDFLFHPWONONNIII_\nZCZC",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchorage and fishing are przdflfhpwononniii. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are przdflfhpwononniii",
      "Coastal warning 018/26 mar 31 (1 repetation)",
      "Days 10,13,14,15,17,20,21,22,24,27,28 and 29 april 2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 92,
    "heading": "2026-04-09 01:50:59 AREA: R",
    "published_at": "2026-04-09 01:50:59",
    "area": "R",
    "message_id": "RA18",
    "text": "ZCZC RA18\n082250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 016/26 MAR 31 (1 REPETATION)\nTYRRHENIAN SEA CIVITAVECCHIA (RM)\nDAYS 9,  _ Y H _XMCBIX_B_CTF_R___=_35_:_*_0+__ _2026 FROM LOCAL TIME 07.00 TO 23._+.__!''.)0._66!8/_+_-_!848,_ .8)85-46 -:58=8583' 8, 5_3 *0.60.06.8__:6)6_*.__!6__9,60_._+._$0._+*_.06._06\n0_06!._.), INCLUDING IN THE ZONE\nDENZ_FHPWM_JG_SN LOCWPWML_MHDPM_AJ_AKGRB_$1_A. 42 00'57''_$ __ISWYSSE,)_9._ _$_*_.__N 012 02'00''E,\nC. 41 55'00''N 011 57'30''E,\nD. 41 58'30''N 011 55'12''E,\n_E. 42 00'28''N 011 58'06''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "clean_text": "ZCZC RA18\n082250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 016/26 MAR 31 (1 REPETATION)\nTYRRHENIAN SEA CIVITAVECCHIA (RM)\nDAYS 9, _ Y H _XMCBIX_B_CTF_R___=_35_:_*_0+__ _2026 FROM LOCAL TIME 07.00 TO 23._+.__!''.)0._66!8/_+_-_!848,_ .8)85-46 -:58=8583' 8, 5_3 *0.60.06.8__:6)6_*.__!6__9,60_._+._$0._+*_.06._06\n0_06!._.), INCLUDING IN THE ZONE\nDENZ_FHPWM_JG_SN LOCWPWML_MHDPM_AJ_AKGRB_$1_A. 42 00'57''_$ __ISWYSSE,)_9._ _$_*_.__N 012 02'00''E,\nC. 41 55'00''N 011 57'30''E,\nD. 41 58'30''N 011 55'12''E,\n_E. 42 00'28''N 011 58'06''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. 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 016/26 mar 31 (1 repetation)",
      "0 06!. .), including in the zone"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 93,
    "heading": "2026-04-09 01:50:16 AREA: R",
    "published_at": "2026-04-09 01:50:16",
    "area": "R",
    "message_id": "RA17",
    "text": "ZCZC RA17\n,N_UHMG_H__YM\n_LA MADDALENA RADIO\n\nCOASTAL WARNING NR. 042/26 APR 07\nSARDINIAN SEA\nIN POSITION:\n38 36.2N - 006 38.4_3\n5_3 043'3,:3 9! - _79_ 8' 4309453$ 63))92 :6)8,$48:-) 285_ !)-'_8,_\n)8__5 -,$ '_)'*9,''._6*!_.*$!(__8KKENZ__ONNIII_\nZCZC",
    "clean_text": "ZCZC RA17\n,N_UHMG_H__YM\n_LA MADDALENA RADIO\n\nCOASTAL WARNING NR. 042/26 APR 07\nSARDINIAN SEA\nIN POSITION:\n38 36.2N - 006 38.4_3\n5_3 043'3,:3 9! - _79_ 8' 4309453$ 63))92 :6)8,$48:-) 285_ !)-'_8,_\n)8__5 -,$ '_)'*9,''._6*!_.*$!(__8KKENZ__ONNIII_\nZCZC",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Coastal warning nr. 042/26 apr 07. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning nr. 042/26 apr 07",
      "Sardinian sea",
      "In position"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 94,
    "heading": "2026-04-09 01:39:36 AREA: Q",
    "published_at": "2026-04-09 01:39:36",
    "area": "Q",
    "message_id": "QE79",
    "text": "ZCZC QE79\nMALIN HEAD COAST GUARD EJM \nSE_CYFHPONGDF_DMJPJMLCSSPHFM_ZY__PHYPM_ ON_FJJCPWMHIIIK_\nUMG_H_MZM_PW_PJ 08 APRIL 20-_._)_._$0._0__+_*!__$0._86__9$ 2000 UTC ON WEDNESDAY 08 APRIL UNT_L _000 ULC OO_TH_RSDAY _HZM_D_X_\nN_RTH_AD_E_QP AT TIMES UNTIL \n_ZIFT_FMF_B_B_ST NO_\nH_TION\nBETWEEN 59 NORT_CA_HQF_J_PQ_WA_XTV\nGENERA\n SYNOPSIS\n_FAT EST 975\nO_N\nZKUSSMYHDPYMIC_Y_SE\n_N R__BHG_B_T FO_ THE NEXT 24 __974' =-)8$.:_!'._ _5XTUUEMGHM_AERN AD \nAT_C:\nNE WIND 12-22 KT, BELOWM_O 30 KT, TWRDS NOON DE RVON 4-14 KT_N BELOW VELEBIT TO 18 KT. 5-_76.++._!2._:6!_.+.9,*0._6_6.___.\n9_)6 $0_6.__62*._$0_6. \nJEA 2-3, IN VELEBIT STRAIT LOC 4, DECR TWRWJMHDPMPWMZW_H_AY. \nVIS 20 KM. \nMOSTLY CLEAR, LOC WITH MZWM_SZ_WE_\nCENTRAL ADRIATIX__O_TD_ WIND 12-24 KT, LOC TO 28 KT, DECC A_ZUND THE N_OMZM_F FMGVH_MV_HPYZZMHCYF_MZMUM\n _UMVKT, LOC TO 24 KT. OVERNIGHT \nWIND _FMHCYF_MZMVM\n__UMGVH_MG_DFSPMZMHDPOW\nKEBKEKB_A*,$ $3:4. \nSEA 2-3, OFFSHORE ON THE S-ERN AREA LOC POSS 4. \nVIS 20 KM. \nMOSTLY CLEAR,.__+_._!__._+2.$6.\n\nS-ERN ADR_AT_DPMZZMWP_YMB_M_F FMGN AFTARNOON TURNING ON NW 10-20 KT, LOC TO 24 KT. OVERNIGHT WIND AGAIN \nTURNING ON NE 10-20 KT.\nSEA 2-3, OFFSHORE LOC POSS 4. \nVIS 20 KM. \nMOSTLY CLEAR,._'+/._!__$ :)97$6.NONNIIIC_M_WESTCZMZY_PHF.)*!0$._'0*.60_\n906_02.!.''.+_$06.60*888_9\n5_9,__7_\n_29_00011. __/.9_6/$.\n7UEHHON_L_\n_MBPDJM__M_DBZH_D TO KEEP A SHARP_LOOV__ A_DM_P_II_T SIGHH_HJ_MALINHEAD COUARD _F 2_2_(_+894::_16\n\nDTG: 30 1040 UTC MARCH _\n_JM\nCNNC\n_\n__ZL_UD_B__JMYDPB_U\nZCZC",
    "clean_text": "ZCZC QE79\nMALIN HEAD COAST GUARD EJM\nSE_CYFHPONGDF_DMJPJMLCSSPHFM_ZY__PHYPM_ ON_FJJCPWMHIIIK_\nUMG_H_MZM_PW_PJ 08 APRIL 20-_._)_._$0._0__+_*!__$0._86__9$ 2000 UTC ON WEDNESDAY 08 APRIL UNT_L _000 ULC OO_TH_RSDAY _HZM_D_X_\nN_RTH_AD_E_QP AT TIMES UNTIL\n_ZIFT_FMF_B_B_ST NO_\nH_TION\nBETWEEN 59 NORT_CA_HQF_J_PQ_WA_XTV\nGENERA\nSYNOPSIS\n_FAT EST 975\nO_N\nZKUSSMYHDPYMIC_Y_SE\n_N R__BHG_B_T FO_ THE NEXT 24 __974' =-)8$.:_!'._ _5XTUUEMGHM_AERN AD\nAT_C:\nNE WIND 12-22 KT, BELOWM_O 30 KT, TWRDS NOON DE RVON 4-14 KT_N BELOW VELEBIT TO 18 KT. 5-_76.++._!2._:6!_.+.9,*0._6_6.___.\n9_)6 $0_6.__62*._$0_6.\nJEA 2-3, IN VELEBIT STRAIT LOC 4, DECR TWRWJMHDPMPWMZW_H_AY.\nVIS 20 KM.\nMOSTLY CLEAR, LOC WITH MZWM_SZ_WE_\nCENTRAL ADRIATIX__O_TD_ WIND 12-24 KT, LOC TO 28 KT, DECC A_ZUND THE N_OMZM_F FMGVH_MV_HPYZZMHCYF_MZMUM\n_UMVKT, LOC TO 24 KT. OVERNIGHT\nWIND _FMHCYF_MZMVM\n__UMGVH_MG_DFSPMZMHDPOW\nKEBKEKB_A*,$ $3:4.\nSEA 2-3, OFFSHORE ON THE S-ERN AREA LOC POSS 4.\nVIS 20 KM.\nMOSTLY CLEAR,.__+_._!__._+2.$6.\n\nS-ERN ADR_AT_DPMZZMWP_YMB_M_F FMGN AFTARNOON TURNING ON NW 10-20 KT, LOC TO 24 KT. OVERNIGHT WIND AGAIN\nTURNING ON NE 10-20 KT.\nSEA 2-3, OFFSHORE LOC POSS 4.\nVIS 20 KM.\nMOSTLY CLEAR,._'+/._!__$ :)97$6.NONNIIIC_M_WESTCZMZY_PHF.)*!0$._'0*.60_\n906_02.!.''.+_$06.60*888_9\n5_9,__7_\n_29_00011. __/.9_6/$.\n7UEHHON_L_\n_MBPDJM__M_DBZH_D TO KEEP A SHARP_LOOV__ A_DM_P_II_T SIGHH_HJ_MALINHEAD COUARD _F 2_2_(_+894::_16\n\nDTG: 30 1040 UTC MARCH _\n_JM\nCNNC\n_\n__ZL_UD_B__JMYDPB_U\nZCZC",
    "resolved_station_name": "Malin Head",
    "resolved_country": "Ireland",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North-west approaches to Ireland",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MALIN HEAD"
    ],
    "display_region_heading": "Ireland - North-west approaches to Ireland",
    "display_region_label": "Malin Head, Ireland",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Ireland - North-west approaches to Ireland. Readable text says: Jea 2-3, in velebit strait loc 4, decr twrwjmhdpmpwmzw h ay. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Jea 2-3, in velebit strait loc 4, decr twrwjmhdpmpwmzw h ay",
      "Central adriatix o td wind 12-24 kt, loc to 28 kt, decc a zund the n omzm f fmgvh mv hpyzzmhcyf mzmum",
      "Sea 2-3, offshore on the s-ern area loc poss 4"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 96,
    "heading": "2026-04-09 01:30:41 AREA: T",
    "published_at": "2026-04-09 01:30:41",
    "area": "T",
    "message_id": "",
    "text": "ZC_C__YY_NU  UP_GC_PR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWIN__IFWMHCY_QBWT_G_GL_GN_\nWUAU_WJPM__ZZYWON\nH__Y_PG_M\n_POMIE HNI4 FOGHORN INOPERATIVE\nN\nH_YY_ZG_M\n_QWMWE HNF4 UNLIT\n\nHZSSWJPM_CJHMACFWON\nHU __UG_PRAPYMTE HZZ6 UNLIT\n52-22.6/, \n_11.3E HZX2 UNLIT\n52-11.4N 004-00.9E HZR FOGHORN INOPERATIVE\n\nCANCEL MSI 302/25\n\nNNNN",
    "clean_text": "ZC_C__YY_NU UP_GC_PR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWIN__IFWMHCY_QBWT_G_GL_GN_\nWUAU_WJPM__ZZYWON\nH__Y_PG_M\n_POMIE HNI4 FOGHORN INOPERATIVE\nN\nH_YY_ZG_M\n_QWMWE HNF4 UNLIT\n\nHZSSWJPM_CJHMACFWON\nHU __UG_PRAPYMTE HZZ6 UNLIT\n52-22.6/,\n_11.3E HZX2 UNLIT\n52-11.4N 004-00.9E HZR FOGHORN INOPERATIVE\n\nCANCEL MSI 302/25\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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "52-11.4n 004-00.9e hzr foghorn inoperative",
      "Pomie hni4 foghorn inoperative",
      "Northsea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 97,
    "heading": "2026-04-09 01:29:57 AREA: P",
    "published_at": "2026-04-09 01:29:57",
    "area": "P",
    "message_id": "PA52",
    "text": "ZCZC PA52\n081444 U\n_ BNKQRON_SI 115-_9,__**.+_.\n'!0'29,*:6\n0__+PYHFZJMFM_YZYPJJML_MONCJ\nM___EAO_E_CBGMO_49''8,_ _**.+__.\n__JK_BZ_SNDKLB_NKCEXLB_0/_8_$-)_8!_____)_,4=4_3\n3':9453$ _6 _= -):02+.$_44 \nW BE BERTH REQUESTED\nNNNN",
    "clean_text": "ZCZC PA52\n081444 U\n_ BNKQRON_SI 115-_9,__**.+_.\n'!0'29,*:6\n0__+PYHFZJMFM_YZYPJJML_MONCJ\nM___EAO_E_CBGMO_49''8,_ _**.+__.\n__JK_BZ_SNDKLB_NKCEXLB_0/_8_$-)_8!_____)_,4=4_3\n3':9453$ _6 _= -):02+.$_44\nW BE BERTH REQUESTED\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: W be berth requested. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "W be berth requested"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 98,
    "heading": "2026-04-09 01:29:07 AREA: O",
    "published_at": "2026-04-09 01:29:07",
    "area": "O",
    "message_id": "OA33",
    "text": "ZCZC OA33\nMAHTARADIO TELEMARTES\nSUMMARY OF DRILLING RFYJMC_WH_WO_ TUEMM_EGE_AR MJ__LECU_RKKKEHLB/.:_:____-_-,_+/-_.+(_DB_LB_HCQCRHA___E_GER__QGB_QN_(3_QPQPBSG_GGSLI_P_V_IC_N\n_PTM N_ZCZC",
    "clean_text": "ZCZC OA33\nMAHTARADIO TELEMARTES\nSUMMARY OF DRILLING RFYJMC_WH_WO_ TUEMM_EGE_AR MJ__LECU_RKKKEHLB/.:_:____-_-,_+/-_.+(_DB_LB_HCQCRHA___E_GER__QGB_QN_(3_QPQPBSG_GGSLI_P_V_IC_N\n_PTM N_ZCZC",
    "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: Mahtaradio telemartes. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mahtaradio telemartes"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 99,
    "heading": "2026-04-09 01:26:49 AREA: O",
    "published_at": "2026-04-09 01:26:49",
    "area": "O",
    "message_id": "OA35",
    "text": "ZCZC OA35\nNTM NO 51/26 \nREMOVAL OF WRECK FROMMSZMO_TA SAHMF\n_MQZ_GXO_FHONONZY_MMJMWMEZ_GUBU3_PYJM_WOZKRQB_ESSELS THHMHDPMYPX_MBWM__AJJA TA SANTA MA!1___/+9 8' _38,_ 43.9=3$.THIS WILL TAKE PLACE BETW__CPJW_M_CGHDM_YFBH_UAMGWM_YFSM\n _GHDM_YF_M\nUUEBONONGHDPM_ZYVM_FSSMLPM_YQFPMCHML_MWF_PYJMWM_SSMLPBKQQ1_5_ 5_3 =3''3)' '3- 3/043**_!!.2.*0(9,3,01__(8_(_*_'_UG__(0UOB_BJ_QMPOEN 01_77098,5 _)\n\nVESSELS ARE ADVISPWMHDHMZMQBIKEBDD\n_BRJA_(_______''3) 28)\n _ -))923$ 59.0_06._$0.+__D_UDK_AXO_Z___JMBBD_GC\nEMM_M\nDV\n_E  _ COOP_IATE WS\nN DD_X_ZHY_S_AM_BP,,__+_\n\nZCZC",
    "clean_text": "ZCZC OA35\nNTM NO 51/26\nREMOVAL OF WRECK FROMMSZMO_TA SAHMF\n_MQZ_GXO_FHONONZY_MMJMWMEZ_GUBU3_PYJM_WOZKRQB_ESSELS THHMHDPMYPX_MBWM__AJJA TA SANTA MA!1___/+9 8' _38,_ 43.9=3$.THIS WILL TAKE PLACE BETW__CPJW_M_CGHDM_YFBH_UAMGWM_YFSM\n_GHDM_YF_M\nUUEBONONGHDPM_ZYVM_FSSMLPM_YQFPMCHML_MWF_PYJMWM_SSMLPBKQQ1_5_ 5_3 =3''3)' '3- 3/043**_!!.2.*0(9,3,01__(8_(_*_'_UG__(0UOB_BJ_QMPOEN 01_77098,5 _)\n\nVESSELS ARE ADVISPWMHDHMZMQBIKEBDD\n_BRJA_(_______''3) 28)\n_ -))923$ 59.0_06._$0.+__D_UDK_AXO_Z___JMBBD_GC\nEMM_M\nDV\n_E _ COOP_IATE WS\nN DD_X_ZHY_S_AM_BP,,__+_\n\nZCZC",
    "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: Removal of wreck frommszmo ta sahmf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Removal of wreck frommszmo ta sahmf",
      "Vessels are advispwmhdhmzmqbikebdd"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 100,
    "heading": "2026-04-09 01:23:55 AREA: O",
    "published_at": "2026-04-09 01:23:55",
    "area": "O",
    "message_id": "OA32",
    "text": "ZCZC OA32\nNAVIGATINAL WARNING NR19/26\n\nLOST ANCHOR AND CHAIN.\nCHAIN IS LAID ALONG THE LINE FROM POINT A TO POINT B,\nFOUL AREA - KEEP A SAFE DISTANCE \n\nPOS_Z_M_DZ_M\nG_$9(_BDK_MK_NH_BP___I\nG___-_7 -,:_94 (POINT B) 35-57.231N 014096E\nOONNIIIK\nZCAMMZP_Y_NGH_M_M\nYT___T_ZSFHDMJC\nPEVAFHDFM_SHPWPXHI_RX_S__MHPYJONON_TM\nBK_HF__LMGHDPMJCY\nP_MFJ_J__MWFMHZMLPSJ_B_BDXB C___BRW_ EXCEPTD TO BE COMPL_TED BY SUNDEM__G_KJZTXV_XM_IZ_AJ-2*3_ 9=+!:.:_!'!-0..60_+__'__+PYHPWM\nP_DFSPMHZMYP_ZYWMJ\nLPWMWHMFMHDPMY_K_NG THE SURVEYS, THE U_\nPEM__JJPSMAF_M\n_B6482) WILL BE RESTRICTED IN HER ABILITY TO MANEUVER. VESJPSM_JHPYJMZ_PYHF_MFMHDPB____1_(3BEXXQ_U___L_G\nLV_NV_G_EN IT ISZZ_JWZZH_\nMASTERS AND OPERATORJVZ._0**0'*.60.2_!*02._00.(91_(3__*_975 -,$ ,\n!____5__-7589, -5 -!3 '033$_.___0_.7___=*_)_)_8_0__JHYC_HFZJM_FPMLEM\nD._\n _._+6./$\n _._)3._'_.__*.+6._.0+____BKEL_QB_LB__,_BZ__DW_QOQBKG_JBSNDUCH_WM_M_MHDPM_SHPJPMHPYYFHZYFSM_HPYJ_NN\nHI_\nZCZC",
    "clean_text": "ZCZC OA32\nNAVIGATINAL WARNING NR19/26\n\nLOST ANCHOR AND CHAIN.\nCHAIN IS LAID ALONG THE LINE FROM POINT A TO POINT B,\nFOUL AREA - KEEP A SAFE DISTANCE\n\nPOS_Z_M_DZ_M\nG_$9(_BDK_MK_NH_BP___I\nG___-_7 -,:_94 (POINT B) 35-57.231N 014096E\nOONNIIIK\nZCAMMZP_Y_NGH_M_M\nYT___T_ZSFHDMJC\nPEVAFHDFM_SHPWPXHI_RX_S__MHPYJONON_TM\nBK_HF__LMGHDPMJCY\nP_MFJ_J__MWFMHZMLPSJ_B_BDXB C___BRW_ EXCEPTD TO BE COMPL_TED BY SUNDEM__G_KJZTXV_XM_IZ_AJ-2*3_ 9=+!:.:_!'!-0..60_+__'__+PYHPWM\nP_DFSPMHZMYP_ZYWMJ\nLPWMWHMFMHDPMY_K_NG THE SURVEYS, THE U_\nPEM__JJPSMAF_M\n_B6482) WILL BE RESTRICTED IN HER ABILITY TO MANEUVER. VESJPSM_JHPYJMZ_PYHF_MFMHDPB____1_(3BEXXQ_U___L_G\nLV_NV_G_EN IT ISZZ_JWZZH_\nMASTERS AND OPERATORJVZ._0**0'*.60.2_!*02._00.(91_(3__*_975 -,$ ,\n!____5__-7589, -5 -!3 '033$_.___0_.7___=*_)_)_8_0__JHYC_HFZJM_FPMLEM\nD._\n_._+6./$\n_._)3._'_.__*.+6._.0+____BKEL_QB_LB__,_BZ__DW_QOQBKG_JBSNDUCH_WM_M_MHDPM_SHPJPMHPYYFHZYFSM_HPYJ_NN\nHI_\nZCZC",
    "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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lost anchor and chain",
      "B6482) will be restricted in her ability to maneuver. vesjpsm jhpyjmz pyhf mfmhdpb 1 (3bexxq u l g",
      "Lpwmwhmfmhdpmy k ng the surveys, the u"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 103,
    "heading": "2026-04-09 01:12:05 AREA: N",
    "published_at": "2026-04-09 01:12:05",
    "area": "N",
    "message_id": "NA43",
    "text": "ZCZC NA43\n,YKUEABMOTB_\nP_\nNORWEGIAMMN\nWARNING 137/2026\n  CHART 35\n  AREA HUSTADVIKA OG FUGLELEIA\nSTOPLAN, NEDRE LIGHT 62-58.17N 007-00.64E IS UNLIT.\nNNNN",
    "clean_text": "ZCZC NA43\n,YKUEABMOTB_\nP_\nNORWEGIAMMN\nWARNING 137/2026\nCHART 35\nAREA HUSTADVIKA OG FUGLELEIA\nSTOPLAN, NEDRE LIGHT 62-58.17N 007-00.64E IS UNLIT.\nNNNN",
    "resolved_station_name": "Orlandet",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Norwegian Sea and central Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUSTADVIKA"
    ],
    "display_region_heading": "Norway - Norwegian Sea and central Norwegian coast",
    "display_region_label": "Orlandet, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - Norwegian Sea and central Norwegian coast. Readable text says: Stoplan, nedre light 62-58.17n 007-00.64e is unlit.",
    "decoded_highlights": [
      "Stoplan, nedre light 62-58.17n 007-00.64e is unlit",
      "Ykueabmotb",
      "Norwegiammn"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 104,
    "heading": "2026-04-09 01:11:15 AREA: N",
    "published_at": "2026-04-09 01:11:15",
    "area": "N",
    "message_id": "NB90",
    "text": "ZCZC NB90\n081857 UTC APR 26\nNORWEGIAN GALE WARNING NO 243\n  MAALOEY - SVINOEY\nWEDNESDAY EVENING SOUTH GALE FORCE 8, OCCASIONALLY SEVERE GALE FORCE 9, DECREASING THURSDAYOREORENOON. FROM THURSDAY AFTERNOON SOUTHERLY NEAR GALE FORCE 7, OCCASIONALLY GALE FORCE 8, DECREASING _N THE EVENING.\n\nNNNN",
    "clean_text": "ZCZC NB90\n081857 UTC APR 26\nNORWEGIAN GALE WARNING NO 243\nMAALOEY - SVINOEY\nWEDNESDAY EVENING SOUTH GALE FORCE 8, OCCASIONALLY SEVERE GALE FORCE 9, DECREASING THURSDAYOREORENOON. FROM THURSDAY AFTERNOON SOUTHERLY NEAR GALE FORCE 7, OCCASIONALLY GALE FORCE 8, DECREASING _N THE EVENING.\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: Wednesday evening south gale force 8, occasionally severe gale force 9, decreasing thursdayoreorenoon. from thursday afternoon southerly near gale force 7, occasionally gale force 8, decreasing n the evening.",
    "decoded_highlights": [
      "Wednesday evening south gale force 8, occasionally severe gale force 9, decreasing thursdayoreorenoon. from thursday afternoon southerly near gale force 7, occasionally gale force 8, decreasing n the evening",
      "Norwegian gale warning no 243",
      "Maaloey - svinoey"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 105,
    "heading": "2026-04-09 01:10:10 AREA: N",
    "published_at": "2026-04-09 01:10:10",
    "area": "N",
    "message_id": "NB91",
    "text": "ZCZC NB91\n082144 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX389/2026\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 8.4.2026 AT 22 UTC\nEAST-TAMPEN: S SEV GALE 9 FM WED 22UTC TO FRI 02UTC\nSTOREGGAGE_ SEVSEV GALE 9 FM WED 22UTC TO FRI 04UTC\nFROEYA BANK: SW OCC GALE 8 FM THU 00UTC TO 10UTC\nSTOREGGA-HALTEN BANK TO GREENWICH MERIDIAN: S GALE 8 FM THU 02UTC TO FRI 01UTC\n\nNNNN",
    "clean_text": "ZCZC NB91\n082144 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX389/2026\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 8.4.2026 AT 22 UTC\nEAST-TAMPEN: S SEV GALE 9 FM WED 22UTC TO FRI 02UTC\nSTOREGGAGE_ SEVSEV GALE 9 FM WED 22UTC TO FRI 04UTC\nFROEYA BANK: SW OCC GALE 8 FM THU 00UTC TO 10UTC\nSTOREGGA-HALTEN BANK TO GREENWICH MERIDIAN: S GALE 8 FM THU 02UTC TO FRI 01UTC\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: East-tampen: s sev gale 9 fm wed 22utc to fri 02utc.",
    "decoded_highlights": [
      "East-tampen: s sev gale 9 fm wed 22utc to fri 02utc",
      "Storeggage sevsev gale 9 fm wed 22utc to fri 04utc",
      "Froeya bank: sw occ gale 8 fm thu 00utc to 10utc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 107,
    "heading": "2026-04-09 01:01:42 AREA: M",
    "published_at": "2026-04-09 01:01:42",
    "area": "M",
    "message_id": "",
    "text": "ZCZC MA_UH_NH_UPEBZVBBYM\n_DANFJDMCELBKLBX_\nDENMARK. KATTEGAT. SKAGEN INNER HARBOUR.9,_0_6_0_)__1,___.(_I_RS_GTHX_\nGA-)__,__4 0-''-_3.\nNNNN",
    "clean_text": "ZCZC MA_UH_NH_UPEBZVBBYM\n_DANFJDMCELBKLBX_\nDENMARK. KATTEGAT. SKAGEN INNER HARBOUR.9,_0_6_0_)__1,___.(_I_RS_GTHX_\nGA-)__,__4 0-''-_3.\nNNNN",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code M. Readable text says: Danfjdmcelbklbx. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Danfjdmcelbklbx"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 108,
    "heading": "2026-04-09 00:56:21 AREA: L",
    "published_at": "2026-04-09 00:56:21",
    "area": "L",
    "message_id": "LA19",
    "text": "ZCZC LA19\n072028 UTC _YM\n_NORWEGIAN NAV. WARNING 141/2026\n  CHART 28\n  AREA FROEYSJOEEN N. GULEN\nTER__A NEDRE LEADING LIGHT 61-45.12N 005-08.40E IS UNLIT.\n_\n\n\n\n_+:+: )-17\n051236 UTC APR 26\nDANISH NAV WARN 189/26\nDENMARK. K__AT. SKAGEN INNER HARBOUR.\nEHY_AMFM_ZJ\n_MHCYP_ 010-35.5E\nCLOSED FOR PASSAGE.\nNONNI_I_ZCA_MS_\n_EQPIPE UTC MAR 26\nDANISH NAV WRHM_XWY\n DENMARK LIIM FIOYWMS_MYPDE\n2M DH ESH OERVED\n5_-_,_0___-1/.51EV_!+0)___1\n8_75+\n\n6_=_\n_\n\n=___+:+:.__\n __1020 UTC MAR 26\nDANISH NAV WARN 154/26\nDENMARK. LIIM FIORD. LAGSTAR RENDE.\nDPHD_M\nP__GBMZLJPY_PWMLPH_PPON\nH_KDMXLBN_:.__,+/D_KD_ALO_:.(._,_9,,(((((((((((((((((__7\n7_77_\n7__+:+: ._25\n0821_,8,_ ,9. GX389/2026\nISSUED BY NORWEH_METEOROLOGICAL IJHFHCHPM\nFB_BUUEMGHM_UTC\nFISHER: SE GALE 8 FM THU 18UTC TO FRI 00UTC\n\nNNNN",
    "clean_text": "ZCZC LA19\n072028 UTC _YM\n_NORWEGIAN NAV. WARNING 141/2026\nCHART 28\nAREA FROEYSJOEEN N. GULEN\nTER__A NEDRE LEADING LIGHT 61-45.12N 005-08.40E IS UNLIT.\n_\n\n_+:+: )-17\n051236 UTC APR 26\nDANISH NAV WARN 189/26\nDENMARK. K__AT. SKAGEN INNER HARBOUR.\nEHY_AMFM_ZJ\n_MHCYP_ 010-35.5E\nCLOSED FOR PASSAGE.\nNONNI_I_ZCA_MS_\n_EQPIPE UTC MAR 26\nDANISH NAV WRHM_XWY\nDENMARK LIIM FIOYWMS_MYPDE\n2M DH ESH OERVED\n5_-_,_0___-1/.51EV_!+0)___1\n8_75+\n\n6_=_\n_\n\n=___+:+:.__\n__1020 UTC MAR 26\nDANISH NAV WARN 154/26\nDENMARK. LIIM FIORD. LAGSTAR RENDE.\nDPHD_M\nP__GBMZLJPY_PWMLPH_PPON\nH_KDMXLBN_:.__,+/D_KD_ALO_:.(._,_9,,(((((((((((((((((__7\n7_77_\n7__+:+: ._25\n0821_,8,_ ,9. GX389/2026\nISSUED BY NORWEH_METEOROLOGICAL IJHFHCHPM\nFB_BUUEMGHM_UTC\nFISHER: SE GALE 8 FM THU 18UTC TO FRI 00UTC\n\nNNNN",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORWEGIAN NAV WARNING"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - South-west Norwegian coast. Readable text says: Ter a nedre leading light 61-45.12n 005-08.40e is unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ter a nedre leading light 61-45.12n 005-08.40e is unlit",
      "Fisher: se gale 8 fm thu 18utc to fri 00utc",
      "Norwegian nav. warning 141/2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 109,
    "heading": "2026-04-09 00:55:49 AREA: L",
    "published_at": "2026-04-09 00:55:49",
    "area": "L",
    "message_id": "LA20",
    "text": "ZCZC LA20\n072028 UTCMYM\n__ONGZYUP_FM\n_ 142/2026\n  CHART 28\n  AREA FROEYSJOEEN N. GULEN\nTERNOEYNA KHNPR LEADING LIGHT 61_8N 005-08.36E IS UNLIT.\nNNNN",
    "clean_text": "ZCZC LA20\n072028 UTCMYM\n__ONGZYUP_FM\n_ 142/2026\nCHART 28\nAREA FROEYSJOEEN N. GULEN\nTERNOEYNA KHNPR LEADING LIGHT 61_8N 005-08.36E IS UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code L. Readable text says: Ternoeyna khnpr leading light 61 8n 005-08.36e is unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ternoeyna khnpr leading light 61 8n 005-08.36e is unlit",
      "Area froeysjoeen n. gulen"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 110,
    "heading": "2026-04-09 00:55:21 AREA: L",
    "published_at": "2026-04-09 00:55:21",
    "area": "L",
    "message_id": "LA21",
    "text": "ZCZC LA21\n080703 UTC APR 26\nDANISH NAV WARN 194/26\nDENMARK.\nDGPS-STATION SKAGEN 296__=__$-_,_XKRE_LO/:,_/_,_60'!)$,_\n\nNNNN",
    "clean_text": "ZCZC LA21\n080703 UTC APR 26\nDANISH NAV WARN 194/26\nDENMARK.\nDGPS-STATION SKAGEN 296__=__$-_,_XKRE_LO/:,_/_,_60'!)$,_\n\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code L. Readable text says: Danish nav warn 194/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Danish nav warn 194/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 111,
    "heading": "2026-04-09 00:54:53 AREA: L",
    "published_at": "2026-04-09 00:54:53",
    "area": "L",
    "message_id": "",
    "text": "ZCZC LA__W\nPIQPTE UTC APR 26\nNOR_E_IAN N_\n_NING 144_6\n  CHART 23\n,.._60_$_0'_0__+209,_'0*!.'!_$__\n_0.59N 004-53.37E IS UNLIT.\nNNNN",
    "clean_text": "ZCZC LA__W\nPIQPTE UTC APR 26\nNOR_E_IAN N_\n_NING 144_6\nCHART 23\n,.._60_$_0'_0__+209,_'0*!.'!_$__\n_0.59N 004-53.37E IS UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code L. Readable text says: Piqpte utc apr 26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Piqpte utc apr 26",
      "0.59n 004-53.37e is unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 112,
    "heading": "2026-04-09 00:51:48 AREA: L",
    "published_at": "2026-04-09 00:51:48",
    "area": "L",
    "message_id": "LB27",
    "text": "ZCZC LB27\n081857 UTC APR 26\nNORWEGIAN GALE WARNING NO 2439_\n._*_29,_$:6*_3._+6!_/(_3 7, THURSDEM_ZYPZZMF_YPJFM_S_M_ZYXPM\nF_MGSHPMHDCYJW_MP\nP__M_SIONALLY STRONG GALE FORCE 9.\n  OBRESTAD - KY_ZPEO_M LATE _ITEQ_A_P\nPM__SBUTHAST NEAR GL_M_ZY_PM\nCMGSHPMH_C__EM_ZYFSM__YPJK_MSS_M_Z_TNBN9__34)6 '549,_ _-)3 !94:3 9.\n  KARMOEY - SLHHPYZP_ONUPWPJW_MP\nP__MJZCHDMPYM_SPM_ZYXPM\nC\nEK__OD_XE_IKP__EGEB_5=KQGEB_SIONALLY GALE FORCE 8. IMHDPMP_PM_VZF__FZSS_MJDEARBEK_N__U_JU_ZCZC",
    "clean_text": "ZCZC LB27\n081857 UTC APR 26\nNORWEGIAN GALE WARNING NO 2439_\n._*_29,_$:6*_3._+6!_/(_3 7, THURSDEM_ZYPZZMF_YPJFM_S_M_ZYXPM\nF_MGSHPMHDCYJW_MP\nP__M_SIONALLY STRONG GALE FORCE 9.\nOBRESTAD - KY_ZPEO_M LATE _ITEQ_A_P\nPM__SBUTHAST NEAR GL_M_ZY_PM\nCMGSHPMH_C__EM_ZYFSM__YPJK_MSS_M_Z_TNBN9__34)6 '549,_ _-)3 !94:3 9.\nKARMOEY - SLHHPYZP_ONUPWPJW_MP\nP__MJZCHDMPYM_SPM_ZYXPM\nC\nEK__OD_XE_IKP__EGEB_5=KQGEB_SIONALLY GALE FORCE 8. IMHDPMP_PM_VZF__FZSS_MJDEARBEK_N__U_JU_ZCZC",
    "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-fallback",
    "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: Ek od xe ikp egeb 5 kqgeb sionally gale force 8. imhdpmp pm vzf fzss mjdearbek n u ju zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ek od xe ikp egeb 5 kqgeb sionally gale force 8. imhdpmp pm vzf fzss mjdearbek n u ju zczc",
      "P m sionally strong gale force 9",
      "Norwegian gale warning no 2439"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 113,
    "heading": "2026-04-09 00:51:19 AREA: L",
    "published_at": "2026-04-09 00:51:19",
    "area": "L",
    "message_id": "LA15",
    "text": "ZCZC LA15\n082006 UTC APR 26\nDANISH NAV WARN 195/269,_20+__=_'(-_344-(. HIRTSHALS HARBOUR.\n_*_6)+_62.$2.'!_*_96 57-36.1N\n009-57.1E UNLIT.\nNNNN",
    "clean_text": "ZCZC LA15\n082006 UTC APR 26\nDANISH NAV WARN 195/269,_20+__=_'(-_344-(. HIRTSHALS HARBOUR.\n_*_6)+_62.$2.'!_*_96 57-36.1N\n009-57.1E UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code L. 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": 114,
    "heading": "2026-04-09 00:50:10 AREA: L",
    "published_at": "2026-04-09 00:50:10",
    "area": "L",
    "message_id": "LB28",
    "text": "ZCZC LB28\n082144 UT_ KONXQONNORW_\nZ\n__WARNINGVNZ_GX389/202\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 8.4.2026 AT 22 UTC\nFISHER: SE GALE 8 FM THU 18UTC TO F_I 00UT_\nSOUTH UTSIIE: SE SEV GALE 9 FM THU 07UTC TO FRI 03UTC\nNORTH UTSIRE: S SEV GALE 9 FM THU 04UTC TO FRI 02UTC\nVF___O FM WED -_____.__._6!_\n_\n3-'5-TAMPEN: S SEV GALE 9 FM WED 22UTC T_M_YF_UTC\nNONNIII_\n_ZCZC",
    "clean_text": "ZCZC LB28\n082144 UT_ KONXQONNORW_\nZ\n__WARNINGVNZ_GX389/202\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 8.4.2026 AT 22 UTC\nFISHER: SE GALE 8 FM THU 18UTC TO F_I 00UT_\nSOUTH UTSIIE: SE SEV GALE 9 FM THU 07UTC TO FRI 03UTC\nNORTH UTSIRE: S SEV GALE 9 FM THU 04UTC TO FRI 02UTC\nVF___O FM WED -_____.__._6!_\n_\n3-'5-TAMPEN: S SEV GALE 9 FM WED 22UTC T_M_YF_UTC\nNONNIII_\n_ZCZC",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code L. Readable text says: Fisher: se gale 8 fm thu 18utc to f i 00ut. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fisher: se gale 8 fm thu 18utc to f i 00ut",
      "South utsiie: se sev gale 9 fm thu 07utc to fri 03utc",
      "North utsire: s sev gale 9 fm thu 04utc to fri 02utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 115,
    "heading": "2026-04-09 00:42:59 AREA: K",
    "published_at": "2026-04-09 00:42:59",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO\n_AVIGATION CHANGPJ\nNGFJIII_ANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO\n_AVIGATION CHANGPJ\nNGFJIII_ANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\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 50-32.80N 000-57.80E.",
    "decoded_highlights": [
      "Ngfjiii ansmitter out of service - light unlit",
      "Avurnav cherbourg 26/26",
      "Dover - dst manche est"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 116,
    "heading": "2026-04-09 00:41:46 AREA: K",
    "published_at": "2026-04-09 00:41:46",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nHG_LYVJO_G_LSPMS_FO_G_CD-___4_)9_____9_.$__==5_(39H_HFSM_CYHDPYMZHF_PONGZM_FJD__TRA_LING,._260_73_ZCZI GB28\nGALE WAR__M_PWPQ__K\nFF\nHK3__KXABMD_Z__K3_1*__Q_PGUCEASED\nENNNN",
    "clean_text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nHG_LYVJO_G_LSPMS_FO_G_CD-___4_)9_____9_.$__==5_(39H_HFSM_CYHDPYMZHF_PONGZM_FJD__TRA_LING,._260_73_ZCZI GB28\nGALE WAR__M_PWPQ__K\nFF\nHK3__KXABMD_Z__K3_1*__Q_PGUCEASED\nENNNN",
    "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": [
      "CAYEUX SUR MER",
      "WIGHT LARGE CAYEUX SUR MER"
    ],
    "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: Gale war m pwpq k. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale war m pwpq k",
      "Wight - large cayeux-sur-mer"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 117,
    "heading": "2026-04-09 00:41:12 AREA: K",
    "published_at": "2026-04-09 00:41:12",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLFIK\n_DHMLCZEM_MGSF_DHMCSFHONGLEZEM_FY_MJCWON\nH _U BUG_PWAQUMP_GPONG\nF_H_M_FHAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLFIK\n_DHMLCZEM_MGSF_DHMCSFHONGLEZEM_FY_MJCWON\nH _U BUG_PWAQUMP_GPONG\nF_H_M_FHAUTION\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 says: Avurnav cherbourg 029/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Avurnav cherbourg 029/26",
      "Dover - dst manche est",
      "Aids to navigation changes"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 118,
    "heading": "2026-04-09 00:40:16 AREA: K",
    "published_at": "2026-04-09 00:40:16",
    "area": "K",
    "message_id": "KA40",
    "text": "ZCZC KA40\nAVURNAV CHERBOURG 40/26\nWIGHT - D82\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nFROM 110730 UHCMYM\n_TO 11 _MG_H_MYM\n_AREA BOUNDED BY:\n49-59.92N \n_K UQNHC_NFF_ARPMUI__ \nN_GGK_HCZ_NEACKNH)9_(._0(_:_9-34.72N 000-55.12W\nNAVIGATE WITH CAUTION\n2. CANCEL THIS MSG VQQQTPP UTC APR 26\nNNNN",
    "clean_text": "ZCZC KA40\nAVURNAV CHERBOURG 40/26\nWIGHT - D82\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nFROM 110730 UHCMYM\n_TO 11 _MG_H_MYM\n_AREA BOUNDED BY:\n49-59.92N\n_K UQNHC_NFF_ARPMUI__\nN_GGK_HCZ_NEACKNH)9_(._0(_:_9-34.72N 000-55.12W\nNAVIGATE WITH CAUTION\n2. CANCEL THIS MSG VQQQTPP UTC APR 26\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 says: 1. firing exercise. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. firing exercise",
      "2. cancel this msg vqqqtpp utc apr 26",
      "Avurnav cherbourg 40/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 119,
    "heading": "2026-04-09 00:29:08 AREA: J",
    "published_at": "2026-04-09 00:29:08",
    "area": "J",
    "message_id": "JA12",
    "text": "ZCZC JA12\n18160 _(__(_)__0'__\n__/ -+:_$___(*_06.)'_!__+888(_$43$_8,_\nMAINTENAN_GRESS IN _GID__PI\nUVPGVLCUMOE\n55-43.7N 020-05.2E\n=5_43.7_ _21-_5.7_-*E\n55-_3.6N 021-05.5E\n55-_3.5N 02_-0_.4E_ESSELS ARE ADV\n_O__\nQ\nZKK__KNW_TQ_WYPW_F_SELS MUSTM_AJM_IIIINIMUM\n_N WO_ARE IN PRO_S.\nALL _JS_RO _C\n__N_7___(_BU_B_DB_V__ZTZ___E__C_KOB_OBK___WA_WJ__AF_XM__20140_222___-_279__ __,_(_0_(-___SGUN__\n__ZCZC",
    "clean_text": "ZCZC JA12\n18160 _(__(_)__0'__\n__/ -+:_$___(*_06.)'_!__+888(_$43$_8,_\nMAINTENAN_GRESS IN _GID__PI\nUVPGVLCUMOE\n55-43.7N 020-05.2E\n=5_43.7_ _21-_5.7_-*E\n55-_3.6N 021-05.5E\n55-_3.5N 02_-0_.4E_ESSELS ARE ADV\n_O__\nQ\nZKK__KNW_TQ_WYPW_F_SELS MUSTM_AJM_IIIINIMUM\n_N WO_ARE IN PRO_S.\nALL _JS_RO _C\n__N_7___(_BU_B_DB_V__ZTZ___E__C_KOB_OBK___WA_WJ__AF_XM__20140_222___-_279__ __,_(_0_(-___SGUN__\n__ZCZC",
    "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: Uvpgvlcumoe. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uvpgvlcumoe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 120,
    "heading": "2026-04-09 00:28:13 AREA: J",
    "published_at": "2026-04-09 00:28:13",
    "area": "J",
    "message_id": "JA26",
    "text": "ZCZC JA26\n \n_NAV WARN 050/+*=5\nSOU_MLSHF_ONTJBMP_ E__R_IS\nJ_\nP U _G_H_M_\nIN AREA TPM_ZYYFS_MW__PYZCJMHZMJDX__F_MLY_YU_N\nHHC_MPPN 020-08.00E 55-20.00N 020-25.00E\n55-07.60N 020-25._0E 55-07.60N _PW_APIMPPE\nCAN_P_V_AGE 302200 UTC APR\nNNNN",
    "clean_text": "ZCZC JA26\n\n_NAV WARN 050/+*=5\nSOU_MLSHF_ONTJBMP_ E__R_IS\nJ_\nP U _G_H_M_\nIN AREA TPM_ZYYFS_MW__PYZCJMHZMJDX__F_MLY_YU_N\nHHC_MPPN 020-08.00E 55-20.00N 020-25.00E\n55-07.60N 020-25._0E 55-07.60N _PW_APIMPPE\nCAN_P_V_AGE 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: Hhc mppn 020-08.00e 55-20.00n 020-25.00e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Hhc mppn 020-08.00e 55-20.00n 020-25.00e",
      "55-07.60n 020-25. 0e 55-07.60n pw apimppe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 122,
    "heading": "2026-04-09 00:26:02 AREA: Q",
    "published_at": "2026-04-09 00:26:02",
    "area": "Q",
    "message_id": "",
    "text": "ZCZC Q__UFO__ H\n__OMGCHXM_YONONG_S__YWM\nM_Y_M_HUT_EO_ONGJA__W_Q_E_B_KQ\nSHIPS EXERCISES 312100 UTC MAR THRU 30__0MGVHUP_BKEKBDN_4(__1__84_0_+.*$!__ _4-117\n55-54.00N 019-03.00E 55-30.00M_PAQTMPPE\n55-_6_,!_,=,.50N 020-06.00E\n54-57.50N 019-55.00E 54-50.,G_QOATPMPPE\n54-50.00__19-25.00E\nCANCEL THI_M_PJE_QN\n_U_PP UTC APR\nN_NN\n\n_ZCZC",
    "clean_text": "ZCZC Q__UFO__ H\n__OMGCHXM_YONONG_S__YWM\nM_Y_M_HUT_EO_ONGJA__W_Q_E_B_KQ\nSHIPS EXERCISES 312100 UTC MAR THRU 30__0MGVHUP_BKEKBDN_4(__1__84_0_+.*$!__ _4-117\n55-54.00N 019-03.00E 55-30.00M_PAQTMPPE\n55-_6_,!_,=,.50N 020-06.00E\n54-57.50N 019-55.00E 54-50.,G_QOATPMPPE\n54-50.00__19-25.00E\nCANCEL THI_M_PJE_QN\n_U_PP UTC APR\nN_NN\n\n_ZCZC",
    "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: 55-54.00n 019-03.00e 55-30.00m paqtmppe. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "55-54.00n 019-03.00e 55-30.00m paqtmppe",
      "54-57.50n 019-55.00e 54-50.,g qoatpmppe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 124,
    "heading": "2026-04-09 00:23:57 AREA: J",
    "published_at": "2026-04-09 00:23:57",
    "area": "J",
    "message_id": "JA38",
    "text": "ZCZC JA38\n_740 UTC APR\nLITHUANIAN NAV AY_M_XWY\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA  ENHYHQ_ENUE_IQ_LD__ROGREFJMFMJPUEM_ZK_J_F_WITHIN AREA\nBOUNDED BY:\n55-43.79N 021-Y_PZGPON_HHYP_CCTM\n_ YB__55-43.72N 021-04.48E\n55-43.74N 021-04.36E.\nMARINERS ARE ADVISEWMHZM\nF_H_M_FH_M_CHFZMFMHDPMYPBKUZ_FVONTACTM\nHJM_ZYM_CYHDPYMF__ATION.\nNNNN",
    "clean_text": "ZCZC JA38\n_740 UTC APR\nLITHUANIAN NAV AY_M_XWY\nSOUTH-EASTERN BALTIC\nAPPROACHES TO PORT KLAIPEDA ENHYHQ_ENUE_IQ_LD__ROGREFJMFMJPUEM_ZK_J_F_WITHIN AREA\nBOUNDED BY:\n55-43.79N 021-Y_PZGPON_HHYP_CCTM\n_ YB__55-43.72N 021-04.48E\n55-43.74N 021-04.36E.\nMARINERS ARE ADVISEWMHZM\nF_H_M_FH_M_CHFZMFMHDPMYPBKUZ_FVONTACTM\nHJM_ZYM_CYHDPYMF__ATION.\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: Approaches to port klaipeda enhyhq enue iq ld rogrefjmfmjpuem zk j f within area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Approaches to port klaipeda enhyhq enue iq ld rogrefjmfmjpuem zk j f within area",
      "Lithuanian nav ay m xwy",
      "South-eastern baltic"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-04-09 00:20:48 AREA: J",
    "published_at": "2026-04-09 00:20:48",
    "area": "J",
    "message_id": "JA43",
    "text": "ZCZC JA43\n012201 U__\nH___. \nGEOTOZ__AL WORKS BY VESSEL RAMFORM VANGUARD / C6JF5 MMSI: 311001861 \nIN AREA BOUNDED BY PSN:\n55_30.94_$.\n_-04.66E  55-28._:_017-04.15E \n55-26.60N 017-07.74E  55-25.73N 017-12.81E \n5__9_, 017-23.97E  55-27.15N 017-28.2__1.9,_$_,_/.)_/_:,)POB_017-27.53E \n_5-35.22N 0177__!GP_M_HH_P_N 017-12.88E \n55-30.94N 017-04.66E \nWIDE BERTH REQUESTED AT LEAST 1.0 NM.\nNNNN",
    "clean_text": "ZCZC JA43\n012201 U__\nH___.\nGEOTOZ__AL WORKS BY VESSEL RAMFORM VANGUARD / C6JF5 MMSI: 311001861\nIN AREA BOUNDED BY PSN:\n55_30.94_$.\n_-04.66E 55-28._:_017-04.15E\n55-26.60N 017-07.74E 55-25.73N 017-12.81E\n5__9_, 017-23.97E 55-27.15N 017-28.2__1.9,_$_,_/.)_/_:,)POB_017-27.53E\n_5-35.22N 0177__!GP_M_HH_P_N 017-12.88E\n55-30.94N 017-04.66E\nWIDE BERTH REQUESTED AT LEAST 1.0 NM.\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: Geotoz al works by vessel ramform vanguard / c6jf5 mmsi: 311001861. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Geotoz al works by vessel ramform vanguard / c6jf5 mmsi: 311001861",
      "Wide berth requested at least 1.0 nm",
      "In area bounded by psn"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 128,
    "heading": "2026-04-09 00:19:55 AREA: J",
    "published_at": "2026-04-09 00:19:55",
    "area": "J",
    "message_id": "JA45",
    "text": "ZCZC JA45\n__PHYMGCH_MYO_G_PYBMO\nWESTERN BAL\n_V_NORTH OF DARSSER ORT.\nSUFOPERATIZ_M_OBNPOB_N_ONEER / C6BH3',\nIN AREA__LALMTN 012-_6.2E\n_4-40.5_EYMEN 01-45.+7_9\n__0*__!_5_7_\nZCZC",
    "clean_text": "ZCZC JA45\n__PHYMGCH_MYO_G_PYBMO\nWESTERN BAL\n_V_NORTH OF DARSSER ORT.\nSUFOPERATIZ_M_OBNPOB_N_ONEER / C6BH3',\nIN AREA__LALMTN 012-_6.2E\n_4-40.5_EYMEN 01-45.+7_9\n__0*__!_5_7_\nZCZC",
    "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: Western bal. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Western bal",
      "V north of darsser ort"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 131,
    "heading": "2026-04-09 00:17:09 AREA: J",
    "published_at": "2026-04-09 00:17:09",
    "area": "J",
    "message_id": "JA59",
    "text": "ZCZC JA59\n081100 _ -04 26\nGERMAN NA_ _ARN 208/26\nWESTERN BALTIC. BIGHT OF MECKLENBURG.\nGEOPHYSICAL SURVEYS CONDUCTED \nBY MV 'MIRANDA' CS '/__:__2_\nAROUND PSN 54_6G__QWAPP_\n_O\n__PJJPSMHZ_FM_PJCYF_MFW__RX__B_Q_EL_BE_Q_E__IBKIBJKS_3_3___1_)__!_345_ 9! 0,_ _:_!_'._!'0.60_:0*__2__9\n__/0'.9+($__(*_((3_3_)_OCGXLLLRIUIIA__ZCZC",
    "clean_text": "ZCZC JA59\n081100 _ -04 26\nGERMAN NA_ _ARN 208/26\nWESTERN BALTIC. BIGHT OF MECKLENBURG.\nGEOPHYSICAL SURVEYS CONDUCTED\nBY MV 'MIRANDA' CS '/__:__2_\nAROUND PSN 54_6G__QWAPP_\n_O\n__PJJPSMHZ_FM_PJCYF_MFW__RX__B_Q_EL_BE_Q_E__IBKIBJKS_3_3___1_)__!_345_ 9! 0,_ _:_!_'._!'0.60_:0*__2__9\n__/0'.9+($__(*_((3_3_)_OCGXLLLRIUIIA__ZCZC",
    "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: Geophysical surveys conducted. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Geophysical surveys conducted",
      "German na arn 208/26",
      "Western baltic. bight of mecklenburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 132,
    "heading": "2026-04-09 00:12:47 AREA: H",
    "published_at": "2026-04-09 00:12:47",
    "area": "H",
    "message_id": "HE22",
    "text": "ZCZC HE22\n082000 UTC APR 26\nIRAKLEIO RADIO/WEATHER FORECAST\nPART 1\nWARNING NONA\nPART 2\n:__06_.*_+WDNOVER CAT_PY\nLS\nXPYVG+_\n37_ \n=_.,_(_\n3__.9__\n__:(___-+__:=!_81_81252.:__843_(:,_93_ZCZC",
    "clean_text": "ZCZC HE22\n082000 UTC APR 26\nIRAKLEIO RADIO/WEATHER FORECAST\nPART 1\nWARNING NONA\nPART 2\n:__06_.*_+WDNOVER CAT_PY\nLS\nXPYVG+_\n37_\n=_.,_(_\n3__.9__\n__:(___-+__:=!_81_81252.:__843_(:,_93_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": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Greece - Eastern Mediterranean and Crete. Readable forecast text says: Irakleio radio/weather forecast. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Irakleio radio/weather forecast",
      "Warning nona"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 133,
    "heading": "2026-04-09 00:11:53 AREA: H",
    "published_at": "2026-04-09 00:11:53",
    "area": "H",
    "message_id": "HA06",
    "text": "ZCZC HA06\n081755 UTC APR 26\nIRAKLEIO RADIO NAVWARN 268/26\nSOUTH EAST CRETAN SEA\nMAINTENANCE AWMYPXZ__YEMZ.9,*:)_6!0._)'0.+_06_!+__ _3 :-4483$ 975 _6 ./V 'MAASVLIET'\nFYZBM_CM__YM\n_UNTIL FURTHER NOTICE\nIN THE LINE BETWEEN THE POINTS:\n34-0_N 028-25.18E\n34-26.32N 02_-29.49_\nIAFETY _ISTANCE DEKUIRE__U _C_AZCZC",
    "clean_text": "ZCZC HA06\n081755 UTC APR 26\nIRAKLEIO RADIO NAVWARN 268/26\nSOUTH EAST CRETAN SEA\nMAINTENANCE AWMYPXZ__YEMZ.9,*:)_6!0._)'0.+_06_!+__ _3 :-4483$ 975 _6 ./V 'MAASVLIET'\nFYZBM_CM__YM\n_UNTIL FURTHER NOTICE\nIN THE LINE BETWEEN THE POINTS:\n34-0_N 028-25.18E\n34-26.32N 02_-29.49_\nIAFETY _ISTANCE DEKUIRE__U _C_AZCZC",
    "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": [
      "Until further notice",
      "In the line between the points",
      "Irakleio radio navwarn 268/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 135,
    "heading": "2026-04-09 00:06:50 AREA: G",
    "published_at": "2026-04-09 00:06:50",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 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 53-12.5n 001-25.6e unlit.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 136,
    "heading": "2026-04-09 00:06:13 AREA: G",
    "published_at": "2026-04-09 00:06:13",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND FARM. \n1. TURBINE FOG SIGNALS INOPER_F_PI_KK\nXMONG_D01, 53-20.1N 0_,___4_\n_.9,_)BHP/)9_KM_MLON_:_$-_,B_M CANCEL WZ 5_/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK WIND FARM.\n1. TURBINE FOG SIGNALS INOPER_F_PI_KK\nXMONG_D01, 53-20.1N 0_,___4_\n_.9,_)BHP/)9_KM_MLON_:_$-_,B_M CANCEL WZ 5_/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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. turbine fog signals inoper f pi kk",
      "Race bank wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 137,
    "heading": "2026-04-09 00:05:41 AREA: G",
    "published_at": "2026-04-09 00:05:41",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N \n_A_WATOMQE USFHMWMSSM_FWJMFZ_PYHF\nP_BO_\n_CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N\n_A_WATOMQE USFHMWMSSM_FWJMFZ_PYHF\nP_BO_\n_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 northwestwards. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Orwell gas field northwestwards",
      "1. met mast 53-10.7n",
      "Cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 138,
    "heading": "2026-04-09 00:05:11 AREA: G",
    "published_at": "2026-04-09 00:05:11",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMLV__M_\n GD_PJ_CYMZYHDM_JM_FP_W_\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMLV__M_\nGD_PJ_CYMZYHDM_JM_FP_W_\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\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: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 139,
    "heading": "2026-04-09 00:04:46 AREA: G",
    "published_at": "2026-04-09 00:04:46",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDS__MMO_GBY__XR. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDS__MMO_GBY__XR.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR.\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-04.4n 001-27.8w off air"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 140,
    "heading": "2026-04-09 00:03:55 AREA: G",
    "published_at": "2026-04-09 00:03:55",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMOJHYHZYM_F_M_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 DEMOJHYHZYM_F_M_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 demojhyhzym f m yb turbine b10 55-06.8n 001-23.6w unlit and fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 141,
    "heading": "2026-04-09 00:03:22 AREA: G",
    "published_at": "2026-04-09 00:03:22",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n_1. PLATFORM 49/27_02.__0_0_3_)9,_::_12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. CANCERVWZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n_1. PLATFORM 49/27_02.__0_0_3_)9,_::_12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCERVWZ 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: 1. platform 49/27 02. 0 0 3 )9, :: 12.6e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/27 02. 0 0 3 )9, :: 12.6e, unlit and all navaids inoperative",
      "Leman gas field",
      "2. cancervwz 100/26 (ga52)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 142,
    "heading": "2026-04-09 00:02:52 AREA: G",
    "published_at": "2026-04-09 00:02:52",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\n_WZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (\nFS_ONGONNIII_ZCZC",
    "clean_text": "ZCZC GA04\n_WZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (\nFS_ONGONNIII_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.2w off air",
      "Mrcc shetland",
      "2. cancel wz 213/26 ("
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 143,
    "heading": "2026-04-09 00:02:21 AREA: G",
    "published_at": "2026-04-09 00:02:21",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-  _+_/.\n_U_K_U_E, FOG UMFSMF_ZFPYBO\n_M CAN_PSM_AM\n__TUJ KGA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53- _+_/.\n_U_K_U_E, FOG UMFSMF_ZFPYBO\n_M CAN_PSM_AM\n__TUJ KGA54).\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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "U k u e, fog umfsmf zfpybo",
      "Bessemer gas field",
      "1. platform 49/23e, 53- /"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 144,
    "heading": "2026-04-09 00:01:56 AREA: G",
    "published_at": "2026-04-09 00:01:56",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E CIIIUMSSM_FWJMFZ_PYHF\nP_BONGONNIII_ZCZC",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 002-05.8E CIIIUMSSM_FWJMFZ_PYHF\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": [
      "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 53-11.0n 002-05.8e ciiiumssm fwjmfz pyhf.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e ciiiumssm fwjmfz pyhf",
      "Inner bank",
      "P bongonniii zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 145,
    "heading": "2026-04-09 00:01:21 AREA: G",
    "published_at": "2026-04-09 00:01:21",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \n+9,_+_!\n943 28,$ !-4.. \n1_._):+11_._85: \nA. N1 __8_08.1N 002-09.5__\nB. E5 54-51.5N 002-20.7E. \n2. CANCEL WZ 95/26 (GA50). \nNIII_NIII_ZCZC",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\n+9,_+_!\n943 28,$ !-4..\n1_._):+11_._85:\nA. N1 __8_08.1N 002-09.5__\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (GA50).\nNIII_NIII_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": [
      "DOGGER"
    ],
    "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: 2. cancel wz 95/26 (ga50). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 146,
    "heading": "2026-04-09 00:00:45 AREA: G",
    "published_at": "2026-04-09 00:00:45",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\n_AM\n_Y_T_\nFORTH. \nNEART NA GAOITHE WINDFARM. \n1. NNG E BUOY 56-14.3N :02-08.6W ANWM_MJMLCZ_OIHPCMKLB::_-_(_(1___C___AB__NKOHTKTG_KONMNGHKPO_ONNIII_ZCZC",
    "clean_text": "ZCZC GA18\n_AM\n_Y_T_\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N :02-08.6W ANWM_MJMLCZ_OIHPCMKLB::_-_(_(1___C___AB__NKOHTKTG_KONMNGHKPO_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. Readable text says: 1. nng e buoy 56-14.3n :02-08.6w anwm mjmlcz oihpcmklb:: - ( (1 c ab nkohtktg konmnghkpo onniii zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n :02-08.6w anwm mjmlcz oihpcmklb:: - ( (1 c ab nkohtktg konmnghkpo onniii zczc",
      "Neart na gaoithe windfarm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 1,
    "heading": "2026-04-08 23:55:11 AREA: F",
    "published_at": "2026-04-08 23:55:11",
    "area": "F",
    "message_id": "",
    "text": "ZCZC FA_7\n_1049 UTM __V\nBAOLIC SEA NA_ WARN _43/25\n_BALTIC _CEVINFO_MA\nAON\nVESSELS BOOD FOCCZYHJ_JCR_PN\n ABDE_W\nXE_HVKDR_ZCD_ZUHU_254/26 \nVIKK_\nBERYL OIL FIELD. \n1. _)_6_'.__BUOY 59-31.7__.\n_ P_IIKPBHGPMHP_ARILY REMOVED. \n\n_:-,:3)._-.\n_6_5_3.=_\n!7'_.9,_9,,_88__ZCZC",
    "clean_text": "ZCZC FA_7\n_1049 UTM __V\nBAOLIC SEA NA_ WARN _43/25\n_BALTIC _CEVINFO_MA\nAON\nVESSELS BOOD FOCCZYHJ_JCR_PN\nABDE_W\nXE_HVKDR_ZCD_ZUHU_254/26\nVIKK_\nBERYL OIL FIELD.\n1. _)_6_'.__BUOY 59-31.7__.\n_ P_IIKPBHGPMHP_ARILY REMOVED.\n\n_:-,:3)._-.\n_6_5_3.=_\n!7'_.9,_9,,_88__ZCZC",
    "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: Baolic sea na warn 43/25. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Baolic sea na warn 43/25",
      "Vessels bood focczyhj jcr pn",
      "Beryl oil field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-04-08 23:53:05 AREA: F",
    "published_at": "2026-04-08 23:53:05",
    "area": "F",
    "message_id": "FA02",
    "text": "ZCZC FA02\n298!0!._:_/._69,_0_06*):6_.\n._6_ )_6_5_EASTERN GULF OF FISWONJ_FJO___.-4 5_47 30_100 UTC APR\nIN AREA TEMPORARILY DANGEROU _LMJDF_G\n59- 3_,_-53.43N 027-09.63E\n5+-'_9_=__\n_09.63E 59-46_47 _._-(H_PHGPON_XPSMHDFJM_PJ__PM\nPUU_G_H_MYONONNIIIU_CZC FA80\n071144 KHXM_Y_NNWD_(_)(__(_-7_'.)',(_$____3KKE_____((19(\nI\nKQ_B_R_BP_BB_GI__UMETE\nNAVIGATE WITH CAUTION.\n_U__U_____J_OO_AXAXM_' _90.)00.7_$26 _+9,_\n!+__._(_,.\nNNNN",
    "clean_text": "ZCZC FA02\n298!0!._:_/._69,_0_06*):6_.\n._6_ )_6_5_EASTERN GULF OF FISWONJ_FJO___.-4 5_47 30_100 UTC APR\nIN AREA TEMPORARILY DANGEROU _LMJDF_G\n59- 3_,_-53.43N 027-09.63E\n5+-'_9_=__\n_09.63E 59-46_47 _._-(H_PHGPON_XPSMHDFJM_PJ__PM\nPUU_G_H_MYONONNIIIU_CZC FA80\n071144 KHXM_Y_NNWD_(_)(__(_-7_'.)',(_$____3KKE_____((19(\nI\nKQ_B_R_BP_BB_GI__UMETE\nNAVIGATE WITH CAUTION.\n_U__U_____J_OO_AXAXM_' _90.)00.7_$26 _+9,_\n!+__._(_,.\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. Readable text says: In area temporarily dangerou lmjdf g. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "In area temporarily dangerou lmjdf g",
      "Navigate with caution"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-04-08 23:47:17 AREA: E",
    "published_at": "2026-04-08 23:47:17",
    "area": "E",
    "message_id": "EA21",
    "text": "ZCZC EA21\nWZ 182/26 \n,_':23\nSPANIEL BUOYC\n1-3_.1N 004-39.7W UNLIT_NN\n\nKKKKKKKKKKKKKKKK__ K_T\nTRGNU___\n_CZC FA69\n021059 UTC JUL\nBALTIC SEA NAV WARN\nUETUN_N_JZCHD__U___A_W__LK_IGILR_GI_Q__LVUC_IP_GP_L__PW\nH_IZD Z__:_*_,\n__8)$190_)_,)6\n0=)_8:) ____ )=\n_\n_=\n!__6,:_!_1BHEKUKEBKIE OBSERVED IN AREA.\n /_6!06*.2_!*02._+.0_06/!*\n__(/$-__(___0430-43$ !94 ,-=8_-58+,,'.:__*\n_9_,:3) _-)58: _,-= 2-6_._5\n_7_,,9,,888_\nZCZC",
    "clean_text": "ZCZC EA21\nWZ 182/26\n,_':23\nSPANIEL BUOYC\n1-3_.1N 004-39.7W UNLIT_NN\n\nKKKKKKKKKKKKKKKK__ K_T\nTRGNU___\n_CZC FA69\n021059 UTC JUL\nBALTIC SEA NAV WARN\nUETUN_N_JZCHD__U___A_W__LK_IGILR_GI_Q__LVUC_IP_GP_L__PW\nH_IZD Z__:_*_,\n__8)$190_)_,)6\n0=)_8:) ____ )=\n_\n_=\n!__6,:_!_1BHEKUKEBKIE OBSERVED IN AREA.\n/_6!06*.2_!*02._+.0_06/!*\n__(/$-__(___0430-43$ !94 ,-=8_-58+,,'.:__*\n_9_,:3) _-)58: _,-= 2-6_._5\n_7_,,9,,888_\nZCZC",
    "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": [
      "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 buoyc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Spaniel buoyc",
      "! 6,: ! 1bhekukebkie observed in area",
      "1-3 .1n 004-39.7w unlit nn"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 6,
    "heading": "2026-04-08 23:46:56 AREA: E",
    "published_at": "2026-04-08 23:46:56",
    "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": 7,
    "heading": "2026-04-08 23:46:36 AREA: E",
    "published_at": "2026-04-08 23:46:36",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\n _A_\n ZUT_EMONGSCWE\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT..\n,.9,_\n\nZCZC",
    "clean_text": "ZCZC EA27\n_A_\nZUT_EMONGSCWE\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT..\n,.9,_\n\nZCZC",
    "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",
      "Zut emongscwe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-04-08 23:46:12 AREA: E",
    "published_at": "2026-04-08 23:46:12",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/\n2__2 '. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/\n2__2 '.\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": 9,
    "heading": "2026-04-08 23:45:48 AREA: E",
    "published_at": "2026-04-08 23:45:48",
    "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": 10,
    "heading": "2026-04-08 23:44:55 AREA: E",
    "published_at": "2026-04-08 23:44:55",
    "area": "E",
    "message_id": "EA54",
    "text": "ZCZC EA54\n_WTQXWY \nFASTNET. \nGREAT SALTEE SOUTHWARDS. \nCONINGBEG BUOY 52-03.2N 006-38.6W OFF STHFZ_NNNN",
    "clean_text": "ZCZC EA54\n_WTQXWY\nFASTNET.\nGREAT SALTEE SOUTHWARDS.\nCONINGBEG BUOY 52-03.2N 006-38.6W OFF STHFZ_NNNN",
    "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: Coningbeg buoy 52-03.2n 006-38.6w off sthfz nnnn.",
    "decoded_highlights": [
      "Coningbeg buoy 52-03.2n 006-38.6w off sthfz nnnn",
      "Great saltee southwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-08 23:44:06 AREA: E",
    "published_at": "2026-04-08 23:44:06",
    "area": "E",
    "message_id": "EA56",
    "text": "ZCZC EA56\nWZ 258/2_9\n__+6_'2_OFF CASQUETS TSS SOUTH-SOUTHWESTWARDS.\nCASQUETS LIGHT 49-43.3N 002-22.6W RACON INZPPYHF\nV_BO\nNNNN",
    "clean_text": "ZCZC EA56\nWZ 258/2_9\n__+6_'2_OFF CASQUETS TSS SOUTH-SOUTHWESTWARDS.\nCASQUETS LIGHT 49-43.3N 002-22.6W RACON INZPPYHF\nV_BO\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: Casquets light 49-43.3n 002-22.6w racon inzppyhf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Casquets light 49-43.3n 002-22.6w racon inzppyhf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-04-08 23:40:15 AREA: E",
    "published_at": "2026-04-08 23:40:15",
    "area": "E",
    "message_id": "EE12",
    "text": "ZCZC EE12\nISSUED BY THE MET OFFICE AT 0700._+._02__APR\n \nGALY_FYXM+._+_+FWOGENERAL SITUATFZM_M_FW_F_DHONGSZ_MH__SYO_M_39__99(:(190_(1_0-/_2((381+_K_C_EB_JOIII_GHD_PJONGJMZYMJPM_PMGHZM\nH_MGJSHMZYM_ZWMFMDRFBNEBHW_AABWB_EMHD_PJ\nFAIR. GOOD\n\nDOVER WIGHT PORTLWONG_YLM_PMGZYMSPJJ_MGF_YMEBHKDB_,1BHPAA_WBAEB__MWZ_PYMWMJPMUF__D\nFF_SLT OR MOD IN NW WIGHT AND PORTLAND. FAIR. MOD OR GOOD._+_'._++6.'_69,9,_S_TH\nVRB 3 OYMSPJJMLPX_W 2 TO 4. MOD OR YOC_D_MGL XSLT OR MOD LTR. FOG PATCHES. MOD OR GOOD, OCNL VERY POOR\n\nBISCAY\nVRB MAINLFM_M_TO 4.+:=$6_:)0.___/___62.'_'_24' 8, ', FOG PATCHESMSHYMFMZO__UOARB__ICGI_D_ VERY POOR LTR IN N\n\nS FITZROY\nCYCLONIC MAINLY NE 3 TO 59._+__ IN_UPO_G\nPYEMY_C_DM__B_3\n.)=)8_$:_8_216(_=_ .9$ )54 8, ,5.  4 TO 6 LT_VERY ROUGH AT FIRST IN SW, OTHERWISZWVZZZZYMZCD_BM_ASIONAL DRIZZL__MG+\n___$_. MOD OR ZZZW_M_IIUNL VERY POOR\n\nSOLE LUNDY FASTNET\nVRB 2 TO 4 BECMG W OR SW 3 TO\n_H_G_PPYMUM_HMGZYM_LTR IN W SOLE AND W FASTNET. MOD OR ROUGH IN SOLE AND SW FASTN_HPMGPSJP_DPYPMJJDBARBAUBHSXDZ_F_NL SMOOTH IN IRISH JQA__GYFMSHY_MG+.___/$0__9$ 94 _99$, OCNL VERY POOR\n\nZUTLOOK FLW 24 HOURS:\nGALES EXP INM_FHAYZ_MWMJZSC_ZMGQHERBKGIQON_)__3', DZ_PY\nY_GHT, PORTLAND, PLYMOUTH, BISCAY, LCW_MWM_J\nPHOZFFF_A_ZCZC",
    "clean_text": "ZCZC EE12\nISSUED BY THE MET OFFICE AT 0700._+._02__APR\n\nGALY_FYXM+._+_+FWOGENERAL SITUATFZM_M_FW_F_DHONGSZ_MH__SYO_M_39__99(:(190_(1_0-/_2((381+_K_C_EB_JOIII_GHD_PJONGJMZYMJPM_PMGHZM\nH_MGJSHMZYM_ZWMFMDRFBNEBHW_AABWB_EMHD_PJ\nFAIR. GOOD\n\nDOVER WIGHT PORTLWONG_YLM_PMGZYMSPJJ_MGF_YMEBHKDB_,1BHPAA_WBAEB__MWZ_PYMWMJPMUF__D\nFF_SLT OR MOD IN NW WIGHT AND PORTLAND. FAIR. MOD OR GOOD._+_'._++6.'_69,9,_S_TH\nVRB 3 OYMSPJJMLPX_W 2 TO 4. MOD OR YOC_D_MGL XSLT OR MOD LTR. FOG PATCHES. MOD OR GOOD, OCNL VERY POOR\n\nBISCAY\nVRB MAINLFM_M_TO 4.+:=$6_:)0.___/___62.'_'_24' 8, ', FOG PATCHESMSHYMFMZO__UOARB__ICGI_D_ VERY POOR LTR IN N\n\nS FITZROY\nCYCLONIC MAINLY NE 3 TO 59._+__ IN_UPO_G\nPYEMY_C_DM__B_3\n.)=)8_$:_8_216(_=_ .9$ )54 8, ,5. 4 TO 6 LT_VERY ROUGH AT FIRST IN SW, OTHERWISZWVZZZZYMZCD_BM_ASIONAL DRIZZL__MG+\n___$_. MOD OR ZZZW_M_IIUNL VERY POOR\n\nSOLE LUNDY FASTNET\nVRB 2 TO 4 BECMG W OR SW 3 TO\n_H_G_PPYMUM_HMGZYM_LTR IN W SOLE AND W FASTNET. MOD OR ROUGH IN SOLE AND SW FASTN_HPMGPSJP_DPYPMJJDBARBAUBHSXDZ_F_NL SMOOTH IN IRISH JQA__GYFMSHY_MG+.___/$0__9$ 94 _99$, OCNL VERY POOR\n\nZUTLOOK FLW 24 HOURS:\nGALES EXP INM_FHAYZ_MWMJZSC_ZMGQHERBKGIQON_)__3', DZ_PY\nY_GHT, PORTLAND, PLYMOUTH, BISCAY, LCW_MWM_J\nPHOZFFF_A_ZCZC",
    "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, fog, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vrb 3 oymspjjmlpx w 2 to 4. mod or yoc d mgl xslt or mod ltr. fog patches. mod or good, ocnl very poor",
      "Vrb mainlfm m to 4. : $6 :)0. / 62.' ' 24' 8, ', fog patchesmshymfmzo uoarb icgi d very poor ltr in n",
      "Gales exp inm fhayz mwmjzsc zmgqherbkgiqon ) 3', dz py"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-08 23:33:05 AREA: T",
    "published_at": "2026-04-08 23:33:05",
    "area": "T",
    "message_id": "",
    "text": "ZKZC _TQG_\nGJ__QVSLAND_\nFAROEY_ WEATHER BULLETIN F_ DQQXUB_RBC9_._ 9=34 436(*-,3' 48$_3 8' '_8_/-0_ '), 70/. AO U__HLSPMKYHGSZUM_FHDM_DU_JMKJ_HZ_YWJM\nD_M_SDZCCF_LANDS FM T_NIGHT AND_OOOORROW._\nOUTER-BANVKYTRI9:\n59.94492 -!534,99, _-)3 !._2 (9 !.\n(21_:=__(_!=1_0=2\n_+0_\n_\n_\nGL\nX__ME_T_P TO _5\n=\n+9+6/+7.+666___((_._+928__9\n$3_, EVENING W Y _A\nANK:\n__-)3,9 =11 TO 16 MOD VIS TONIGHT S 8 TO 13. TOMORROW M_RNING GOOD VIS TOMORROW EVENI_G SW 5 TM 10. \n=TO 15_TONIGHT GALE FM S 10 TO 15 TOMORROW FTERNOON GAZ F_ _ 9 T_ 14 _Z_ZY_Z__P\nP_BM_ VIS. \n\nV\n\nV=-------------_----------------_\n(__\n7+___7ZCZC",
    "clean_text": "ZKZC _TQG_\nGJ__QVSLAND_\nFAROEY_ WEATHER BULLETIN F_ DQQXUB_RBC9_._ 9=34 436(*-,3' 48$_3 8' '_8_/-0_ '), 70/. AO U__HLSPMKYHGSZUM_FHDM_DU_JMKJ_HZ_YWJM\nD_M_SDZCCF_LANDS FM T_NIGHT AND_OOOORROW._\nOUTER-BANVKYTRI9:\n59.94492 -!534,99, _-)3 !._2 (9 !.\n(21_:=__(_!=1_0=2\n_+0_\n_\n_\nGL\nX__ME_T_P TO _5\n=\n+9+6/+7.+666___((_._+928__9\n$3_, EVENING W Y _A\nANK:\n__-)3,9 =11 TO 16 MOD VIS TONIGHT S 8 TO 13. TOMORROW M_RNING GOOD VIS TOMORROW EVENI_G SW 5 TM 10.\n=TO 15_TONIGHT GALE FM S 10 TO 15 TOMORROW FTERNOON GAZ F_ _ 9 T_ 14 _Z_ZY_Z__P\nP_BM_ VIS.\n\nV\n\nV=-------------_----------------_\n(__\n7+___7ZCZC",
    "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: To 15 tonight gale fm s 10 to 15 tomorrow fternoon gaz f 9 t 14 z zy z p. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "To 15 tonight gale fm s 10 to 15 tomorrow fternoon gaz f 9 t 14 z zy z p",
      "Faroey weather bulletin f dqqxub rbc9 . 9 34 436( -,3' 48$ 3 8' ' 8 /-0 '), 70/. ao u hlspmkyhgszum fhdm du jmkj hz ywjm",
      "-)3,9 11 to 16 mod vis tonight s 8 to 13. tomorrow m rning good vis tomorrow eveni g sw 5 tm 10"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-08 23:31:20 AREA: D",
    "published_at": "2026-04-08 23:31:20",
    "area": "D",
    "message_id": "DA52",
    "text": "ZCZC DA52\n_FAROE ISLANDS\nNAVIGATIONAL WARNING NO. 15/2026\nNAVAL GUNNER_EQB4(\n_1__._0_97.__(3_UBAXDO__BWI_AKV \n I__VLCYB_P_KB_K_UEBH_K__BP3__.,(O_BD_M_VA __OEVOKVE:_(._$0._!_0__0.\n 8GM___._5__9_$7,)2/EPB (5_5__:__*_$(\n,_(_BKQF THE F_ROES WITHIN THE FOLLOWING POSITIONS:\n_  (_1_:__3___09:19_:_9_9___/9OPCBG_BHWONG09//_$*__9_____9_LOQCB___8_,=___YPE OF WEPO_\nXM_U_NB\nS__PHEMD_FHDH__MQB_DEO_: 7000 METRES / 3,8 _$:_!_'._!'0*9,_02-060.__.)0._+!5-:_5+ 9, =_! :_-,,'\nMRCCRSHAVN\n081200UTC APRIL 2026\nNNNN",
    "clean_text": "ZCZC DA52\n_FAROE ISLANDS\nNAVIGATIONAL WARNING NO. 15/2026\nNAVAL GUNNER_EQB4(\n_1__._0_97.__(3_UBAXDO__BWI_AKV\nI__VLCYB_P_KB_K_UEBH_K__BP3__.,(O_BD_M_VA __OEVOKVE:_(._$0._!_0__0.\n8GM___._5__9_$7,)2/EPB (5_5__:__*_$(\n,_(_BKQF THE F_ROES WITHIN THE FOLLOWING POSITIONS:\n_ (_1_:__3___09:19_:_9_9___/9OPCBG_BHWONG09//_$*__9_____9_LOQCB___8_,=___YPE OF WEPO_\nXM_U_NB\nS__PHEMD_FHDH__MQB_DEO_: 7000 METRES / 3,8 _$:_!_'._!'0*9,_02-060.__.)0._+!5-:_5+ 9, =_! :_-,,'\nMRCCRSHAVN\n081200UTC APRIL 2026\nNNNN",
    "display_region_heading": "Unresolved B1 code D",
    "display_region_label": "B1 code D",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code D. Readable text says: Navigational warning no. 15/2026. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Navigational warning no. 15/2026",
      "( bkqf the f roes within the following positions",
      "Faroe islands"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  }
]