[
  {
    "index": 1,
    "heading": "2026-03-23 23:54:46 AREA: T",
    "published_at": "2026-03-23 23:54:46",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMS_N_WEWPPR UTC MAR 26\nNORWEGIAN GAH_M\n  MAALOPEM_M_J\nZPAONBZ__MP\nPBSL__\n_WS_Q_RCE KNOU_M_O_ TUESDAY MOR_ SOUTHWEST VIOLENT STORM FORC_M\n _BF\nZFFZ_KAXA_MS_\nQWQPWP UTC MAR 26_\n($8:_2_)+4(*)_8')_82'56-57.9N 009-12.7E\nNNNN",
    "clean_text": "ZCZCMS_N_WEWPPR UTC MAR 26\nNORWEGIAN GAH_M\nMAALOPEM_M_J\nZPAONBZ__MP\nPBSL__\n_WS_Q_RCE KNOU_M_O_ TUESDAY MOR_ SOUTHWEST VIOLENT STORM FORC_M\n_BF\nZFFZ_KAXA_MS_\nQWQPWP UTC MAR 26_\n($8:_2_)+4(*)_8')_82'56-57.9N 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: Ws q rce knou m o tuesday mor southwest violent storm forc m. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ws q rce knou m o tuesday mor southwest violent storm forc m",
      "Zczcms n wewppr utc mar 26",
      "Norwegian gah m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-03-23 23:53:38 AREA: G",
    "published_at": "2026-03-23 23:53:38",
    "area": "G",
    "message_id": "GB99",
    "text": "ZCZC GB99\nCULLERCOATSRADIO\nGALE WARNING MONDAY 23 MARC_QRI UTC\n__\nFORTIES CROMARTY\nGALE FOG _OE__3/1__0602.*+:_$_0*806'_.9,_9__34 5_-.3'\nSOUTHWESTERLY GALE FORCE 8 EXPECTED LATER\nNNNN",
    "clean_text": "ZCZC GB99\nCULLERCOATSRADIO\nGALE WARNING MONDAY 23 MARC_QRI UTC\n__\nFORTIES CROMARTY\nGALE FOG _OE__3/1__0602.*+:_$_0*806'_.9,_9__34 5_-.3'\nSOUTHWESTERLY GALE FORCE 8 EXPECTED LATER\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",
      "CULLERCOATSRADIO"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological 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": [
      "Gale fog oe 3/1 0602. : $ 0 806' .9, 9 34 5 -.3'",
      "Southwesterly gale force 8 expected later",
      "Gale warning monday 23 marc qri utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-03-23 23:50:11 AREA: A",
    "published_at": "2026-03-23 23:50:11",
    "area": "A",
    "message_id": "",
    "text": "ZCZC AG_P_NUP_UPHMGCH_M_26\n_+!_+*.62!+._((3)_\n!'_AEGEAN SEA \nACTIVATIONON F_SOS ANDROS' 9___!6__3 -43-. .\n7._!_-,$ -84:4-!5' !!6__.ET1QB_OM 01 JAN 26 TO 14 JUN 26 \n    AND FROM _C_EPT 26 T_M_P_\n_ITBNVQHBB_BQXE1BE_)_2_:_\n0 -__8+$4__2)2!+_=:_$(_ (_*/9___8_(_**_._:1)9.-TZKJS_XRBDP_S_XBR_J__J_QLOO_IXPTXWYN WOXPTXWYN QTXWYN WIXKPXWSM_W_T O T__MN_M_ TEZ T_ \n    A. 38-16.00N 025-21.00E \n    B. 37-46\n6___25-49.00E \n    C. 37-34._0N 025-23.00E \n    D. 37-42.00__0N 024-52.0.E\n    _+_0__7_TPWRATWMPPE \nCAUTION ADVISED\n3. CANCEL THIS MSG 311615 UTC DEC _WYNNNN",
    "clean_text": "ZCZC AG_P_NUP_UPHMGCH_M_26\n_+!_+*.62!+._((3)_\n!'_AEGEAN SEA\nACTIVATIONON F_SOS ANDROS' 9___!6__3 -43-. .\n7._!_-,$ -84:4-!5' !!6__.ET1QB_OM 01 JAN 26 TO 14 JUN 26\nAND FROM _C_EPT 26 T_M_P_\n_ITBNVQHBB_BQXE1BE_)_2_:_\n0 -__8+$4__2)2!+_=:_$(_ (_*/9___8_(_**_._:1)9.-TZKJS_XRBDP_S_XBR_J__J_QLOO_IXPTXWYN WOXPTXWYN QTXWYN WIXKPXWSM_W_T O T__MN_M_ TEZ T_\nA. 38-16.00N 025-21.00E\nB. 37-46\n6___25-49.00E\nC. 37-34._0N 025-23.00E\nD. 37-42.00__0N 024-52.0.E\n_+_0__7_TPWRATWMPPE\nCAUTION ADVISED\n3. CANCEL THIS MSG 311615 UTC DEC _WYNNNN",
    "display_region_heading": "Unresolved B1 code A",
    "display_region_label": "B1 code A",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code A. Readable text says: Caution advised. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Caution advised"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-03-23 23:42:05 AREA: K",
    "published_at": "2026-03-23 23:42:05",
    "area": "K",
    "message_id": "",
    "text": "ZCZC KA2$9,__:6_\n.__8/'_/349CQHCP_OVER__MGWQNB__PJHONGFWJMHZM\nF_HFZM_D_PJBN_KJQ_ TRANSMITTER OUT OJMJ_Y\nF_C\n _O_38_9,_:_7_\n$-)4'=+_1+9,_9,,8_============)=\n)$)0)_4)$)_0+))/0 __:_..0.'_06..7.BAEBNQOE_PY_8$60994_9_5:3 9!._$:206*_+6_9,+6_$_--+_ 3 AND W OFZB__ ZBMCMMH_C_DBH_EBZMPONSHPYM_OCBRBH_RB_BHALGQZVL_LS_S_LGT. LOC POOPL_OP_9__NKKXJ_I_UMKXSV=__ 3 ZYM_YMGJZABBBJK_E_O_B_Z_R_ _REB_RE _GT.___2._+:_$BHIELGPLF_U_FFDYJV_JPCU Z_ 9,/_9_5(\n_948,\n_(9'\n=4_ 3 OR _R GJZZMMQKO_BJLJL_JMPMCDZ_A_WIZ__KK_AV__XJ\nG__/5 '3 '3-\n7,0-_4_*=_2$*1_1231/\n_!)_5SH/$___$7__2_+EXUAZBA_WMJ_GEAN AN_VOIKO___V__NV__F__ZM_T__ZCZC",
    "clean_text": "ZCZC KA2$9,__:6_\n.__8/'_/349CQHCP_OVER__MGWQNB__PJHONGFWJMHZM\nF_HFZM_D_PJBN_KJQ_ TRANSMITTER OUT OJMJ_Y\nF_C\n_O_38_9,_:_7_\n$-)4'=+_1+9,_9,,8_============)=\n)$)0)_4)$)_0+))/0 __:_..0.'_06..7.BAEBNQOE_PY_8$60994_9_5:3 9!._$:206*_+6_9,+6_$_--+_ 3 AND W OFZB__ ZBMCMMH_C_DBH_EBZMPONSHPYM_OCBRBH_RB_BHALGQZVL_LS_S_LGT. LOC POOPL_OP_9__NKKXJ_I_UMKXSV=__ 3 ZYM_YMGJZABBBJK_E_O_B_Z_R_ _REB_RE _GT.___2._+:_$BHIELGPLF_U_FFDYJV_JPCU Z_ 9,/_9_5(\n_948,\n_(9'\n=4_ 3 OR _R GJZZMMQKO_BJLJL_JMPMCDZ_A_WIZ__KK_AV__XJ\nG__/5 '3 '3-\n7,0-_4_*=_2$*1_1231/\n_!)_5SH/$___$7__2_+EXUAZBA_WMJ_GEAN AN_VOIKO___V__NV__F__ZM_T__ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code K. 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": 5,
    "heading": "2026-03-23 23:40:18 AREA: K",
    "published_at": "2026-03-23 23:40:18",
    "area": "K",
    "message_id": "",
    "text": "ZCZC KA-_+9,__ :_34_972_\nU_TU_O_GWABROG_LDK_WLI_ZMO_($_____8(81__'!888(3_96 ._'!+2'!_9_'0____(* __:-_)_.:2,'_____TE WFH_M_CHFA_B_ONIII___AXAXM_C +9.2__3CLQ_LR_PB_CABLE S_FOA_CD-___ 05__Y\nUNTI_ CYHDPYMZN__+_-___1'0_8+$_)8,__2626023_)3BKU_I_PIPLBU__4_(__817___!*.6099KBKE_WPWMLE_50-10.84_0-10._1.._)9.)7)_2_N 001-21.'__0_,\n_ HBF_G__AQOMRQ__N\nH _O_001-12.02E\n50-19.74_.\n_ Y_CC_POMNOGCCGMM__JLJT_AQOMEYN _ _ U_YATP_NDGCMD_XHLBNG.::__1'!_+_\n__8__4')_\n_//___/$-_4'':_ZCZC",
    "clean_text": "ZCZC KA-_+9,__ :_34_972_\nU_TU_O_GWABROG_LDK_WLI_ZMO_($_____8(81__'!888(3_96 ._'!+2'!_9_'0____(* __:-_)_.:2,'_____TE WFH_M_CHFA_B_ONIII___AXAXM_C +9.2__3CLQ_LR_PB_CABLE S_FOA_CD-___ 05__Y\nUNTI_ CYHDPYMZN__+_-___1'0_8+$_)8,__2626023_)3BKU_I_PIPLBU__4_(__817___!*.6099KBKE_WPWMLE_50-10.84_0-10._1.._)9.)7)_2_N 001-21.'__0_,\n_ HBF_G__AQOMRQ__N\nH _O_001-12.02E\n50-19.74_.\n_ Y_CC_POMNOGCCGMM__JLJT_AQOMEYN _ _ U_YATP_NDGCMD_XHLBNG.::__1'!_+_\n__8__4')_\n_//___/$-_4'':_ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code K. Readable text says: U tu o gwabrog ldk wli zmo ($ 8(81 '!888(3 96 . '! 2'! 9 '0 ( :- ) .:2,' te wfh m chfa b oniii axaxm c 9.2 3clq lr pb cable s foa cd- 05 y. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "U tu o gwabrog ldk wli zmo ($ 8(81 '!888(3 96 . '! 2'! 9 '0 ( :- ) .:2,' te wfh m chfa b oniii axaxm c 9.2 3clq lr pb cable s foa cd- 05 y"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 6,
    "heading": "2026-03-23 23:37:28 AREA: T",
    "published_at": "2026-03-23 23:37:28",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_MW\nH_ 26\n_YBEKU_--_'__=6_5/26\nBUYGJMF_CODWU__KWZP_Z_VZ___K_BRKV\nKI___$_ 6 !)\n_5( _!) 0,5 EC 3,5)\nARE _I_XWJMFM_ZFNQJ_SU_\n\nUA49\n07__8!__=___7\n____777_____+:+: $__\n___6+0.!*'2*9,_707_/_3__9_+_!_GALE WNGQMMG_HBOKQ9__9\n_99 _5_CPZDSGRD_UNK: __\nFUGLBB__MG_M__\n_CELAND RIW__XMGUM\nU__NVWZZF_Z_\n_OOOOOZOZZZAAAAAAAA_XGQUZV__ CCCC K _A____=,01$)_+4)4!_2)',__26_,__.\nS\nR_M\nNNN_ONNFF___F____UUUU_UUBC___K_U_\n_UU\n_ZCZC",
    "clean_text": "ZCZ_MW\nH_ 26\n_YBEKU_--_'__=6_5/26\nBUYGJMF_CODWU__KWZP_Z_VZ___K_BRKV\nKI___$_ 6 !)\n_5( _!) 0,5 EC 3,5)\nARE _I_XWJMFM_ZFNQJ_SU_\n\nUA49\n07__8!__=___7\n____777_____+:+: $__\n___6+0.!*'2*9,_707_/_3__9_+_!_GALE WNGQMMG_HBOKQ9__9\n_99 _5_CPZDSGRD_UNK: __\nFUGLBB__MG_M__\n_CELAND RIW__XMGUM\nU__NVWZZF_Z_\n_OOOOOZOZZZAAAAAAAA_XGQUZV__ CCCC K _A____=,01$)_+4)4!_2)',__26_,__.\nS\nR_M\nNNN_ONNFF___F____UUUU_UUBC___K_U_\n_UU\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. Readable text says: 6 0.! '2 9, 707 / 3 9 ! gale wngqmmg hbokq9 9. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "6 0.! '2 9, 707 / 3 9 ! gale wngqmmg hbokq9 9"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-03-23 23:34:51 AREA: J",
    "published_at": "2026-03-23 23:34:51",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_0___._.__9_.___.'_\nVARNA _3(+27_8='/\n__*5/*_VARNA LAK_T_O GF_PMSKQGRLPF_B_KEEUBX_ALH_ H__\nRE QQMKPPGM\n__C\nOM_RLGA+)_0)___(_!_12,20!__3\n43 11,694N 027 52,_!__0.(_''.*$!_299___2_ .8,__:9_*PPWM_ON_VKEBQK_N_QBUGQ_K_NL_ON_FF___Z_YQ\nM_U S_MG_HBMUKLONKQO_HL_PSVLPV_NON_KKG__SX_B_T VARNA.\nSTA__OYWPGA_MFK_EKJBJW_WLJ_FF_G_PQ_G_WITH C_A_W_XXRGX\nUT__NUED_YVRQLQ \nKYHQ_\n_SN:\n43 11,493_9\n__:.0+_-+$_78)4883__-178-) )8__5 _79_ $ CHARA_S FM_NAFVM_CBKGIGRSZG\n_B_XTI_WU WINPEZ_P_NNNN",
    "clean_text": "ZCZC JA_0___._.__9_.___.'_\nVARNA _3(+27_8='/\n__*5/*_VARNA LAK_T_O GF_PMSKQGRLPF_B_KEEUBX_ALH_ H__\nRE QQMKPPGM\n__C\nOM_RLGA+)_0)___(_!_12,20!__3\n43 11,694N 027 52,_!__0.(_''.*$!_299___2_ .8,__:9_*PPWM_ON_VKEBQK_N_QBUGQ_K_NL_ON_FF___Z_YQ\nM_U S_MG_HBMUKLONKQO_HL_PSVLPV_NON_KKG__SX_B_T VARNA.\nSTA__OYWPGA_MFK_EKJBJW_WLJ_FF_G_PQ_G_WITH C_A_W_XXRGX\nUT__NUED_YVRQLQ\nKYHQ_\n_SN:\n43 11,493_9\n__:.0+_-+$_78)4883__-178-) )8__5 _79_ $ CHARA_S FM_NAFVM_CBKGIGRSZG\n_B_XTI_WU WINPEZ_P_NNNN",
    "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: Re qqmkppgm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Re qqmkppgm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-03-23 23:11:30 AREA: G",
    "published_at": "2026-03-23 23:11:30",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/25_+9\n$_+6\n__06_.._-__2BK8_(6'_8_+_!'6*!_* _42__-14.3N 007FICIKBEGUMWMEBQOSX_::___:_(_ )\n_4-58=3.\n_\n_:-,:3) 2+ 57\n T_EMVG\nZ OIII_HPNLRIII_NA\nCIKZUC\n\n_WMLIM4(3,__18*_+!+0049/. PSN_5_)9/::,_$__)4_*_477_)___7__ZCZ_MX\nM_FBM_ COAST__.\nNNNN",
    "clean_text": "ZCZC GA73\nWZ 130/25_+9\n$_+6\n__06_.._-__2BK8_(6'_8_+_!'6*!_* _42__-14.3N 007FICIKBEGUMWMEBQOSX_::___:_(_ )\n_4-58=3.\n_\n_:-,:3) 2+ 57\nT_EMVG\nZ OIII_HPNLRIII_NA\nCIKZUC\n\n_WMLIM4(3,__18*_+!+0049/. PSN_5_)9/::,_$__)4_*_477_)___7__ZCZ_MX\nM_FBM_ COAST__.\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: Z oiii hpnlriii na. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Z oiii hpnlriii na"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-03-23 23:11:06 AREA: T",
    "published_at": "2026-03-23 23:11:06",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_XM\nFAO\nGY_XWY \nVIKING. \nBERYL OIL FIELD. \nB_Y_SM__BUOY 59_+_)_LB\n9/_824__93.0966!'_.60_+_,8B_LRIIII_K_UZCZC",
    "clean_text": "ZCZC_XM\nFAO\nGY_XWY\nVIKING.\nBERYL OIL FIELD.\nB_Y_SM__BUOY 59_+_)_LB\n9/_824__93.0966!'_.60_+_,8B_LRIIII_K_UZCZC",
    "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: B y sm buoy 59 ) lb. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "B y sm buoy 59 ) lb",
      "Beryl oil field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 16,
    "heading": "2026-03-23 23:10:43 AREA: G",
    "published_at": "2026-03-23 23:10:43",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\n_,_(.9(._(09_2_*6_8)-+4/_=30*39, '97_$.):+3.__0:.___)9,_.::$__!__ZCZC",
    "clean_text": "ZCZC GA96\n_,_(.9(._(09_2_*6_8)-+4/_=30*39, '97_$.):+3.__0:.___)9,_.::$__!__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. 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": 17,
    "heading": "2026-03-23 23:10:05 AREA: G",
    "published_at": "2026-03-23 23:10:05",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ  !T_EMONGDC_LP__\nRACE BANK WINDM_YZZG__TURBI_M+__03(*1____V_D01, 53-7_ G_PPAROMQ_\n_MONGLBHP/)9_5.7N 0:5.9E. \n2. CANCEL WZM_HFTIIKKUEMVG_C_CA\nNNNN",
    "clean_text": "ZCZC GA61\nWZ !T_EMONGDC_LP__\nRACE BANK WINDM_YZZG__TURBI_M+__03(*1____V_D01, 53-7_ G_PPAROMQ_\n_MONGLBHP/)9_5.7N 0:5.9E.\n2. CANCEL WZM_HFTIIKKUEMVG_C_CA\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: 2. cancel wzm hftiikkuemvg c ca. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wzm hftiikkuemvg c ca",
      "Monglbhp/)9 5.7n 0:5.9e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-03-23 23:09:04 AREA: G",
    "published_at": "2026-03-23 23:09:04",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 2:(_(19_'_8_6_\nRAVENSPURN NORTH OA_K_D. \nPLH_ZYBM ITQ\n_XTQREPLXFWN APWMPP\nMCZ_WMSSM_FWJMFL__C_D_YF_Q_0\n_\n\n=__+:+: _-71\nWZ_\n__TU__W_SR__HA_K_ \n_E\nIELD NOYHD_PJH_Y_J_1. MET MJ_M__G_LXJNF_PWATOMQE UNLIT AND ALL NAVAFWJMFZ_PYK_9,L_CA__ANCEL WZ 82/26 (OM_ A_\n_\nP\n\nV__ZCZC",
    "clean_text": "ZCZC GA74\nWZ 2:(_(19_'_8_6_\nRAVENSPURN NORTH OA_K_D.\nPLH_ZYBM ITQ\n_XTQREPLXFWN APWMPP\nMCZ_WMSSM_FWJMFL__C_D_YF_Q_0\n_\n\n=__+:+: _-71\nWZ_\n__TU__W_SR__HA_K_\n_E\nIELD NOYHD_PJH_Y_J_1. MET MJ_M__G_LXJNF_PWATOMQE UNLIT AND ALL NAVAFWJMFZ_PYK_9,L_CA__ANCEL WZ 82/26 (OM_ A_\n_\nP\n\nV__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: Ravenspurn north oa k d. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ravenspurn north oa k d",
      "Plh zybm itq",
      "Xtqreplxfwn apwmpp"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-03-23 23:08:39 AREA: G",
    "published_at": "2026-03-23 23:08:39",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 2 _57_.9___'. \nMRCC H_Y_ILYG_LZOIRZZG_RMRN 001-27.8W OFFM_Y_\nNNNN",
    "clean_text": "ZCZC GA81\nWZ 2 _57_.9___'.\nMRCC H_Y_ILYG_LZOIRZZG_RMRN 001-27.8W OFFM_Y_\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. 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": 20,
    "heading": "2026-03-23 23:07:13 AREA: G",
    "published_at": "2026-03-23 23:07:13",
    "area": "G",
    "message_id": "GA95",
    "text": "ZCZC GA95\nWZV\nUU TUEMONGWZED__F__ O___ORE WINDM_YBIKQV!*_1__796'.:'!___5F_ G__'_.5E_.9,_)BHNDBE_X__CE_0_'$+$3 7E. \n2. CAXPSM_AM\nZHT_EMVGR_ND_\nNNN_\n\n__V_M__ZCA__RK_WZ 220/239,___0\n_9,_)'__$_+_28,$ !-4..\nTURB_ER_ _SS_PYMIN_.(:,0(_/)*__(7__'8_,'.!+_06_!9___9,,888_ZCZ__E_E_WZ 215/26 \n___'. \n_: $9=34..9_=_/T JPY\nF__B\nEQWDSEY SITE 51-59.'_IIK_\n_ KCRDN__ZCZC",
    "clean_text": "ZCZC GA95\nWZV\nUU TUEMONGWZED__F__ O___ORE WINDM_YBIKQV!*_1__796'.:'!___5F_ G__'_.5E_.9,_)BHNDBE_X__CE_0_'$+$3 7E.\n2. CAXPSM_AM\nZHT_EMVGR_ND_\nNNN_\n\n__V_M__ZCA__RK_WZ 220/239,___0\n_9,_)'__$_+_28,$ !-4..\nTURB_ER_ _SS_PYMIN_.(:,0(_/)*__(7__'8_,'.!+_06_!9___9,,888_ZCZ__E_E_WZ 215/26\n___'.\n_: $9=34..9_=_/T JPY\nF__B\nEQWDSEY SITE 51-59.'_IIK_\n_ KCRDN__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: 2. caxpsm am. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. caxpsm am"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 21,
    "heading": "2026-03-23 23:06:41 AREA: T",
    "published_at": "2026-03-23 23:06:41",
    "area": "T",
    "message_id": "",
    "text": "UCZC GA\n__Z 223/2:_3)$. \n1. PLATFORM 49/27-'__7_)_.60__)___)03_8SXFX_E_3,_\n2. /2.__.1_100/26 (___7'_\n__ZCZC",
    "clean_text": "UCZC GA\n__Z 223/2:_3)$.\n1. PLATFORM 49/27-'__7_)_.60__)___)03_8SXFX_E_3,_\n2. /2.__.1_100/26 (___7'_\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": 22,
    "heading": "2026-03-23 23:06:16 AREA: T",
    "published_at": "2026-03-23 23:06:16",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMG_PO_G_AM\n_U_TU_GMDLJRVICES FROW_PHMDPWMJFHPM_HF_Y_EN 003-77_3_7_+8!+84.\nNNNN",
    "clean_text": "ZCZCMG_PO_G_AM\n_U_TU_GMDLJRVICES FROW_PHMDPWMJFHPM_HF_Y_EN 003-77_3_7_+8!+84.\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": [
      "U tu gmdljrvices frow phmdpwmjfhpm hf y en 003-77 3 7 8! 84"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-03-23 23:05:45 AREA: G",
    "published_at": "2026-03-23 23:05:45",
    "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,89,,888_ZCZC",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80,89,,888_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2w off air",
      "2. cancel wz 213/26 (ga80,89,,888 zczc",
      "Mrcc shetland"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 24,
    "heading": "2026-03-23 23:05:15 AREA: G",
    "published_at": "2026-03-23 23:05:15",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 53-11.9N 002-29.1E.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "Bessemer gas field",
      "2. cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 25,
    "heading": "2026-03-23 23:04:50 AREA: G",
    "published_at": "2026-03-23 23:04:50",
    "area": "G",
    "message_id": "GA09",
    "text": "ZCZC GA09\nWZ 229/26 \nCANCEL WZ 148/26 (GA85) AND THIS MSG. _FORMMJZCHD_YV_MGZY_S_IIKMXZWFHFZHWL\nWOTWJMYPJH9,,888__7\n\nZCZC",
    "clean_text": "ZCZC GA09\nWZ 229/26\nCANCEL WZ 148/26 (GA85) AND THIS MSG. _FORMMJZCHD_YV_MGZY_S_IIKMXZWFHFZHWL\nWOTWJMYPJH9,,888__7\n\nZCZC",
    "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: Cancel wz 148/26 (ga85) and this msg. formmjzchd yv mgzy s iikmxzwfhfzhwl. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Cancel wz 148/26 (ga85) and this msg. formmjzchd yv mgzy s iikmxzwfhfzhwl",
      "Wotwjmypjh9,,888 7"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 26,
    "heading": "2026-03-23 23:00:41 AREA: G",
    "published_at": "2026-03-23 23:00:41",
    "area": "G",
    "message_id": "GE83",
    "text": "ZCZC GE83\nISSUED BY THE MET OFFICE AT 2100 ON MON 23 MAR\n\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FORTH TYNE DOZGER FAI_MFJSPONONGHDPM_PPYSMJFHCHFZMHM_FWI_ON_SAKBGUNK__EXP NORWEGIAN SEA 964 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nVIKING\nS VEER SW 6 TO GALE 8, OCNL SEV GALE 9 UNTIL LTR. ROUGH OR VERY ROUGH, BECMG HIGH LTR IN _V_AIN, SHWRS LTR. GOOD, OCNL MOD\n\nFORTIES CROMARTY FORTH\nS VEER SW 5 TO 7, OCNL GALE 8 EXCEPT IN S UTSIRE. SLT OR MOD__U_____FORTH, OTHERWISE MOD OR ROUGH BECMG ROUGH OR VERY ROUGH LTR, THEN VERY ROUGH OR HIGH LTR IN S UTSIRE AND N FORTIES. OCCASIONAL RAIN. GOOD, OCNL POOR\n\nTYNE W DOGGER\nSW 4 TO 6, INCR 6 TO GALE 8. SLT OR MOD BECMG MOD OR ROUGH LTR IN TYNE, MOD BECK_MY_C_DMSHYMFM_MW__. OCCASIONAL RAIN. GOOD OCNL POOR\n\nE DOGGER HUMBER\nSW 3 TO 5, INCR 5 TO 7. SLT OR MOD IN E DOGGER AND GERMAN BIGHT, MOD OR ROUGH INVFISHER, SMOOTH OR SLT BECMG MOD IN HUMBER. OCCASIONAL RAIN. MOD OR _OZY_M_Z_SM_ZZWONONGHD_PJONGJUM_PMGHZM_HMGF_YM\nII_TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT BECMG MOD OR ROUGH LTR, BUT SLTMZYM_ZWMLPX_MBZWMIII_M MAINLY FAIR. MOD OR GOOD, OCNL POOR IN THAMES, DOVER AND WIGHT\n\nFAIR ISLE\nS OR SW 7 TO SEV GALE 9, OCNL STORM 10 IN FAEROES, VEER W 6 TO GALE 8 LTR. MOD OR ROUGH BECMG ROUGH OR VERY ROUGH IN SE FAIR ISLE, OTHERWISE VERY ROUGH OR HIGH, BECMG HIGH OR VERY HIGH FOR A TIME. RAIN THEN SQUALLY SHWRS. MOD OR GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSEV GALES ARE EXP IN HUMBER. GALES ARE EXP IN ALL OTHER AREAS \nNNNN",
    "clean_text": "ZCZC GE83\nISSUED BY THE MET OFFICE AT 2100 ON MON 23 MAR\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FORTH TYNE DOZGER FAI_MFJSPONONGHDPM_PPYSMJFHCHFZMHM_FWI_ON_SAKBGUNK__EXP NORWEGIAN SEA 964 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nVIKING\nS VEER SW 6 TO GALE 8, OCNL SEV GALE 9 UNTIL LTR. ROUGH OR VERY ROUGH, BECMG HIGH LTR IN _V_AIN, SHWRS LTR. GOOD, OCNL MOD\n\nFORTIES CROMARTY FORTH\nS VEER SW 5 TO 7, OCNL GALE 8 EXCEPT IN S UTSIRE. SLT OR MOD__U_____FORTH, OTHERWISE MOD OR ROUGH BECMG ROUGH OR VERY ROUGH LTR, THEN VERY ROUGH OR HIGH LTR IN S UTSIRE AND N FORTIES. OCCASIONAL RAIN. GOOD, OCNL POOR\n\nTYNE W DOGGER\nSW 4 TO 6, INCR 6 TO GALE 8. SLT OR MOD BECMG MOD OR ROUGH LTR IN TYNE, MOD BECK_MY_C_DMSHYMFM_MW__. OCCASIONAL RAIN. GOOD OCNL POOR\n\nE DOGGER HUMBER\nSW 3 TO 5, INCR 5 TO 7. SLT OR MOD IN E DOGGER AND GERMAN BIGHT, MOD OR ROUGH INVFISHER, SMOOTH OR SLT BECMG MOD IN HUMBER. OCCASIONAL RAIN. MOD OR _OZY_M_Z_SM_ZZWONONGHD_PJONGJUM_PMGHZM_HMGF_YM\nII_TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT BECMG MOD OR ROUGH LTR, BUT SLTMZYM_ZWMLPX_MBZWMIII_M MAINLY FAIR. MOD OR GOOD, OCNL POOR IN THAMES, DOVER AND WIGHT\n\nFAIR ISLE\nS OR SW 7 TO SEV GALE 9, OCNL STORM 10 IN FAEROES, VEER W 6 TO GALE 8 LTR. MOD OR ROUGH BECMG ROUGH OR VERY ROUGH IN SE FAIR ISLE, OTHERWISE VERY ROUGH OR HIGH, BECMG HIGH OR VERY HIGH FOR A TIME. RAIN THEN SQUALLY SHWRS. MOD OR GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSEV GALES ARE EXP IN HUMBER. GALES ARE EXP IN ALL OTHER AREAS\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "DOGGER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention gales, ice, rain across the covered waters.",
    "decoded_highlights": [
      "Gale warnings: viking forties cromarty forth tyne dozger fai mfjspononghdpm ppysmjfhchfzmhm fwi on sakbgunk exp norwegian sea 964 by midday tomorrow",
      "S veer sw 6 to gale 8, ocnl sev gale 9 until ltr. rough or very rough, becmg high ltr in v ain, shwrs ltr. good, ocnl mod",
      "S veer sw 5 to 7, ocnl gale 8 except in s utsire. slt or mod u forth, otherwise mod or rough becmg rough or very rough ltr, then very rough or high ltr in s utsire and n forties. occasional rain. good, ocnl poor"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 27,
    "heading": "2026-03-23 23:00:18 AREA: G",
    "published_at": "2026-03-23 23:00:18",
    "area": "G",
    "message_id": "GA10",
    "text": "ZCZC GA10\nWZ 230/26 \nFAIR ISLE. \nROVA HEAD LIGHTHOUSE 60-11.5N CY_S_Y_EGUMJP_HZYMSF_DHJIII_YPSFLSP_\nNNNN",
    "clean_text": "ZCZC GA10\nWZ 230/26\nFAIR ISLE.\nROVA HEAD LIGHTHOUSE 60-11.5N CY_S_Y_EGUMJP_HZYMSF_DHJIII_YPSFLSP_\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: Rova head lighthouse 60-11.5n cy s y egumjp hzymsf dhjiii ypsflsp. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rova head lighthouse 60-11.5n cy s y egumjp hzymsf dhjiii ypsflsp",
      "Fair isle"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-03-23 22:44:06 AREA: E",
    "published_at": "2026-03-23 22:44:06",
    "area": "E",
    "message_id": "EA21",
    "text": "ZCZC EA21\nWZ 182/26 \nLUNDY. \nSPANIEL BUOY 51-38.1N 004-39.7W UNLIT.\nNNNN",
    "clean_text": "ZCZC EA21\nWZ 182/26\nLUNDY.\nSPANIEL BUOY 51-38.1N 004-39.7W UNLIT.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "LUNDY",
      "SPANIEL BUOY"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text says: Spaniel buoy 51-38.1n 004-39.7w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Spaniel buoy 51-38.1n 004-39.7w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-03-23 22:43:45 AREA: E",
    "published_at": "2026-03-23 22:43:45",
    "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": 34,
    "heading": "2026-03-23 22:43:25 AREA: E",
    "published_at": "2026-03-23 22:43:25",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\nWZ 192/26 \nLUNDY. \n_)-=34,9:( '085 _796 51-23.0N 003-10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC EA27\nWZ 192/26\nLUNDY.\n_)-=34,9:( '085 _796 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. 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": 35,
    "heading": "2026-03-23 22:43:01 AREA: E",
    "published_at": "2026-03-23 22:43:01",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 36,
    "heading": "2026-03-23 22:40:17 AREA: E",
    "published_at": "2026-03-23 22:40:17",
    "area": "E",
    "message_id": "EE64",
    "text": "ZCZC EE64\nISSUED BY THE MET OFFI_WE MAR\n_\n___AB__\n\nL_U_SCWEM__ASTNET\n\nTHE GENERAL SITUATION AT MIDDAY\nLOW MID-ATLANTIC 964 EXP NORWEGIAN SEA 964 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nTHAMES DOVER WIGHT PORTLAND PLYMOUTH\nSW 3 TO 5, INCR 5 TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT_B\n_MOD OR ROUGH LTYM_LC_O_JDBARB_UOS_IEOR ROUGH IN PLYMOUTH. MAINLY FAIR. MOD _R_GOOD, OCNL POOR IN THAMES, DOVER AND WIGHT\n\nBISCAY\nVRB 2 TO 4, BECMG SW 4 TO 6 LTR IN N. SLT OR MOD, BECMG ROUGH LTR IN FAR NW. FAIR. GOOD\n\nFITZRO_\nDOA\nDOA\nX_ 4 TO 6. MOD OR ROUGH, BECMG VERY ROUGH LTR IN NW. OCCASIONAL RAIN. GOOWGC_ZMSM_ZWONONGJZSPMSCWEM_JHPHONGJUM_YMGHZM_VEER W OR SW 6 TO GALE 8 LTR. MOD OR ROUGH BECMG ROUGH OR VERY ROUGH LTR IN SOLE AND FASTNET, SLT OR MOD BECMG MOD OR ROUGH LTR IN LUNDY AND IRISH SEA. OCCASIONAL RAIN. MOD ZYM_ZZW_MTZ_POOR LTR\n\nOUTLOOK FLW 24 HOURS:\nSEV GALES ARE EXP IN LUNDY AND FASTNET. GALES ARE EXP IN ALI_ZHDPYMYPJONGONNIIIKZCZC",
    "clean_text": "ZCZC EE64\nISSUED BY THE MET OFFI_WE MAR\n_\n___AB__\n\nL_U_SCWEM__ASTNET\n\nTHE GENERAL SITUATION AT MIDDAY\nLOW MID-ATLANTIC 964 EXP NORWEGIAN SEA 964 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nTHAMES DOVER WIGHT PORTLAND PLYMOUTH\nSW 3 TO 5, INCR 5 TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT_B\n_MOD OR ROUGH LTYM_LC_O_JDBARB_UOS_IEOR ROUGH IN PLYMOUTH. MAINLY FAIR. MOD _R_GOOD, OCNL POOR IN THAMES, DOVER AND WIGHT\n\nBISCAY\nVRB 2 TO 4, BECMG SW 4 TO 6 LTR IN N. SLT OR MOD, BECMG ROUGH LTR IN FAR NW. FAIR. GOOD\n\nFITZRO_\nDOA\nDOA\nX_ 4 TO 6. MOD OR ROUGH, BECMG VERY ROUGH LTR IN NW. OCCASIONAL RAIN. GOOWGC_ZMSM_ZWONONGJZSPMSCWEM_JHPHONGJUM_YMGHZM_VEER W OR SW 6 TO GALE 8 LTR. MOD OR ROUGH BECMG ROUGH OR VERY ROUGH LTR IN SOLE AND FASTNET, SLT OR MOD BECMG MOD OR ROUGH LTR IN LUNDY AND IRISH SEA. OCCASIONAL RAIN. MOD ZYM_ZZW_MTZ_POOR LTR\n\nOUTLOOK FLW 24 HOURS:\nSEV GALES ARE EXP IN LUNDY AND FASTNET. GALES ARE EXP IN ALI_ZHDPYMYPJONGONNIIIKZCZC",
    "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, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sw 3 to 5, incr 5 to 7, perhaps gale 8 ltr. smooth or slt b",
      "X 4 to 6. mod or rough, becmg very rough ltr in nw. occasional rain. goowgc zmsm zwonongjzspmscwem jhphongjum ymghzm veer w or sw 6 to gale 8 ltr. mod or rough becmg rough or very rough ltr in sole and fastnet, slt or mod becmg mod or rough ltr in lundy and irish sea. occasional rain. mod zym zzw mtz poor ltr",
      "Sev gales are exp in lundy and fastnet. gales are exp in ali zhdpymypjongonniiikzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 37,
    "heading": "2026-03-23 22:36:48 AREA: G",
    "published_at": "2026-03-23 22:36:48",
    "area": "G",
    "message_id": "GA10",
    "text": "ZCZC GA10\nWZ 230/26 \nFAIR ISLE. \nROVA HEAD LIGHTHOUSE 60-11.5__.\n_ __EGUMJP_HZYMSF_DHJIII_YPSFLSP_\nNNNN",
    "clean_text": "ZCZC GA10\nWZ 230/26\nFAIR ISLE.\nROVA HEAD LIGHTHOUSE 60-11.5__.\n_ __EGUMJP_HZYMSF_DHJIII_YPSFLSP_\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: Rova head lighthouse 60-11.5. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rova head lighthouse 60-11.5",
      "Fair isle"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 38,
    "heading": "2026-03-23 22:36:47 AREA: T",
    "published_at": "2026-03-23 22:36:47",
    "area": "T",
    "message_id": "",
    "text": "ZIZCZC",
    "clean_text": "ZIZCZC",
    "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": 39,
    "heading": "2026-03-23 22:18:04 AREA: Q",
    "published_at": "2026-03-23 22:18:04",
    "area": "Q",
    "message_id": "",
    "text": "ZCZC QB,__4)_'2+2_5_3 .4___-__\n:+:_!)_93\n70':_0+5_\n_7_)_97_\n+:_*!__9,!.(___*2___-..___..2*___7_+_$_14\nFAROE ISLANDS\n231555UTC MAR 26\nGALE WNG. NO. 267 FM FMO ISSUED AT 1561UTC\n\nYTRI: W 24 M/S\nMUNK: SW 24\nFUGLOY: S 21 \n: SE 22_8___,,\n\n\n+++++++_3$ 9=34\n:-,-48-', 1006, SPREADING N OF AFRICA AND S OF IBERIAN PENINSULA.\n\n24 HOURS FCST:\n\nPAZENN:\n- FM W TO E AND FM N TO S: VRB, _LZX_E, 1 TO 4 INCR W OR SW 4\nTO 6 AS THE EARLY MORNING PROGRESSES. RIPPLED OR SMOOTH BECMG\nSLGT OR MOD AS THE EARLY MORNIN PROGYPJJPJ_\nYEU!=_\n6)__59 3 INCR W OR SW 4 OR 5 FM MIDDAY. RIPPLED OR SMOOTH\nBECMG SLGT FMVMFW_E_\nROCHEBONNE: VRB 1 TO 3. RIPPLED OR SMOOTH.\n\nFINISTERRE:\n- IN SE: VRB 1 TO 3. RIPPLED OR SMOOTH.\n- ELSEWHERE: MAINLY E OR NE 3 TO 5. SMOOTH OR SLGT.\n\nCANTABRICO:\n- IN THE EASTERN THIRD: VRB 1 TO 3.\nELSEWHERE: E 3 OR 4, OCNL 5 IN W. MAINLY SMOOTH.\n\nPORTO: VRB 1 TO 4.:_CPPLED OR SMOOTH.\n\nNNNN",
    "clean_text": "ZCZC QB,__4)_'2+2_5_3 .4___-__\n:+:_!)_93\n70':_0+5_\n_7_)_97_\n+:_*!__9,!.(___*2___-..___..2*___7_+_$_14\nFAROE ISLANDS\n231555UTC MAR 26\nGALE WNG. NO. 267 FM FMO ISSUED AT 1561UTC\n\nYTRI: W 24 M/S\nMUNK: SW 24\nFUGLOY: S 21\n: SE 22_8___,,\n\n+++++++_3$ 9=34\n:-,-48-', 1006, SPREADING N OF AFRICA AND S OF IBERIAN PENINSULA.\n\n24 HOURS FCST:\n\nPAZENN:\n- FM W TO E AND FM N TO S: VRB, _LZX_E, 1 TO 4 INCR W OR SW 4\nTO 6 AS THE EARLY MORNING PROGRESSES. RIPPLED OR SMOOTH BECMG\nSLGT OR MOD AS THE EARLY MORNIN PROGYPJJPJ_\nYEU!=_\n6)__59 3 INCR W OR SW 4 OR 5 FM MIDDAY. RIPPLED OR SMOOTH\nBECMG SLGT FMVMFW_E_\nROCHEBONNE: VRB 1 TO 3. RIPPLED OR SMOOTH.\n\nFINISTERRE:\n- IN SE: VRB 1 TO 3. RIPPLED OR SMOOTH.\n- ELSEWHERE: MAINLY E OR NE 3 TO 5. SMOOTH OR SLGT.\n\nCANTABRICO:\n- IN THE EASTERN THIRD: VRB 1 TO 3.\nELSEWHERE: E 3 OR 4, OCNL 5 IN W. MAINLY SMOOTH.\n\nPORTO: VRB 1 TO 4.:_CPPLED OR SMOOTH.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code Q",
    "display_region_label": "B1 code Q",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code Q. Readable text says: Gale wng. no. 267 fm fmo issued at 1561utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale wng. no. 267 fm fmo issued at 1561utc",
      "-,-48-', 1006, spreading n of africa and s of iberian peninsula",
      "- fm w to e and fm n to s: vrb, lzx e, 1 to 4 incr w or sw 4"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-03-23 22:15:42 AREA: N",
    "published_at": "2026-03-23 22:15:42",
    "area": "N",
    "message_id": "NB37",
    "text": "ZCZC NB37\n232004 UTCM_AY\nNORWEGIAD  WARNING NO 203\n _AVINBEW_WPON\nHLCPJW_M_HWEST GALE FORCG_Y AFTERNOON DP_PY_M_S_M_ZY_VM\nZ_ONMMG_VINOEY\nMOD_AF_VVA__MJZCHDM_S_M_ZYXPM\nF_G_YZBMPYSAMHCPJ3._+6!_.*_+-+_6/_.\n __.__:0:23._6!_.*+:_$_0__.,!4__\n  ONA - FROEYA\nTUESD_Y MORNING INCREASING SOUTHWEST GALE FORCE 8, FROM TUESDAY AFTERNOON SEVERE GALE FORCE 9.\n  HALTEN - ROERVIK\nTUESDAY _AOE MORNING SO_THBH____BJK__E_W_WTLU_K _L G_AV__GALE FZVCEI8=EXPECTED LATER\nOFAST NET\nSOUTHPESTERLY GAL_ FORCE 8 __9,_+__$+/_$+_5_23_03:53$ )-534 3*._\n(,,,,\n\n_7_ZCZC",
    "clean_text": "ZCZC NB37\n232004 UTCM_AY\nNORWEGIAD WARNING NO 203\n_AVINBEW_WPON\nHLCPJW_M_HWEST GALE FORCG_Y AFTERNOON DP_PY_M_S_M_ZY_VM\nZ_ONMMG_VINOEY\nMOD_AF_VVA__MJZCHDM_S_M_ZYXPM\nF_G_YZBMPYSAMHCPJ3._+6!_.*_+-+_6/_.\n__.__:0:23._6!_.*+:_$_0__.,!4__\nONA - FROEYA\nTUESD_Y MORNING INCREASING SOUTHWEST GALE FORCE 8, FROM TUESDAY AFTERNOON SEVERE GALE FORCE 9.\nHALTEN - ROERVIK\nTUESDAY _AOE MORNING SO_THBH____BJK__E_W_WTLU_K _L G_AV__GALE FZVCEI8=EXPECTED LATER\nOFAST NET\nSOUTHPESTERLY GAL_ FORCE 8 __9,_+__$+/_$+_5_23_03:53$ )-534 3*._\n(,,,,\n\n_7_ZCZC",
    "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": [
      "FROEYA"
    ],
    "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: Hlcpjw m hwest gale forcg y afternoon dp py m s m zy vm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Hlcpjw m hwest gale forcg y afternoon dp py m s m zy vm",
      "Tuesd y morning increasing southwest gale force 8, from tuesday afternoon severe gale force 9",
      "Tuesday aoe morning so thbh bjk e w wtlu k l g av gale fzvcei8 expected later"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 41,
    "heading": "2026-03-23 22:04:13 AREA: A",
    "published_at": "2026-03-23 22:04:13",
    "area": "A",
    "message_id": "AA95",
    "text": "ZCZC AA95\nV_FSPONJ__ SCI_N_\nM00.\n0_1_=_- _-$87' 9( 500 3KO__BQQ___\nUKI_UKSXROD__)!__7_\n\n__777\n77___(+:+: )_6*\n,7049:____\nNO_YEGIAN GALE WAC_MZM\n__P\nMMGO\nMONDAY EVENING SOCHDMVNKET_B_EOB5_43_K_IOLEN_ZYMJ\n__J\nIV UV\nTNGGONNKKKKKKKKKKVVVVVVVO_U__Q_ZCZC",
    "clean_text": "ZCZC AA95\nV_FSPONJ__ SCI_N_\nM00.\n0_1_=_- _-$87' 9( 500 3KO__BQQ___\nUKI_UKSXROD__)!__7_\n\n__777\n77___(+:+: )_6*\n,7049:____\nNO_YEGIAN GALE WAC_MZM\n__P\nMMGO\nMONDAY EVENING SOCHDMVNKET_B_EOB5_43_K_IOLEN_ZYMJ\n__J\nIV UV\nTNGGONNKKKKKKKKKKVVVVVVVO_U__Q_ZCZC",
    "display_region_heading": "Unresolved B1 code A",
    "display_region_label": "B1 code A",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code A. Readable text says: No yegian gale wac mzm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No yegian gale wac mzm",
      "Tnggonnkkkkkkkkkkvvvvvvvo u q zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 42,
    "heading": "2026-03-23 21:46:18 AREA: W",
    "published_at": "2026-03-23 21:46:18",
    "area": "W",
    "message_id": "WA06",
    "text": "ZCZC WA06\nAVURNAV TOULON 189/26\nLION - ABORDS CAP D'AGDE\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\n UNTIL 312359 UTCNAI 26\n SCIENTIFIC SURVEY BY MV BLUE M (MMSI : 235068679(\n7__\n7__\n)9,:_1_.$_40_.97N 004-07.17E\n 2_\n 9\n_.\n$__Y__Z_V_Z_PH_CRKEQHZ_B\n__KEDB_EN__*+2. CANCEL AVURNAV TOKIZO _P_U_O_PMGB_T_ONNC_I_ F F_\n____Q_ZZCZ_ OF AIGU_S___ (COAP_M6\n__FLIGHG BOOKVH_ M__HU__FL(3'\n___._\n 4-__2.60_:_-53 _!__.!_\n_9,(+\n_9___0+__:8*\n6__WX_XAX _C_E -!.6=!__=.___9__$_==+=8__(__,3 - 39_,_:''0__+_XBHC_MG_(1)__1__(_(___:2\n!__,_9KQHA_KKK_Q____OADAS2_7*77(-/-/._\n87+_1950 UTC MAR 26\nWX-2510_STATA MET AGENCY OF AKF\nCABO LA NAO NAVTEX SERVICE AREA\n\nISSUED AT 20:00 MZFM_Z_M_ZUE_20:00 UTC\n\nGALE OR NEAR GLE WARNINGS: NONE.\n\nGENERAL SYNOPSIS AT_\n_TC MONDAYPXVWMG\nSVH_ZSCHOPYPJ_S_JHOFLN AND HIGH N SPAIN AND S FRANCE\n1016 IN\n_\n\nWR HOURS FCST:\n\nALBORAN: E 4 TO 6. MOD.\n\nPALOS: NE 4 OR 5. SLGT LOC MOD_\nALOPY__NE 2 TO 4. SMOOTH LO_ SL_LJL_T_LJT_ BUNGLLGLDLGG_PLDPLDCG_YL_PJZG_LD_YLGGLR_I_IG_PYZZ_SLGT BECMG\nSMOOTH.\n\nBALEARES: NE 3 OR 4 DECR VRB 2 OR 3 OVERNIGHT AND INCR SW 3 OR 4\nIN THE AFTERNOON. SMOOTH LOC AND TEMPO SLGT.\n\nMINORQUE: NE 3 OR 4 VEER NW QCKY ANDBNKB_N. JZZHDONSZ_MJSH_BONONGSFZBNW 3 OR 4 VEER SW_NX\nODLMWNOON_.=*_++_$.+6.*+__*___'9'-6)___:+: /_34\n231950 UTC MAR 26\nAT-0706/2026\nSTA\nE_MPH__PX_MZ.*_ZZ\n__HABJKB_K_B_BO_ZQNEB_BKECBKKE31+_/_11/UBKDB__QYL_LDOW_L_KQB_KZ_IMQ_SL_X____ISID UNTIL TUESDAY _6.__.\n7MG_H_ONBN3/54-:53$ !49. _8__ '3- !7)) _7))358,\n\n_-)3 94 ,3-4 _-)3 2-4,8,_': MINORQI_\nN_TL_ON\n\nMINORQUE: IN NW, LOC N 7 FWEPYPP UTC TO 231200 UTC.\n\nLION_ \nZ__N OR _UMTCM__BM\nUPU_MG_H_MH_M_UP\nU__UXD__\nL__OL_TLWPWGLEHM__\n+_:__.:)3LRPN 0,8_1_+\n___N='49*8_(7!\n7\n,___ \n.05W, _\n9)_-23.42N 004-_8WNNNN",
    "clean_text": "ZCZC WA06\nAVURNAV TOULON 189/26\nLION - ABORDS CAP D'AGDE\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\nUNTIL 312359 UTCNAI 26\nSCIENTIFIC SURVEY BY MV BLUE M (MMSI : 235068679(\n7__\n7__\n)9,:_1_.$_40_.97N 004-07.17E\n2_\n9\n_.\n$__Y__Z_V_Z_PH_CRKEQHZ_B\n__KEDB_EN__*+2. CANCEL AVURNAV TOKIZO _P_U_O_PMGB_T_ONNC_I_ F F_\n____Q_ZZCZ_ OF AIGU_S___ (COAP_M6\n__FLIGHG BOOKVH_ M__HU__FL(3'\n___._\n4-__2.60_:_-53 _!__.!_\n_9,(+\n_9___0+__:8*\n6__WX_XAX _C_E -!.6=!__=.___9__$_==+=8__(__,3 - 39_,_:''0__+_XBHC_MG_(1)__1__(_(___:2\n!__,_9KQHA_KKK_Q____OADAS2_7*77(-/-/._\n87+_1950 UTC MAR 26\nWX-2510_STATA MET AGENCY OF AKF\nCABO LA NAO NAVTEX SERVICE AREA\n\nISSUED AT 20:00 MZFM_Z_M_ZUE_20:00 UTC\n\nGALE OR NEAR GLE WARNINGS: NONE.\n\nGENERAL SYNOPSIS AT_\n_TC MONDAYPXVWMG\nSVH_ZSCHOPYPJ_S_JHOFLN AND HIGH N SPAIN AND S FRANCE\n1016 IN\n_\n\nWR HOURS FCST:\n\nALBORAN: E 4 TO 6. MOD.\n\nPALOS: NE 4 OR 5. SLGT LOC MOD_\nALOPY__NE 2 TO 4. SMOOTH LO_ SL_LJL_T_LJT_ BUNGLLGLDLGG_PLDPLDCG_YL_PJZG_LD_YLGGLR_I_IG_PYZZ_SLGT BECMG\nSMOOTH.\n\nBALEARES: NE 3 OR 4 DECR VRB 2 OR 3 OVERNIGHT AND INCR SW 3 OR 4\nIN THE AFTERNOON. SMOOTH LOC AND TEMPO SLGT.\n\nMINORQUE: NE 3 OR 4 VEER NW QCKY ANDBNKB_N. JZZHDONSZ_MJSH_BONONGSFZBNW 3 OR 4 VEER SW_NX\nODLMWNOON_.=*_++_$.+6.*+__*___'9'-6)___:+: /_34\n231950 UTC MAR 26\nAT-0706/2026\nSTA\nE_MPH__PX_MZ.*_ZZ\n__HABJKB_K_B_BO_ZQNEB_BKECBKKE31+_/_11/UBKDB__QYL_LDOW_L_KQB_KZ_IMQ_SL_X____ISID UNTIL TUESDAY _6.__.\n7MG_H_ONBN3/54-:53$ !49. _8__ '3- !7)) _7))358,\n\n_-)3 94 ,3-4 _-)3 2-4,8,_': MINORQI_\nN_TL_ON\n\nMINORQUE: IN NW, LOC N 7 FWEPYPP UTC TO 231200 UTC.\n\nLION_\nZ__N OR _UMTCM__BM\nUPU_MG_H_MH_M_UP\nU__UXD__\nL__OL_TLWPWGLEHM__\n+_:__.:)3LRPN 0,8_1_+\n___N='49*8_(7!\n7\n,___\n.05W, _\n9)_-23.42N 004-_8WNNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text points to a scientific survey area and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Scientific survey by mv blue m (mmsi : 235068679(",
      "Gale or near gle warnings: none",
      "1. scientific survey"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-03-23 21:44:30 AREA: T",
    "published_at": "2026-03-23 21:44:30",
    "area": "T",
    "message_id": "",
    "text": "ZCZC\nCTC _CSZM_NC_T__OHJ3/3,_KB_KBQ_(9(3_:_2_ZQ__GKJB__CDU_1. FIRING EXERCISEO MLQ_ RC_ RRXBURYK_IMYZF_WEQIPP UTC MAR 26\n _\n_ONKQOH_WRQIPP UTC MAR 26\n FROM 250800 UTC MAR 26 TO 251800 UTC MAR 26\n FROMVI\nS_MM_HPTMJ\nY\nF__M\nVGX_HPY_SONMG_ZJHSM_YF_M__IGRYMDR_M_MR_HT_Z_MMMSVJ_PA_MMMONMYPMLZCWPWML_M_ RRAPWMEYN KPPOAQRMPOE\n 44-10.3$_$__ 44-06.00N 009-33.00E\n 43-58.00N_Q_YOAQIMTPE\n SHIPPING FISHING ANCHONA_E AND ANY SURFACE/UNDERWATER ACTIVITY\n FOR COUNTERMEASURE LAUNCH, TORPEDO LAUNCH, AND TOWED BODY TRAILING\n ALL TRANSITING SHIPS BEWARE\n2. _!-9.0'._$!*._*__7_ __MG_HXM__ZCZC",
    "clean_text": "ZCZC\nCTC _CSZM_NC_T__OHJ3/3,_KB_KBQ_(9(3_:_2_ZQ__GKJB__CDU_1. FIRING EXERCISEO MLQ_ RC_ RRXBURYK_IMYZF_WEQIPP UTC MAR 26\n_\n_ONKQOH_WRQIPP UTC MAR 26\nFROM 250800 UTC MAR 26 TO 251800 UTC MAR 26\nFROMVI\nS_MM_HPTMJ\nY\nF__M\nVGX_HPY_SONMG_ZJHSM_YF_M__IGRYMDR_M_MR_HT_Z_MMMSVJ_PA_MMMONMYPMLZCWPWML_M_ RRAPWMEYN KPPOAQRMPOE\n44-10.3$_$__ 44-06.00N 009-33.00E\n43-58.00N_Q_YOAQIMTPE\nSHIPPING FISHING ANCHONA_E AND ANY SURFACE/UNDERWATER ACTIVITY\nFOR COUNTERMEASURE LAUNCH, TORPEDO LAUNCH, AND TOWED BODY TRAILING\nALL TRANSITING SHIPS BEWARE\n2. _!-9.0'._$!*._*__7_ __MG_HXM__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. Readable text says: Shipping fishing anchona e and any surface/underwater activity. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping fishing anchona e and any surface/underwater activity",
      "Ctc cszm nc t ohj3/3, kb kbq (9(3 : 2 zq gkjb cdu 1. firing exerciseo mlq rc rrxburyk imyzf weqipp utc mar 26",
      "For countermeasure launch, torpedo launch, and towed body trailing"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 44,
    "heading": "2026-03-23 21:43:41 AREA: W",
    "published_at": "2026-03-23 21:43:41",
    "area": "W",
    "message_id": "WA04",
    "text": "ZCZC WA04\nAVURNAV TOULON 187/26\nPROVENCE - PHARE DE FARAMAN\nAIDS TO NAVIGATION CHANGES\n1. LIGHT UNLIT\n FARAMAN LIGHT HOUSE IN POSITION : \n 43-21.28N 004-41.23E\n (CHART FR6693)\n (LF L1-52880)\n FL(2)W.10S \n NAVIGATE WITH CAUTION\n2. CANCEL THIS MSG 221943 UTC APR 21 9:1_93_0__ZCZC",
    "clean_text": "ZCZC WA04\nAVURNAV TOULON 187/26\nPROVENCE - PHARE DE FARAMAN\nAIDS TO NAVIGATION CHANGES\n1. LIGHT UNLIT\nFARAMAN LIGHT HOUSE IN POSITION :\n43-21.28N 004-41.23E\n(CHART FR6693)\n(LF L1-52880)\nFL(2)W.10S\nNAVIGATE WITH CAUTION\n2. CANCEL THIS MSG 221943 UTC APR 21 9:1_93_0__ZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text reports an aid-to-navigation fault near 43-21.28N 004-41.23E.",
    "decoded_highlights": [
      "1. light unlit",
      "Faraman light house in position",
      "Avurnav toulon 187/26"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 45,
    "heading": "2026-03-23 21:42:20 AREA: W",
    "published_at": "2026-03-23 21:42:20",
    "area": "W",
    "message_id": "WA07",
    "text": "ZCZC WA07\nAVURNAV TOULON 1+T_E_ROVENCE\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\n FROM 240700 UTC MAR 26 TO 241659 UTC MAR 26\n AREA REB_EB_E PD___TRV_C_WPWMLEM_XONMYPCBF___ARPMPPE/43-05.20N 007-02.00E\n 42-47.00N 007-02.00E/42-40.00N 007-09.05E\n 42-40.00N 006-15.00E/42-47.00N 006-15.00E\n 42-47.00N 006-22.20E/43-00.00N 006-22.20E\n 43-_2.90N 006-29.00E_'_.00N 006-29.00E\n (RRGE_ HAZARDOUS TO NAVIGIVOG_____:-,:3) 5_8' .'_ 241759 UTC MA_RU_\nFDR_\n\n\nZCZC",
    "clean_text": "ZCZC WA07\nAVURNAV TOULON 1+T_E_ROVENCE\nSPECIAL OPERATIONS\n1. FIRING EXERCISE\nFROM 240700 UTC MAR 26 TO 241659 UTC MAR 26\nAREA REB_EB_E PD___TRV_C_WPWMLEM_XONMYPCBF___ARPMPPE/43-05.20N 007-02.00E\n42-47.00N 007-02.00E/42-40.00N 007-09.05E\n42-40.00N 006-15.00E/42-47.00N 006-15.00E\n42-47.00N 006-22.20E/43-00.00N 006-22.20E\n43-_2.90N 006-29.00E_'_.00N 006-29.00E\n(RRGE_ HAZARDOUS TO NAVIGIVOG_____:-,:3) 5_8' .'_ 241759 UTC MA_RU_\nFDR_\n\nZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: (rrge hazardous to navigivog :-,:3) 5 8' .' 241759 utc ma ru. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "(rrge hazardous to navigivog :-,:3) 5 8' .' 241759 utc ma ru",
      "1. firing exercise",
      "Avurnav toulon 1 t e rovence"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-03-23 21:41:11 AREA: W",
    "published_at": "2026-03-23 21:41:11",
    "area": "W",
    "message_id": "WA08",
    "text": "ZCZC WA08\nAVURNAV LZCSZM_ Z T_EO_G_YZ\nPXPO_JP_FSMZ_PYHFZJON\n_FIRING EXERCISE\n FROM 241330 UTC MAR 26 TO 241859 UTC MA_Y\n AREA 04D-13-41 BOUNDED BY :\n 43-05.00N 006-29.00E/43-02.90N 006-29.00E\n 43-00.08__=\n_E_UUBU_RWARUMPPN 006-22.20E\n 42-47.00N 006-40.00E/43-05.20N 007-02.00E\n 43-07.80N 006-40.00E\n K_CNAYTV_7507)\n HAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 241959 UTC MAR 26NNNN",
    "clean_text": "ZCZC WA08\nAVURNAV LZCSZM_ Z T_EO_G_YZ\nPXPO_JP_FSMZ_PYHFZJON\n_FIRING EXERCISE\nFROM 241330 UTC MAR 26 TO 241859 UTC MA_Y\nAREA 04D-13-41 BOUNDED BY :\n43-05.00N 006-29.00E/43-02.90N 006-29.00E\n43-00.08__=\n_E_UUBU_RWARUMPPN 006-22.20E\n42-47.00N 006-40.00E/43-05.20N 007-02.00E\n43-07.80N 006-40.00E\nK_CNAYTV_7507)\nHAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 241959 UTC MAR 26NNNN",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code W. Readable text says: Firing exercise. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Firing exercise",
      "Hazardous to navigation",
      "Area 04d-13-41 bounded by"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 47,
    "heading": "2026-03-23 21:40:11 AREA: W",
    "published_at": "2026-03-23 21:40:11",
    "area": "W",
    "message_id": "WA09",
    "text": "ZCZC WA09\nAVURNAV TOULON 192/26\nCORSE - ABORDS PZSHPMWPMJPYHZJONFWJMHZM\nF_HFZM_D_PJ_N\n_SECTOR LIGHT TEMPORARY CHANGPONMJPPHZJMSF_DHDZCJPONMFM_ZJFHFZ_\n RQAEEMTWN 008-47.65E\n (CHART FR7162)\n LIGHT BOOK L1 : 65200)\n LEGEND LF: FL.WR__JONMJP_HZYMZ_MHDPMSF_DHDZCWPBXXPYHFONMDAYWZCJMHZM\nF_HFZON\n_CANCEL THIS MSG 231549 UTC APR 26NNNN",
    "clean_text": "ZCZC WA09\nAVURNAV TOULON 192/26\nCORSE - ABORDS PZSHPMWPMJPYHZJONFWJMHZM\nF_HFZM_D_PJ_N\n_SECTOR LIGHT TEMPORARY CHANGPONMJPPHZJMSF_DHDZCJPONMFM_ZJFHFZ_\nRQAEEMTWN 008-47.65E\n(CHART FR7162)\nLIGHT BOOK L1 : 65200)\nLEGEND LF: FL.WR__JONMJP_HZYMZ_MHDPMSF_DHDZCWPBXXPYHFONMDAYWZCJMHZM\nF_HFZON\n_CANCEL THIS MSG 231549 UTC APR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: Sector light temporary changponmjpphzjmsf dhdzcjponmfm zjfhfz. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sector light temporary changponmjpphzjmsf dhdzcjponmfm zjfhfz",
      "Light book l1 : 65200)",
      "Legend lf: fl.wr jonmjp hzymz mhdpmsf dhdzcwpbxxpyhfonmdaywzcjmhzm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 48,
    "heading": "2026-03-23 21:39:39 AREA: W",
    "published_at": "2026-03-23 21:39:39",
    "area": "W",
    "message_id": "WA94",
    "text": "ZCZC WA94\n231540 UTC MAR 26\nCOAST_M_YF_MJHY_D_M_ZCONG_ZSZ__GXJF_M_DPSON\n_DIVING WORK 24 MAR 0600 TO _3- 95.5 KM OBZE__Z_ZHZ_\nO_ZCZC",
    "clean_text": "ZCZC WA94\n231540 UTC MAR 26\nCOAST_M_YF_MJHY_D_M_ZCONG_ZSZ__GXJF_M_DPSON\n_DIVING WORK 24 MAR 0600 TO _3- 95.5 KM OBZE__Z_ZHZ_\nO_ZCZC",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code W. 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": 50,
    "heading": "2026-03-23 21:30:23 AREA: V",
    "published_at": "2026-03-23 21:30:23",
    "area": "V",
    "message_id": "",
    "text": "ZCZC VA_+_91638 UTC MAR 2026\nWZ 215/26\nGMDSS.\nB__XM_Z__Y\nZ__H_OR_OQ_CE FROM BAWDSEY SITE _T_LO._5E _FNNNN",
    "clean_text": "ZCZC VA_+_91638 UTC MAR 2026\nWZ 215/26\nGMDSS.\nB__XM_Z__Y\nZ__H_OR_OQ_CE FROM BAWDSEY SITE _T_LO._5E _FNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code V. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 53,
    "heading": "2026-03-23 21:16:11 AREA: T",
    "published_at": "2026-03-23 21:16:11",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n__ 6 3_6._:_/._9,_+-1$UEKU__ _95\n___/ -0.00-9,_$_26+_6DFXSMFJHYC_PHMPJHLIII_DPWMFM_ZJM\nH UCBPCHGM\nUUUB_EG_\n_NMARKED\nSHIPPING IS REQUESTED MOZMHFH_MFMZYMHZM_DI_I_FMHDPM\nF_TY\nNNNN",
    "clean_text": "ZCZC TA99\n__ 6 3_6._:_/._9,_+-1$UEKU__ _95\n___/ -0.00-9,_$_26+_6DFXSMFJHYC_PHMPJHLIII_DPWMFM_ZJM\nH UCBPCHGM\nUUUB_EG_\n_NMARKED\nSHIPPING IS REQUESTED MOZMHFH_MFMZYMHZM_DI_I_FMHDPM\nF_TY\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: Shipping is requested mozmhfh mfmzymhzm di i fmhdpm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested mozmhfh mfmzymhzm di i fmhdpm",
      "H ucbpchgm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 54,
    "heading": "2026-03-23 21:15:30 AREA: T",
    "published_at": "2026-03-23 21:15:30",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n051111 UTC SE_T\nOOSTEWPYWFZMBJGBNNMMCD_S_B_FK__B_OSIVE _ BETWEEN POSITIONS 51-2_._4N 003-05.47E \nA_,:__0_X_WG__EQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\nNNNN",
    "clean_text": "ZCZC TA45\n051111 UTC SE_T\nOOSTEWPYWFZMBJGBNNMMCD_S_B_FK__B_OSIVE _ BETWEEN POSITIONS 51-2_._4N 003-05.47E\nA_,:__0_X_WG__EQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A ,: 0 x wg equested not to anchor nor to fish in the vicinity"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 55,
    "heading": "2026-03-23 21:14:51 AREA: T",
    "published_at": "2026-03-23 21:14:51",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_UO\n27_ UTC SEP  \nOOSTENWPYWFZM_JFM_PH_\nOOST_-ZYC_PLOM_WKV_BUK_HDPMJPIII_WMFMHDPM\nF_F_H_MONGZ.\n__:(___)9_\nXGUB_R-)3 7\n_\n,__/',_/_.7(!77'('_2/=__+6._+.88((_ 8, 5_3 =8:8,856\nNNNN",
    "clean_text": "ZCZC_UO\n27_ UTC SEP\nOOSTENWPYWFZM_JFM_PH_\nOOST_-ZYC_PLOM_WKV_BUK_HDPMJPIII_WMFMHDPM\nF_F_H_MONGZ.\n__:(___)9_\nXGUB_R-)3 7\n_\n,__/',_/_.7(!77'('_2/=__+6._+.88((_ 8, 5_3 =8:8,856\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. 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": 56,
    "heading": "2026-03-23 21:14:23 AREA: T",
    "published_at": "2026-03-23 21:14:23",
    "area": "T",
    "message_id": "",
    "text": "ZCZC TA!1_,_.MNDX_PL_O_\nOOSTENDERADFZM_JF_\n  TUE_BKPXEGEX POLE, 51-23.31N 002-26.26E \nLIGHT UNRELIABLE\nNNNN",
    "clean_text": "ZCZC TA!1_,_.MNDX_PL_O_\nOOSTENDERADFZM_JF_\nTUE_BKPXEGEX POLE, 51-23.31N 002-26.26E\nLIGHT UNRELIABLE\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. Readable text reports an aid-to-navigation fault near 51-23.31N 002-26.26E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Light unreliable",
      "Tue bkpxegex pole, 51-23.31n 002-26.26e",
      "Oostenderadfzm jf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-03-23 21:13:43 AREA: T",
    "published_at": "2026-03-23 21:13:43",
    "area": "T",
    "message_id": "",
    "text": "ZCZ__Z\nZ_\nH_F J__-*_6'1_:_71_(/5___.'8 _3_3_\nBE EEZMONGZLJH_MZMHDPKB_U_B__3_ 09' \n_ 7MGO_\nXXX__BOTX _\n51-23.5_:_.\n_U___B1__NCHORING AND FISHING ARE PROHIBIT\n \nWTHI_STANC_WPPM\nNNNN",
    "clean_text": "ZCZ__Z\nZ_\nH_F J__-*_6'1_:_71_(/5___.'8 _3_3_\nBE EEZMONGZLJH_MZMHDPKB_U_B__3_ 09'\n_ 7MGO_\nXXX__BOTX _\n51-23.5_:_.\n_U___B1__NCHORING AND FISHING ARE PROHIBIT\n\nWTHI_STANC_WPPM\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BE EEZ"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. Readable text says: U b1 nchoring and fishing are prohibit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "U b1 nchoring and fishing are prohibit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 59,
    "heading": "2026-03-23 21:11:36 AREA: T",
    "published_at": "2026-03-23 21:11:36",
    "area": "T",
    "message_id": "TA96",
    "text": "ZCZC TA96\n0819(6 375: _9_'53,$3-ZEEBRUGGE\nOBSTACLES ON THE SEABPWMFM_ZS_Z_FM_ZJ_N\nH  CB_P G\n_PWMYPWE\n5117.259!,  00302.007E\n5116.304N  __PWTOMIRRE\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA96\n0819(6 375: _9_'53,$3-ZEEBRUGGE\nOBSTACLES ON THE SEABPWMFM_ZS_Z_FM_ZJ_N\nH CB_P G\n_PWMYPWE\n5117.259!, 00302.007E\n5116.304N __PWTOMIRRE\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "ZEEBRUGGE"
    ],
    "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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor to fish in the vicinity",
      "Obstacles on the seabpwmfm zs z fm zj n",
      "0819(6 375: 9 '53,$3-zeebrugge"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 64,
    "heading": "2026-03-23 21:01:21 AREA: S",
    "published_at": "2026-03-23 21:01:21",
    "area": "S",
    "message_id": "SA63",
    "text": "ZCZC SA63\nNCC_G__LCY_ON\nU__MGV. WARN. NO. 169\nGERMAN BIGHT.NORTH_PJHMZ_MZU.\n*_)62.+_943 1'\nGEOTECHNICAL DRILLIMGS BE__\nM\n_G:_6+.-0!_$_*___*.\n*_/_36',\nAROUND POSITION 54-28,9N 005-28,0E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA63\nNCC_G__LCY_ON\nU__MGV. WARN. NO. 169\nGERMAN BIGHT.NORTH_PJHMZ_MZU.\n*_)62.+_943 1'\nGEOTECHNICAL DRILLIMGS BE__\nM\n_G:_6+.-0!_$_*___*.\n*_/_36',\nAROUND POSITION 54-28,9N 005-28,0E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH 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": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "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: Around position 54-28,9n 005-28,0e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Around position 54-28,9n 005-28,0e",
      "Restricted manoevrability during operations",
      "U mgv. warn. no. 169"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 65,
    "heading": "2026-03-23 21:00:17 AREA: S",
    "published_at": "2026-03-23 21:00:17",
    "area": "S",
    "message_id": "SE03",
    "text": "ZCZC SE03\n231900 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nMONDAY:\nLIGHT AND VARIABLE WINDS, LATER SOUTHWEST ABOUT 4.)9LOCALLY POOR VISIBILITY, MISTY.\nSEA 1,5___0__6_\nTUESDAY:\nSOUTHWEST 4 TO 5, INCREASING SLOWSE__EMGHZBIXFFZVRAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA 2,5 METER, WESTERN PART LATER 4 METER.\nNNNN",
    "clean_text": "ZCZC SE03\n231900 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nMONDAY:\nLIGHT AND VARIABLE WINDS, LATER SOUTHWEST ABOUT 4.)9LOCALLY POOR VISIBILITY, MISTY.\nSEA 1,5___0__6_\nTUESDAY:\nSOUTHWEST 4 TO 5, INCREASING SLOWSE__EMGHZBIXFFZVRAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA 2,5 METER, WESTERN PART LATER 4 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Light and variable winds, later southwest about 4.)9locally poor visibility, misty.",
    "decoded_highlights": [
      "Light and variable winds, later southwest about 4.)9locally poor visibility, misty",
      "Southwest 4 to 5, increasing slowse emghzbixffzvrain or shower with partly poor visibility",
      "Weatherforecast for german bight"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 66,
    "heading": "2026-03-23 20:40:20 AREA: Q",
    "published_at": "2026-03-23 20:40:20",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\n2(__6MGVHXM_Y_\n_SPLIT RADIO\n_CHZJ_MGT_BZYHZYHDPYMWYFHFXM_MGSC_MCSON_D_H_OM:.0+__/(:_)0__)60_34, EXPV_QDVOXIVOXP OJH___GJEITY 44-5___._. _/KEXX_VNJ_FS__OP_WMZHDPYM_HF\n_QB_X_GO\n__WNLN PROHIBITED.9,_9,,888_77_(-/-_R.__WALX_UTC_OY_\n_WFZONOO_DPYML__JD__73(_,8___-1_ 5_3 ._48_._0_0+6+'+__:__\n$8__0_ \n0\n_ 23/03/2026_.._M _H_M_D_ZOHCOHCKE)3_SCT GUSTJMZ_M_M_FIB_CE_ZR_USFF_Y_J_ __IBA_NAL UPMH_M_HH_GVH_BMH_AA_L__S\nDKX_FUKFKUZ\n__\nDUI_P\n__ -(,35=_0\n=_8\n7$!3_,+.'.8(_*_9: 09_*.*:220._.', TOMOYYZ_MAQ_JQ_SHOREUMGL\nM\n Q_HQ_L1__35:_8_.+\n069.263_(_59\n_7_8_)'!_!8.*___*_)'0.!6._!6/:'_0*._.$!3-R\n___2\n8)!_7-_!943:-'5 !94 5_3 ,3/5 24 HOURS OKBPVKHPK_\n_I_R_C:09$/_,3_(73(_:\n.,!_._!=6 LOC TO \n_IN VELEBITSKI KAOALAK_L_\nZ_J_Y__QJFKQAK_ MIDDAY WIWMWPBYO_HORE SJZMKKNEBN_ \n_L_TP_\nI__0*(8 ('.0.'_0 59 1!___'_SEA_F_YM_WAEN FM MIDNIGHT IN VLFPLFZJ_FB\nKK_BB__ SLQI_ZD__X:(__$_'_8-+$___-NFZV_I_. 2_' 4-_-SHW__TOMORROW GRADUALLY _SPYF_MC_\nCENTMWF_WY___OT__GRRSG_FTN_\n__SOS_4_,=:4 59 _=_,\n__7-__-_)_PV___D TUR_IMMZO_BT\nHV_C TO 22 KT_ \nSA_ ON 2-3,TOMO_RZ_M_0_ 4.\nV_QPAWP KM.\nVRB CLOUDY, LOC POSS RAIX_T_H_GKD_YJ\n_MG\nZ_ZY_ZUM_YWCSSEM_SPYF_MC_\n\nS-ERN ADRIATIC:\nNW WIND, HMH_MMHD_DBKJQU_KJ_AB_G\nROW AFTERNOON OFFSHORE WIND TURNING ON N_AWPN_HM_MH_KT. \nSEA INCRNCLVOQVGHZPZY_Z_M_0/+_06-77__943 3-4.\nVIS 10-20 KM.\nVRBV_SZ_W_M_OC POSS RAIN/T-SHWRS. TOMORROW GRAD ALI__CAYFZMC_ZBF___ZOFNIII__\nOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT_ZCZC",
    "clean_text": "ZCZC QA01\n2(__6MGVHXM_Y_\n_SPLIT RADIO\n_CHZJ_MGT_BZYHZYHDPYMWYFHFXM_MGSC_MCSON_D_H_OM:.0+__/(:_)0__)60_34, EXPV_QDVOXIVOXP OJH___GJEITY 44-5___._. _/KEXX_VNJ_FS__OP_WMZHDPYM_HF\n_QB_X_GO\n__WNLN PROHIBITED.9,_9,,888_77_(-/-_R.__WALX_UTC_OY_\n_WFZONOO_DPYML__JD__73(_,8___-1_ 5_3 ._48_._0_0+6+'+__:__\n$8__0_\n0\n_ 23/03/2026_.._M _H_M_D_ZOHCOHCKE)3_SCT GUSTJMZ_M_M_FIB_CE_ZR_USFF_Y_J_ __IBA_NAL UPMH_M_HH_GVH_BMH_AA_L__S\nDKX_FUKFKUZ\n__\nDUI_P\n__ -(,35=_0\n=_8\n7$!3_,+.'.8(_*_9: 09_*.*:220._.', TOMOYYZ_MAQ_JQ_SHOREUMGL\nM\nQ_HQ_L1__35:_8_.+\n069.263_(_59\n_7_8_)'!_!8.*___*_)'0.!6._!6/:'_0*._.$!3-R\n___2\n8)!_7-_!943:-'5 !94 5_3 ,3/5 24 HOURS OKBPVKHPK_\n_I_R_C:09$/_,3_(73(_:\n.,!_._!=6 LOC TO\n_IN VELEBITSKI KAOALAK_L_\nZ_J_Y__QJFKQAK_ MIDDAY WIWMWPBYO_HORE SJZMKKNEBN_\n_L_TP_\nI__0*(8 ('.0.'_0 59 1!___'_SEA_F_YM_WAEN FM MIDNIGHT IN VLFPLFZJ_FB\nKK_BB__ SLQI_ZD__X:(__$_'_8-+$___-NFZV_I_. 2_' 4-_-SHW__TOMORROW GRADUALLY _SPYF_MC_\nCENTMWF_WY___OT__GRRSG_FTN_\n__SOS_4_,=:4 59 _=_,\n__7-__-_)_PV___D TUR_IMMZO_BT\nHV_C TO 22 KT_\nSA_ ON 2-3,TOMO_RZ_M_0_ 4.\nV_QPAWP KM.\nVRB CLOUDY, LOC POSS RAIX_T_H_GKD_YJ\n_MG\nZ_ZY_ZUM_YWCSSEM_SPYF_MC_\n\nS-ERN ADRIATIC:\nNW WIND, HMH_MMHD_DBKJQU_KJ_AB_G\nROW AFTERNOON OFFSHORE WIND TURNING ON N_AWPN_HM_MH_KT.\nSEA INCRNCLVOQVGHZPZY_Z_M_0/+_06-77__943 3-4.\nVIS 10-20 KM.\nVRBV_SZ_W_M_OC POSS RAIN/T-SHWRS. TOMORROW GRAD ALI__CAYFZMC_ZBF___ZOFNIII__\nOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOT_ZCZC",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Croatia - Adriatic Sea. Readable text says: 8)! 7- !943:-'5 !94 5 3 ,3/5 24 hours okbpvkhpk. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "8)! 7- !943:-'5 !94 5 3 ,3/5 24 hours okbpvkhpk",
      "Row afternoon offshore wind turning on n awpn hm mh kt",
      "Dkx fukfkuz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 70,
    "heading": "2026-03-23 20:30:31 AREA: P",
    "published_at": "2026-03-23 20:30:31",
    "area": "P",
    "message_id": "PA44",
    "text": "ZCZC PA44\n120834 UTC MTCQMTC_Y_LAND INSHORE TRA_!/.-+09,_+'7+_!.)_+_*._+_02._+_BACI-3  53-34.15N 005-44.39E\nBA 3A   53-34.06N 005-44.48E\n\nFRAME BACPB_C_B_C_RRMRTE\nNNNN",
    "clean_text": "ZCZC PA44\n120834 UTC MTCQMTC_Y_LAND INSHORE TRA_!/.-+09,_+'7+_!.)_+_*._+_02._+_BACI-3 53-34.15N 005-44.39E\nBA 3A 53-34.06N 005-44.48E\n\nFRAME BACPB_C_B_C_RRMRTE\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. 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": 71,
    "heading": "2026-03-23 20:30:06 AREA: P",
    "published_at": "2026-03-23 20:30:06",
    "area": "P",
    "message_id": "PA98",
    "text": "ZCZC PA98\n041900 _OC JA_V-6\nMSI 2/26\nBUOY WP2 __ !_:__.\n_02.2E MISSING\nUNCOVERED MEASURING EQUIP_EHMZMHDPMJPHPWONONNIII_ZCZC",
    "clean_text": "ZCZC PA98\n041900 _OC JA_V-6\nMSI 2/26\nBUOY WP2 __ !_:__.\n_02.2E MISSING\nUNCOVERED MEASURING EQUIP_EHMZMHDPMJPHPWONONNIII_ZCZC",
    "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: Uncovered measuring equip ehmzmhdpmjphpwononniii zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uncovered measuring equip ehmzmhdpmjphpwononniii zczc",
      "02.2e missing"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 72,
    "heading": "2026-03-23 20:25:17 AREA: O",
    "published_at": "2026-03-23 20:25:17",
    "area": "O",
    "message_id": "OA25",
    "text": "ZCZC OA25\nCOASTAL WARNING NR 122/26\nST_AIT OF SICILY - LAMPEDUSA\nUNTIL APRIL 15TH 2026\n_) .--=')835 8.9 - 9996915\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLLOWING TRACK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 5$5$5_=$5_+_- 012 57 34.8E\n3. 33 51 38.7N - 013 02 55.2E\nSHIPS TRA__IT BEWA_EMWM_PPMMJK__DT__JH_PMZ_MZHMSPJJMHDM_M FROM THE ABOVE MENTIZO_D UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "clean_text": "ZCZC OA25\nCOASTAL WARNING NR 122/26\nST_AIT OF SICILY - LAMPEDUSA\nUNTIL APRIL 15TH 2026\n_) .--=')835 8.9 - 9996915\nWILL CARRY OUT CABLE REMOVAL OPERATIONS ALONG THE FOLLOWING TRACK:\n1. 36 01 57.06N - 012 53 32.28E\n2. 35 5$5$5_=$5_+_- 012 57 34.8E\n3. 33 51 38.7N - 013 02 55.2E\nSHIPS TRA__IT BEWA_EMWM_PPMMJK__DT__JH_PMZ_MZHMSPJJMHDM_M FROM THE ABOVE MENTIZO_D UNIT TO BE CONSIDERED WITH LIMITED MANOUVERABILITY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Will carry out cable removal operations along the following track. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Will carry out cable removal operations along the following track",
      "Coastal warning nr 122/26",
      "Ships tra it bewa emwm ppmmjk dt jh pmz mzhmspjjmhdm m from the above mentizo d unit to be considered with limited manouverability"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 73,
    "heading": "2026-03-23 20:24:27 AREA: O",
    "published_at": "2026-03-23 20:24:27",
    "area": "O",
    "message_id": "OE84",
    "text": "ZCZC OE84\nMLT WX FOREAST VALID 23/1600 TILL 24/0400 UT\nVYJM\nM_MFMONFPM_NFHJFHMMMYFW_PMZ_MDF_DMYPJJCYPMFJMP_HPWF_MHZ_YWJMSFL_M_N_TM\nMGYHDPYM_SZ_WEM_FHDMJZ_PMJ_BQWRS\nVIS - GOOD EXCEPT IN SHOWERS\nWIND - VAR F2 TO F3 BEC N NW F2 TO F3\nSEA - SLIGHT\nSWELL - NEG\nNNNN",
    "clean_text": "ZCZC OE84\nMLT WX FOREAST VALID 23/1600 TILL 24/0400 UT\nVYJM\nM_MFMONFPM_NFHJFHMMMYFW_PMZ_MDF_DMYPJJCYPMFJMP_HPWF_MHZ_YWJMSFL_M_N_TM\nMGYHDPYM_SZ_WEM_FHDMJZ_PMJ_BQWRS\nVIS - GOOD EXCEPT IN SHOWERS\nWIND - VAR F2 TO F3 BEC N NW F2 TO F3\nSEA - SLIGHT\nSWELL - NEG\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Vis - good except in showers. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vis - good except in showers",
      "Mlt wx foreast valid 23/1600 till 24/0400 ut",
      "Sea - slight"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 74,
    "heading": "2026-03-23 20:23:06 AREA: O",
    "published_at": "2026-03-23 20:23:06",
    "area": "O",
    "message_id": "OA24",
    "text": "ZCZC OA24\n\nMALTA RADIO SECURITE' MESSAGE\nLNG TANKER MT ARCTIC METAGAZ, IMO 9243148, CALL SIGN UAFC8 IS NOT UNDER COMMAND AND DRIFTING TO THE PROXIMITY Z_ POSNM_PPLXLBGXCCM_N_K_GXG__PWLRO_AR26.\nMARINERS ARE REMINDED THAT THE VESJPSMFJMZHMJDZ_FM_MC_MJF__KS_XLEMW_MZYMF_DH\n_M_P_HYMSZZ_ZC_M_CJHMLPM_FHFPWM_DPMJFSFM_SZ.._-9W_VE MENTIONED POS_MARINERS ARE INSTRUCTED TO KEEP 5NM AWAY FROM THE VESSEL AT ALL TIMES. NAV NEAR THE ABOVE MENTIONED VESSEL IS STRICTLY PROHI_FH_W_\nNNNN",
    "clean_text": "ZCZC OA24\n\nMALTA RADIO SECURITE' MESSAGE\nLNG TANKER MT ARCTIC METAGAZ, IMO 9243148, CALL SIGN UAFC8 IS NOT UNDER COMMAND AND DRIFTING TO THE PROXIMITY Z_ POSNM_PPLXLBGXCCM_N_K_GXG__PWLRO_AR26.\nMARINERS ARE REMINDED THAT THE VESJPSMFJMZHMJDZ_FM_MC_MJF__KS_XLEMW_MZYMF_DH\n_M_P_HYMSZZ_ZC_M_CJHMLPM_FHFPWM_DPMJFSFM_SZ.._-9W_VE MENTIONED POS_MARINERS ARE INSTRUCTED TO KEEP 5NM AWAY FROM THE VESSEL AT ALL TIMES. NAV NEAR THE ABOVE MENTIONED VESSEL IS STRICTLY PROHI_FH_W_\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Lng tanker mt arctic metagaz, imo 9243148, call sign uafc8 is not under command and drifting to the proximity z posnm pplxlbgxccm n k gxg pwlro ar26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lng tanker mt arctic metagaz, imo 9243148, call sign uafc8 is not under command and drifting to the proximity z posnm pplxlbgxccm n k gxg pwlro ar26",
      "Mariners are reminded that the vesjpsmfjmzhmjdz fm mc mjf ks xlemw mzymf dh",
      "M p hymszz zc m cjhmlpm fhfpwm dpmjfsfm sz.. -9w ve mentioned pos mariners are instructed to keep 5nm away from the vessel at all times. nav near the above mentioned vessel is strictly prohi fh w"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 75,
    "heading": "2026-03-23 20:22:30 AREA: O",
    "published_at": "2026-03-23 20:22:30",
    "area": "O",
    "message_id": "OA04",
    "text": "ZCZC OA04\nNAVIGATIONAL WARNING\nLOST ANCHOR AND CHAIN IN LOCATION BUN_PY__MYPM_CHAIN IFWMSWMSZ_MB_BJ___4_)__DKDMXLON/4:/_,__35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "clean_text": "ZCZC OA04\nNAVIGATIONAL WARNING\nLOST ANCHOR AND CHAIN IN LOCATION BUN_PY__MYPM_CHAIN IFWMSWMSZ_MB_BJ___4_)__DKDMXLON/4:/_,__35-57.2N 014-19.6E. KEEP A SAFE DISTANCE.\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Lost anchor and chain in location bun py mypm chain ifwmswmsz mb bj 4 ) dkdmxlon/4:/ , 35-57.2n 014-19.6e. keep a safe distance. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lost anchor and chain in location bun py mypm chain ifwmswmsz mb bj 4 ) dkdmxlon/4:/ , 35-57.2n 014-19.6e. keep a safe distance",
      "Navigational warning"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 76,
    "heading": "2026-03-23 20:20:19 AREA: O",
    "published_at": "2026-03-23 20:20:19",
    "area": "O",
    "message_id": "OA73",
    "text": "ZCZC OA73\nNTM NO 19/26\nTM NOTIFIES THAT SEVERAL TYPES OF INVESTIGATIVE UGVEYS WILL BE CARRI_WMZCHM_ZYMHDPM_YZZJPWMJP_ZWMFHPY_Z_P_HZXM_P__MALTA AND SICILY.\n\nTHESE INVESTIGATIVE SURVEYS WILL BE CARRIED OUT BY THE VESSLES SILVIO 1, CELINA 2 ANVGOB __JFMWMHDPFYM_F_Y EQUI_M_\nT_M\n\nWEATHER PERMITTING THE SURV_FE PLANNED TO CO __F__F_XP_D_J_S_ 2026 AND ARE TO BE EXPECTED TO BE COMPLETED B_TURDAY 30 MAY 2026.\n\n_ BE CARRIED OUT ALONG THE ROUTE BETWEEN THE FOLLOWING POINTS \n__M_M_HHCB _UGV.1!+1_4+3$ 3$\n0\n1_3*+$ /2_0_=71!+1_4+34 34*0\n1(_$4 \n061=_1!+1_!\n5\n+.9$__-31.994E \nE - 36-22.787N 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION WMHZM_FHFMMJ_PMWFJH__B_PMTP NAUTICAL MILES F_HJPMMHD_MSPPSJM_PMWPHP_HPWMZYMJFZDH_W_\nNNNN",
    "clean_text": "ZCZC OA73\nNTM NO 19/26\nTM NOTIFIES THAT SEVERAL TYPES OF INVESTIGATIVE UGVEYS WILL BE CARRI_WMZCHM_ZYMHDPM_YZZJPWMJP_ZWMFHPY_Z_P_HZXM_P__MALTA AND SICILY.\n\nTHESE INVESTIGATIVE SURVEYS WILL BE CARRIED OUT BY THE VESSLES SILVIO 1, CELINA 2 ANVGOB __JFMWMHDPFYM_F_Y EQUI_M_\nT_M\n\nWEATHER PERMITTING THE SURV_FE PLANNED TO CO __F__F_XP_D_J_S_ 2026 AND ARE TO BE EXPECTED TO BE COMPLETED B_TURDAY 30 MAY 2026.\n\n_ BE CARRIED OUT ALONG THE ROUTE BETWEEN THE FOLLOWING POINTS\n__M_M_HHCB _UGV.1!+1_4+3$ 3$\n0\n1_3*+$ /2_0_=71!+1_4+34 34*0\n1(_$4\n061=_1!+1_!\n5\n+.9$__-31.994E\nE - 36-22.787N 014-31.776E\n\nMARINERS ARE INSTRUCTED TO NAVIGATE WITH CAUTION WMHZM_FHFMMJ_PMWFJH__B_PMTP NAUTICAL MILES F_HJPMMHD_MSPPSJM_PMWPHP_HPWMZYMJFZDH_W_\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: These investigative surveys will be carried out by the vessles silvio 1, celina 2 anvgob jfmwmhdpfym f y equi m. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "These investigative surveys will be carried out by the vessles silvio 1, celina 2 anvgob jfmwmhdpfym f y equi m",
      "Weather permitting the surv fe planned to co f f xp d j s 2026 and are to be expected to be completed b turday 30 may 2026",
      "Tm notifies that several types of investigative ugveys will be carri wmzchm zymhdpm yzzjpwmjp zwmfhpy z p hzxm p malta and sicily"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 77,
    "heading": "2026-03-23 19:40:52 AREA: K",
    "published_at": "2026-03-23 19:40:52",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHTN_MGSY__BGKQNMKPVRS_P_LI_Q_KS\nCLSPMS_F_O_G_VW\nU_ZR_ 05_\n_.__!/5_.-4 26\nU_L_URTHEYMZHF_PONG_M__W_IS AREA\nEKB_AM_CEKZGZ__OU_HKU_AQPMRRN _81-2+6_4/:_,_KI___V_YH_\nLW_A_UU_UU\nK_ _U_F_UU_UUUGMG__VT__T\nWEKSMGV__MBIMW_XPAEFSQPJS\nVCP\n___ __FN_F_UVG\n_ __ST_VPBU J__NZKN\nEK_MPPYMSK,-__0__)__:1'--+.*2=_4__(_,_:__8+3_\n3\n/7_ _ZCZC",
    "clean_text": "ZCZC KA28\nWIGHTN_MGSY__BGKQNMKPVRS_P_LI_Q_KS\nCLSPMS_F_O_G_VW\nU_ZR_ 05_\n_.__!/5_.-4 26\nU_L_URTHEYMZHF_PONG_M__W_IS AREA\nEKB_AM_CEKZGZ__OU_HKU_AQPMRRN _81-2+6_4/:_,_KI___V_YH_\nLW_A_UU_UU\nK_ _U_F_UU_UUUGMG__VT__T\nWEKSMGV__MBIMW_XPAEFSQPJS\nVCP\n___ __FN_F_UVG\n_ __ST_VPBU J__NZKN\nEK_MPPYMSK,-__0__)__:1'--+.*2=_4__(_,_:__8+3_\n3\n/7_ _ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code K. Readable text says: Weksmgv mbimw xpaefsqpjs. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Weksmgv mbimw xpaefsqpjs"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 78,
    "heading": "2026-03-23 19:40:17 AREA: K",
    "published_at": "2026-03-23 19:40:17",
    "area": "K",
    "message_id": "",
    "text": "ZCZC KA_+9,__:3)(___DOV_LM_MGWJH_C_QG__NGFW__B_KBG_ZM:3QZFIIIKD_\nLDW L_I_MB_T_SFHONHSP_VO_K \n_7.6_,.:\n=1.20N 0_7 :_0__09,_\n!___._!TB_FZONGGIIGIIGUINIIJZ_A_ZCZC",
    "clean_text": "ZCZC KA_+9,__:3)(___DOV_LM_MGWJH_C_QG__NGFW__B_KBG_ZM:3QZFIIIKD_\nLDW L_I_MB_T_SFHONHSP_VO_K\n_7.6_,.:\n=1.20N 0_7 :_0__09,_\n!___._!TB_FZONGGIIGIIGUINIIJZ_A_ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code K. 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": 79,
    "heading": "2026-03-23 19:10:46 AREA: T",
    "published_at": "2026-03-23 19:10:46",
    "area": "T",
    "message_id": "",
    "text": "_CZC GA73\n4_+_\n 0T_E_ARM.\n1(80)_0)_+*_:_\n_14.31_331=3,)/3/.\n2_\n_//0'9(!_!**:26 (GA91).\n,_8_\n58*=_ \n.09 4-8, 285_ .92__ZZO_BG__AND ICCRL_K_ VIS6_9.94:+2=__0._*._80)8_.09 4- ._!__$-POOR VISQHONONGS_SWZ_LKZ_MG\nO_S, FM T_MOG_OD  _, A_SKD_XJ_J_\n _ _I\n_QXJK_AXZCHDPFB__EDG___ISH COA_T\nONM_BAZYPMFJB_FWUF_JO\n_J_FJH_\nUL FOG JDFKGEBKLUB__\nBOUNDEY_LAM__\n___NDFFFVEMUEN _YQRAC_SB_EN_RCMX_G_RSO_X\nRWX_JRK_ICR_QPMJQ_IMUIMUIE\n03-23 09:00 TO 03-)\nCT_ABB1,7_9,,888_\n _-_++___-/-/.1__ 6_30700____/._6+,_-__12_(9_((3)_1_6\nSOUTDPYMLSHF_N\nHR_ILI_I853' -+0.*\n_.9_1__27N 016-36.59E_N_WE PUCM_PRCPPAQECPP _\n03-24 18:00 TO _WT PQCPP UTC\n APENW_N\n:1_3._H__AH__3-2 \n_/__\n_-,:3) 5$!._*__7! =__._$)_/(9_(:3)9/__3' 59 (9_ _9_3__+54-,,34-,____:_8,53,-,:3 $43$_8,_ 8, 049_*1**.!_XVX_N\nIVU__9 9!6!_2_!.6__X_CGMLRCN_RE _EZTWQPTMWGP_N_ODC__F_\nK___S__P__'_9_'!_$:___)(9_(:0'__\n)_3_43__ \n5__'3-2-6 :_-,.7'_.__!_5-43.96NV\n_ KGEXH__OW_RN 02 __EPGPONIIK \nH\nK_WN \n_ _WLXXHN_DDK__I_PRSLR R\n_RU_YPYV!//+_6 /_0, 021-_6.6:_09,___(4,)1_)9(-:_\n_8__3\n__60_6_=86_0\n-04.30E\n55-43.78N 021-03.6__0\n+9.__10___0_'__,6._$0.2! 86(0'4('\nAREA. PASS AT MINFBC_OQIB_ALLM_PJJPSJM_CJ_M_IIKP DISTANCE O_MHMSPJHM\nP_OBNE_BKEQZ X_NL__RBKI_EXECUTING VESSELS AND DO NOT OBSTRUCTPFDPFYONG__C_PY__HFSJM_Z__HM\nHW\n_O___BZFFF__\n___Z\n_ J_ZCZXM___\n040930 UHXM_Y_ERMAN NAV WARN 125_\nSOUTHERN BAL TSL_IC. MONK.\nYELLZ_MSF_II_PTION 'ODAS' 54-25,0N _18,0E\nTJMONNIII__AXAXMQ\nC__N\nUE HMGCHXM__L_ALINGRADM\nM_KELBGH_ CWKHC_K_AT_TERI MZBXK\nSHIPS EXERCISES 282100\n/7__._0)._$6:.\n0 7 MG_HXM_YONGFMYPMHP_\nZ\nS_ZOS_GS__E_VO,_  XN__DP_V __JGJV!//+_\n 50N 0\n+___0_90)9GKGCGGRZG_WN ,-1_,,)1_-, 5$!*._*\n,,.:(:00 UTC____\nUU____ZCZC",
    "clean_text": "_CZC GA73\n4_+_\n0T_E_ARM.\n1(80)_0)_+*_:_\n_14.31_331=3,)/3/.\n2_\n_//0'9(!_!**:26 (GA91).\n,_8_\n58*=_\n.09 4-8, 285_ .92__ZZO_BG__AND ICCRL_K_ VIS6_9.94:+2=__0._*._80)8_.09 4- ._!__$-POOR VISQHONONGS_SWZ_LKZ_MG\nO_S, FM T_MOG_OD _, A_SKD_XJ_J_\n_ _I\n_QXJK_AXZCHDPFB__EDG___ISH COA_T\nONM_BAZYPMFJB_FWUF_JO\n_J_FJH_\nUL FOG JDFKGEBKLUB__\nBOUNDEY_LAM__\n___NDFFFVEMUEN _YQRAC_SB_EN_RCMX_G_RSO_X\nRWX_JRK_ICR_QPMJQ_IMUIMUIE\n03-23 09:00 TO 03-)\nCT_ABB1,7_9,,888_\n_-_++___-/-/.1__ 6_30700____/._6+,_-__12_(9_((3)_1_6\nSOUTDPYMLSHF_N\nHR_ILI_I853' -+0.*\n_.9_1__27N 016-36.59E_N_WE PUCM_PRCPPAQECPP _\n03-24 18:00 TO _WT PQCPP UTC\nAPENW_N\n:1_3._H__AH__3-2\n_/__\n_-,:3) 5$!._*__7! =__._$)_/(9_(:3)9/__3' 59 (9_ _9_3__+54-,,34-,____:_8,53,-,:3 $43$_8,_ 8, 049_*1**.!_XVX_N\nIVU__9 9!6!_2_!.6__X_CGMLRCN_RE _EZTWQPTMWGP_N_ODC__F_\nK___S__P__'_9_'!_$:___)(9_(:0'__\n)_3_43__\n5__'3-2-6 :_-,.7'_.__!_5-43.96NV\n_ KGEXH__OW_RN 02 __EPGPONIIK\nH\nK_WN\n_ _WLXXHN_DDK__I_PRSLR R\n_RU_YPYV!//+_6 /_0, 021-_6.6:_09,___(4,)1_)9(-:_\n_8__3\n__60_6_=86_0\n-04.30E\n55-43.78N 021-03.6__0\n+9.__10___0_'__,6._$0.2! 86(0'4('\nAREA. PASS AT MINFBC_OQIB_ALLM_PJJPSJM_CJ_M_IIKP DISTANCE O_MHMSPJHM\nP_OBNE_BKEQZ X_NL__RBKI_EXECUTING VESSELS AND DO NOT OBSTRUCTPFDPFYONG__C_PY__HFSJM_Z__HM\nHW\n_O___BZFFF__\n___Z\n_ J_ZCZXM___\n040930 UHXM_Y_ERMAN NAV WARN 125_\nSOUTHERN BAL TSL_IC. MONK.\nYELLZ_MSF_II_PTION 'ODAS' 54-25,0N _18,0E\nTJMONNIII__AXAXMQ\nC__N\nUE HMGCHXM__L_ALINGRADM\nM_KELBGH_ CWKHC_K_AT_TERI MZBXK\nSHIPS EXERCISES 282100\n/7__._0)._$6:.\n0 7 MG_HXM_YONGFMYPMHP_\nZ\nS_ZOS_GS__E_VO,_ XN__DP_V __JGJV!//+_\n50N 0\n+___0_90)9GKGCGGRZG_WN ,-1_,,)1_-, 5$!*._*\n,,.:(:00 UTC____\nUU____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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ul fog jdfkgebklub",
      "Area. pass at minfbc oqib allm pjjpsjm cj m iikp distance o mhmspjhm",
      "Ships exercises 282100"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 80,
    "heading": "2026-03-23 19:09:25 AREA: L",
    "published_at": "2026-03-23 19:09:25",
    "area": "L",
    "message_id": "",
    "text": "ZCZC LFZONGKONMQMHV_CROMARTY.\nHYWIND FLOATING WINI_8__THDFHD_FH_NFOPQ__AWQMQW, FOG SIGNAL INZSPYHF_PXZWM CANC_A12).\nNNNN",
    "clean_text": "ZCZC LFZONGKONMQMHV_CROMARTY.\nHYWIND FLOATING WINI_8__THDFHD_FH_NFOPQ__AWQMQW, FOG SIGNAL INZSPYHF_PXZWM CANC_A12).\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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Hywind floating wini 8 thdfhd fh nfopq awqmqw, fog signal inzspyhf pxzwm canc a12)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 81,
    "heading": "2026-03-23 19:09:02 AREA: T",
    "published_at": "2026-03-23 19:09:02",
    "area": "T",
    "message_id": "",
    "text": "ZCZCM\nZ_ONG_AMS_MMHKPO_UMBER. \nDUDGPZ.6+)*+_)$= !8,:05:+___, -_*____'.6=*5_'_7__,1__7_\nZCZC",
    "clean_text": "ZCZCM\nZ_ONG_AMS_MMHKPO_UMBER.\nDUDGPZ.6+)*+_)$= !8,:05:+___, -_*____'.6=*5_'_7__,1__7_\nZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 82,
    "heading": "2026-03-23 19:06:26 AREA: G",
    "published_at": "2026-03-23 19:06:26",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSK_R. \n_8\n-(8_-_7))34:9-5' '853 _\n'_87(6___)9,_.=.5_4!! -84.__.9_!!!_7\n_7_ZCZFM_LX_FBNFKMOCMHKQO_W_SNR_BZ_TYKLG_ _LATFD_E_LQLSLX__G\n__Q_ 54-03.2N _ _U___\nZO_J__(7_(==)_\n'=__\n:\n-__58=39.9,_9,,___78_ _- _-_\n33/26\nHUMBER.\nORWELL GAS FIELD NOR BE BRPJ_DJ_M MET MAST 53-10.7N 0(0__,)85 -,$ -_-=,_.*.!+_06_!\n0__9_\n_26 (GA42\n(,_9,,888:_.___4__2_-:3 __(_8_((__)+_+__+__8  1=._!+73!,_0/_.___\n36__8=3_ 53-20.1N 000-49.7_=5..9,_)_'01, 53- _____\n2. CANC-_53___3\n1.,__4\n_0_9).=\n. _\n9_\n!7!-+9*_7_-/-_XBRA_LL_SVL_\nGVLZL_ \nNZYHDMJPZB_D_KJBKIF_V_H__VKF_DIELDUEU__U_XAMX8_-_. \nSAFETY ZONE, RADIUS 500 _*$01.$1.$8_.)__G_M_ARYMEIP\nNGONN_II_UKU_ZCZC",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSK_R.\n_8\n-(8_-_7))34:9-5' '853 _\n'_87(6___)9,_.=.5_4!! -84.__.9_!!!_7\n_7_ZCZFM_LX_FBNFKMOCMHKQO_W_SNR_BZ_TYKLG_ _LATFD_E_LQLSLX__G\n__Q_ 54-03.2N _ _U___\nZO_J__(7_(==)_\n'=__\n:\n-__58=39.9,_9,,___78_ _- _-_\n33/26\nHUMBER.\nORWELL GAS FIELD NOR BE BRPJ_DJ_M MET MAST 53-10.7N 0(0__,)85 -,$ -_-=,_.*.!+_06_!\n0__9_\n_26 (GA42\n(,_9,,888:_.___4__2_-:3 __(_8_((__)+_+__+__8 1=._!+73!,_0/_.___\n36__8=3_ 53-20.1N 000-49.7_=5..9,_)_'01, 53- _____\n2. CANC-_53___3\n1.,__4\n_0_9).=\n. _\n9_\n!7!-+9*_7_-/-_XBRA_LL_SVL_\nGVLZL_\nNZYHDMJPZB_D_KJBKIF_V_H__VKF_DIELDUEU__U_XAMX8_-_.\nSAFETY ZONE, RADIUS 500 _*$01.$1.$8_.)__G_M_ARYMEIP\nNGONN_II_UKU_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",
      "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. 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": 83,
    "heading": "2026-03-23 19:03:12 AREA: G",
    "published_at": "2026-03-23 19:03:12",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\n,__0\n_9,_)'__$_+_943 $3.9,'5__+6._!_.2_)_HD_ES*_1\n!*_.::,0(9/)_\n_=8:_:!,_3.._0=._(+\n-58=39,_+!!!__AXAXM\nZ__NGTBKENKB__MH_Q_M NAVAREA I WA_Y_J _PF _PSVSOBCGGOHM__-4 2026:9,_,81E,___6_(8'_!7'_(7_!!77__,_+_0*__+__:BHA__AF_A\nFOAW_BOJ_EQBGQQXCG_NI_K ARE PU_SFJDPWMFMK_O_04!+*9:3' 59._6!06*.):''0_)__))__* 7_\n_ _!'1*\n'_- 8 2-4,8_*.'0**._$.\n6(_8(11__(43/26 ONWAS_ARE PROMULGAHPWM_FB__K_FLPP_CALL (E\nKM_E__ AD___EB_IYTL_SS_WU_A_K__\n_D_S.\n\n/:0..__$0./+_S\nA\nD_Z_S__CXPX_K_NYE_X___WGJE_O_BH5__4+2__2_'__+9___31_53$ 8, '3:589, 888 9! -,._ 8, 233(' 1, 13, 26 AN _ ARE ALSO AVACSLSPB_R__WIG_\n WEBSITE _RALTY.CO__N_RADIONAVIGATIOAY_FYB___OJBZLT_R JV_HESEMB_MLBRXXP_UZ__ FROM NAVAJ_M_MXZ__EU(_((4)_ 0_-__18,- PQ_PVKF_PWV=5!2. C_OMQSM__ I 49/26 (EA29)(GA_ISVGZ_GJ__HLIU_L___\n75-/-__4(G__Z 215/26 \nGMDSS. \nMRCC DOVER. _.._\n__\nKPYQAVICERVIMLQZ_SEY SN_VM\nH_H__\n1_ 76__\n9-_84. \n,_9,,888_\n_ZCZC",
    "clean_text": "ZCZC GA94\nWZ 220/26\n,__0\n_9,_)'__$_+_943 $3.9,'5__+6._!_.2_)_HD_ES*_1\n!*_.::,0(9/)_\n_=8:_:!,_3.._0=._(+\n-58=39,_+!!!__AXAXM\nZ__NGTBKENKB__MH_Q_M NAVAREA I WA_Y_J _PF _PSVSOBCGGOHM__-4 2026:9,_,81E,___6_(8'_!7'_(7_!!77__,_+_0*__+__:BHA__AF_A\nFOAW_BOJ_EQBGQQXCG_NI_K ARE PU_SFJDPWMFMK_O_04!+*9:3' 59._6!06*.):''0_)__))__* 7_\n_ _!'1*\n'_- 8 2-4,8_*.'0**._$.\n6(_8(11__(43/26 ONWAS_ARE PROMULGAHPWM_FB__K_FLPP_CALL (E\nKM_E__ AD___EB_IYTL_SS_WU_A_K__\n_D_S.\n\n/:0..__$0./+_S\nA\nD_Z_S__CXPX_K_NYE_X___WGJE_O_BH5__4+2__2_'__+9___31_53$ 8, '3:589, 888 9! -,._ 8, 233(' 1, 13, 26 AN _ ARE ALSO AVACSLSPB_R__WIG_\nWEBSITE _RALTY.CO__N_RADIONAVIGATIOAY_FYB___OJBZLT_R JV_HESEMB_MLBRXXP_UZ__ FROM NAVAJ_M_MXZ__EU(_((4)_ 0_-__18,- PQ_PVKF_PWV=5!2. C_OMQSM__ I 49/26 (EA29)(GA_ISVGZ_GJ__HLIU_L___\n75-/-__4(G__Z 215/26\nGMDSS.\nMRCC DOVER. _.._\n__\nKPYQAVICERVIMLQZ_SEY SN_VM\nH_H__\n1_ 76__\n9-_84.\n,_9,,888_\n_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Kpyqavicervimlqz sey sn vm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 84,
    "heading": "2026-03-23 19:02:37 AREA: T",
    "published_at": "2026-03-23 19:02:37",
    "area": "T",
    "message_id": "",
    "text": "ZCZXM_XH_FH_KBNQK__RNBZB_AU_'_943 28,$ !-6__\n1. BUOYS UNLITQTXFA.-. N1 _08.1,,_1_UZ_HG__\nB. _0__._6__$)9:::_.$_8)-+._!-,:3) 2+ +_(GA5___.9,_888(,888_7\n\n7__ZCZC",
    "clean_text": "ZCZXM_XH_FH_KBNQK__RNBZB_AU_'_943 28,$ !-6__\n1. BUOYS UNLITQTXFA.-. N1 _08.1,,_1_UZ_HG__\nB. _0__._6__$)9:::_.$_8)-+._!-,:3) 2+ +_(GA5___.9,_888(,888_7\n\n7__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. Readable text says: 1. buoys unlitqtxfa.-. n1 08.1,, 1 uz hg. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. buoys unlitqtxfa.-. n1 08.1,, 1 uz hg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 85,
    "heading": "2026-03-23 19:02:05 AREA: T",
    "published_at": "2026-03-23 19:02:05",
    "area": "T",
    "message_id": "",
    "text": "ZCZCV_\n_O_G_AO_KCNHCQ_HW_SRG__ZR_EKQO__7_6-__8_PLATFORM 49/27-PM_HPP_EG_PWAQ__QQ_NN\n_V_C_LPI__P__J\nF WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZCV_\n_O_G_AO_KCNHCQ_HW_SRG__ZR_EKQO__7_6-__8_PLATFORM 49/27-PM_HPP_EG_PWAQ__QQ_NN\n_V_C_LPI__P__J\nF WZ 100/26 (GA52).\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. 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": 86,
    "heading": "2026-03-23 19:01:40 AREA: G",
    "published_at": "2026-03-23 19:01:40",
    "area": "G",
    "message_id": "",
    "text": "ZCZC G_\nWZ 5777_GMDSS. __6_/.*$0_'2_3N_\nNFNCCCPHCO_OFFF_UUZCZC",
    "clean_text": "ZCZC G_\nWZ 5777_GMDSS. __6_/.*$0_'2_3N_\nNFNCCCPHCO_OFFF_UUZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: Nfncccphco offf uuzczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nfncccphco offf uuzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 87,
    "heading": "2026-03-23 19:01:09 AREA: G",
    "published_at": "2026-03-23 19:01:09",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA!69__-.\n5_\nGMDSS.\nMRCC JDPHSW___M MF R.(_7__() .0\n) =_/,!__6_68__  ___3 57-07.7 __::,::_,::9_-84.\n2. CANCEL Z_\n_ _TUE__R_G\n2_:!'6+!_6+(=____ZCZC",
    "clean_text": "ZCZC GA!69__-.\n5_\nGMDSS.\nMRCC JDPHSW___M MF R.(_7__() .0\n) =_/,!__6_68__ ___3 57-07.7 __::,::_,::9_-84.\n2. CANCEL Z_\n_ _TUE__R_G\n2_:!'6+!_6+(=____ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. 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-03-23 17:31:19 AREA: V",
    "published_at": "2026-03-23 17:31:19",
    "area": "V",
    "message_id": "VA58",
    "text": "ZCZC VA58\n1_'_1_26 \n_.____26/26 \nTHZ. \nGUHX_!_23_DBQND FARM. _TURBINE A7_\n*+3_.0J KNO+_\n*!'.!)_/3. \n2\n+_2_ (VA___\nNN_\nC_ _UV_U__UUUKEZ_YU_LSFZS_GGAVMG_FZI_PWMA_NN\nN\nWVVVVVVVVVV_V__VNQ_OW__G___F _L_PX_HY_A_UF\nIHV_KZ,__\n/__4=__7___\n_73_ _51\n,__$!_ !49._ :7))34:9-5_=_=_\n'._$_)__!+,__2.+_.___$9__,,,\n,_88_____5_:6_+ 22'_3(19_\n_6!_7_._'7*_!94. 4.__4_2_4 __1$_4._\n1!_0_\n_8_7_/_,,___'8_,'.!+__CB_\n2. C_PSM_AMNXGRHCQO_HEVOZYY______X_UUZCZC",
    "clean_text": "ZCZC VA58\n1_'_1_26\n_.____26/26\nTHZ.\nGUHX_!_23_DBQND FARM. _TURBINE A7_\n*+3_.0J KNO+_\n*!'.!)_/3.\n2\n+_2_ (VA___\nNN_\nC_ _UV_U__UUUKEZ_YU_LSFZS_GGAVMG_FZI_PWMA_NN\nN\nWVVVVVVVVVV_V__VNQ_OW__G___F _L_PX_HY_A_UF\nIHV_KZ,__\n/__4=__7___\n_73_ _51\n,__$!_ !49._ :7))34:9-5_=_=_\n'._$_)__!+,__2.+_.___$9__,,,\n,_88_____5_:6_+ 22'_3(19_\n_6!_7_._'7*_!94. 4.__4_2_4 __1$_4._\n1!_0_\n_8_7_/_,,___'8_,'.!+__CB_\n2. C_PSM_AMNXGRHCQO_HEVOZYY______X_UUZCZC",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. Readable text says: Guhx ! 23 dbqnd farm. turbine a7. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Guhx ! 23 dbqnd farm. turbine a7"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 89,
    "heading": "2026-03-23 17:17:23 AREA: T",
    "published_at": "2026-03-23 17:17:23",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_TA,-\n)=_ !CMGCHFMHO_\n_PWB\n_7__1_7:4___(_\n__=,,,,\n!_*\n!\n___\n'_+_\n__1_:-/-._,,.!_$7\n\n_O_PWH_HM_ZBVA__WL_S\n_FVUS_/-_1_8:8,856_\n,!!_/5\n_3\n__$_$$_1_8___85___-)_2_87/-:+/,\n__3_-4 26 \nWQ__ZI_YW_ \nTHAGES. \nEAST\nANGLIA\nONE _I\nD_FA_OXM \nG_MRB_I_ZAA_G__N _WZP_ FOG_SIGNAL INOP_RZTVE_M \nNYMVNBTQ__Z_ZW_GE_ZCZC",
    "clean_text": "ZCZC_TA,-\n)=_ !CMGCHFMHO_\n_PWB\n_7__1_7:4___(_\n__=,,,,\n!_*\n!\n___\n'_+_\n__1_:-/-._,,.!_$7\n\n_O_PWH_HM_ZBVA__WL_S\n_FVUS_/-_1_8:8,856_\n,!!_/5\n_3\n__$_$$_1_8___85___-)_2_87/-:+/,\n__3_-4 26\nWQ__ZI_YW_\nTHAGES.\nEAST\nANGLIA\nONE _I\nD_FA_OXM\nG_MRB_I_ZAA_G__N _WZP_ FOG_SIGNAL INOP_RZTVE_M\nNYMVNBTQ__Z_ZW_GE_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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "G mrb i zaa g n wzp fog signal inop rztve m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 90,
    "heading": "2026-03-23 17:06:12 AREA: S",
    "published_at": "2026-03-23 17:06:12",
    "area": "S",
    "message_id": "SE02",
    "text": "ZCZC SE02\n_70 __MPL_BDH_CDSVI_TP_RMAN BIGHT\n\nMONDAS__O_BH_VL_P_\nK__K_HWEST 4 TO 5, INCREASI_MJZ_S_ TO 7.\n ___'_)!'!__:0(_0(__)___) _5)6 09__._!*!)!'_8__+__0,(_BC\n_ZR_GP_QOE_BE_SHPY_MLBNE__LDIUIU_LL_OOOOOOO_OZOO_ZZZZZZZZZZZ_Z___U_C _WK WSY  MREX5\n3/2+*,_+___-:)3' 9, 5_3_\n_'_$ 8, $._8,_ 09\n _9_94 ,9!._+.__(3_*2_ =8:8,85'9,_2$_78_*__\n\n\n_1730 UTX\n_UY__A_WPU-__9_\nOOSHP__=7_SEX_QMUT___\n_U_TWMUYE \n\n __++__)___\n_8_-19.93N !0__++.$9\n___3_( )=___0\n_*1!+(_!)-_\n_\n -9,9$__1-2-\n+:_=+_=__0 __,.___!_6\n5_+6.__._!*_.!.___.\n!8_(\n/!/98__$_4_+___4,__8 _27_\nSEAAREA (COASTTL\n_CN_PLH_YF__SFPIII_BEP_7BH \nAND 51-13.29.=__=802-51.385_3\n_MARKED WITH NORTH CARDIN_DU_DU_X_X_C_PJHLSFJDPWMLPH_PPMLP_SMACZJM_JG_XP_J\n_R_HZM_DZYMKII_THESE PIPELINES\nNNNN",
    "clean_text": "ZCZC SE02\n_70 __MPL_BDH_CDSVI_TP_RMAN BIGHT\n\nMONDAS__O_BH_VL_P_\nK__K_HWEST 4 TO 5, INCREASI_MJZ_S_ TO 7.\n___'_)!'!__:0(_0(__)___) _5)6 09__._!*!)!'_8__+__0,(_BC\n_ZR_GP_QOE_BE_SHPY_MLBNE__LDIUIU_LL_OOOOOOO_OZOO_ZZZZZZZZZZZ_Z___U_C _WK WSY MREX5\n3/2+*,_+___-:)3' 9, 5_3_\n_'_$ 8, $._8,_ 09\n_9_94 ,9!._+.__(3_*2_ =8:8,85'9,_2$_78_*__\n\n_1730 UTX\n_UY__A_WPU-__9_\nOOSHP__=7_SEX_QMUT___\n_U_TWMUYE\n\n__++__)___\n_8_-19.93N !0__++.$9\n___3_( )=___0\n_*1!+(_!)-_\n_\n-9,9$__1-2-\n+:_=+_=__0 __,.___!_6\n5_+6.__._!*_.!.___.\n!8_(\n/!/98__$_4_+___4,__8 _27_\nSEAAREA (COASTTL\n_CN_PLH_YF__SFPIII_BEP_7BH\nAND 51-13.29.=__=802-51.385_3\n_MARKED WITH NORTH CARDIN_DU_DU_X_X_C_PJHLSFJDPWMLPH_PPMLP_SMACZJM_JG_XP_J\n_R_HZM_DZYMKII_THESE PIPELINES\nNNNN",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code S. Readable text reports a pipeline-related hazard with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "R hzm dzymkii these pipelines",
      "Seaarea (coasttl"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 91,
    "heading": "2026-03-23 17:04:42 AREA: S",
    "published_at": "2026-03-23 17:04:42",
    "area": "S",
    "message_id": "SA34",
    "text": "ZCZC SA34\nNCC___ZIM_S_NGDG_G_HKZS_HJJM_PYB\nI_EW_STERN AP_ O_(923__LQPBHK_QPRBDTG_IN_LRN_,,,\n\n((((((=======\n99999-____:__AXAK\n_KN_KZC-N MUQ_110/ 9\n_6\nN_V__GURLBHLA_N_LRPPS_KA__BANK9,_*.39QO_G_CDRRQ_I_YXR3',\n6+:2.+_$_)__ECVQ\n_RICTE_COABP_YSFJG_TK_P__P_K_HFZJ__FFF_ERTH OF \n_M__MYP_C_ONI\n__MCG_J\n\n\n_ZCZC",
    "clean_text": "ZCZC SA34\nNCC___ZIM_S_NGDG_G_HKZS_HJJM_PYB\nI_EW_STERN AP_ O_(923__LQPBHK_QPRBDTG_IN_LRN_,,,\n\n((((((=======\n99999-____:__AXAK\n_KN_KZC-N MUQ_110/ 9\n_6\nN_V__GURLBHLA_N_LRPPS_KA__BANK9,_*.39QO_G_CDRRQ_I_YXR3',\n6+:2.+_$_)__ECVQ\n_RICTE_COABP_YSFJG_TK_P__P_K_HFZJ__FFF_ERTH OF\n_M__MYP_C_ONI\n__MCG_J\n\n_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. 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": 92,
    "heading": "2026-03-23 17:03:43 AREA: T",
    "published_at": "2026-03-23 17:03:43",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMJ_LCAB_MBURG\n07167_5: .-4 26\nN\n__ TA SOUTHERLY O__XLJGBPM_JHLSFJDPWMF_MDZJ_S-+_D_V__\nI_A_QUNQUN 006_X_,_HAKXDS__YG_W LIGHOZ_Z_B_D_FL,\n_'3:.\n7\n*_0.)06_$.60_:_1$,7__-888 )'7_7_2.\n__++++++++++++-+---------_\n 7(7___ZCZC",
    "clean_text": "ZCZCMJ_LCAB_MBURG\n07167_5: .-4 26\nN\n__ TA SOUTHERLY O__XLJGBPM_JHLSFJDPWMF_MDZJ_S-+_D_V__\nI_A_QUNQUN 006_X_,_HAKXDS__YG_W LIGHOZ_Z_B_D_FL,\n_'3:.\n7\n*_0.)06_$.60_:_1$,7__-888 )'7_7_2.\n__++++++++++++-+---------_\n7(7___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. Readable text says: Zczcmj lcab mburg. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Zczcmj lcab mburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 94,
    "heading": "2026-03-23 17:01:13 AREA: S",
    "published_at": "2026-03-23 17:01:13",
    "area": "S",
    "message_id": "SA62",
    "text": "ZCZC SA62\nNCC-NLCY_ON\nCGMCCLZDOW__IMPZL__NO. 1__9,_0!203__1_QEQBIU_Y_OY\n _1____08-29E MIAJF__Z\nGW_Z__U_UK_PYWPMG_HXM_ONKQ_M WARN.,90(:5/$__,\n8_8+2_((-:7 _/*=5__0\n_+8_.\nSURV___ZPYH__QB__6__0__._6.'(_'_+6.+6_QO_QB_Q_SITION 54-2_.____\n____,!_+_,'.\nBILQ_1 NM R_Q_PEHPWH_Z_H_AAAJJ_UA_ZCZC",
    "clean_text": "ZCZC SA62\nNCC-NLCY_ON\nCGMCCLZDOW__IMPZL__NO. 1__9,_0!203__1_QEQBIU_Y_OY\n_1____08-29E MIAJF__Z\nGW_Z__U_UK_PYWPMG_HXM_ONKQ_M WARN.,90(:5/$__,\n8_8+2_((-:7 _/*=5__0\n_+8_.\nSURV___ZPYH__QB__6__0__._6.'(_'_+6.+6_QO_QB_Q_SITION 54-2_.____\n____,!_+_,'.\nBILQ_1 NM R_Q_PEHPWH_Z_H_AAAJJ_UA_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: Ncc-nlcy on. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ncc-nlcy on"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 96,
    "heading": "2026-03-23 16:35:52 AREA: P",
    "published_at": "2026-03-23 16:35:52",
    "area": "P",
    "message_id": "PA35",
    "text": "ZCZC PA35\n181548 UH_M_Y_\n_MSI 8+5_NORTH SEAO_ZHYCZDH_ZMM B_HPMYH_ Y_YG_K\n__C_E\nLIGHTBUOY NAM 14  53-32.7N 003-28.5E\nLIGHTBUOY NAM UPMMHPP_HG_M\nFCNKHNZ_HTBUOY NAM __0.+_3 __004-53.4E\nLIGHTBUOY PEN 0!.._07+_:__.\n_03.7E\nPERMANENT CHANGE OF CHARACHPYMONS'___3\n_ G_M_D_PWMHZMS'___3\n___*9,9,9,,888_+:+: 0-34\n141743 MZXHM\nZ__\nMSI 310/25\nBUOY HWP14 IN 52-40N 003-56E TEM_ZYYFSEM_FHDWYU_BO_G_XPSM_JFM\nP_G_CD_ONN_II_F_ZCZC",
    "clean_text": "ZCZC PA35\n181548 UH_M_Y_\n_MSI 8+5_NORTH SEAO_ZHYCZDH_ZMM B_HPMYH_ Y_YG_K\n__C_E\nLIGHTBUOY NAM 14 53-32.7N 003-28.5E\nLIGHTBUOY NAM UPMMHPP_HG_M\nFCNKHNZ_HTBUOY NAM __0.+_3 __004-53.4E\nLIGHTBUOY PEN 0!.._07+_:__.\n_03.7E\nPERMANENT CHANGE OF CHARACHPYMONS'___3\n_ G_M_D_PWMHZMS'___3\n___*9,9,9,,888_+:+: 0-34\n141743 MZXHM\nZ__\nMSI 310/25\nBUOY HWP14 IN 52-40N 003-56E TEM_ZYYFSEM_FHDWYU_BO_G_XPSM_JFM\nP_G_CD_ONN_II_F_ZCZC",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORTH SEA"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. Readable text says: Lightbuoy nam 14 53-32.7n 003-28.5e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lightbuoy nam 14 53-32.7n 003-28.5e",
      "Buoy hwp14 in 52-40n 003-56e tem zyyfsem fhdwyu bo g xpsm jfm",
      "Lightbuoy nam upmmhpp hg m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 97,
    "heading": "2026-03-23 15:07:56 AREA: G",
    "published_at": "2026-03-23 15:07:56",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\n__+6,$_++_KEAB\nFE_KHU_FTM__.\n\n_,_ 3 _796 56 6L_G:(()7_)3_19*___6-12.3__.\n_U__GKBK1_\n)_/_\n_HAUU_M CANCPSM_AM\n TUEMV_RKNAMJ__H_AXR\nE_YF\n____KAXAXMP_HF_NCMN0__92-4 _6_943:-*_.2:__$__/(_\n _5_=7__'_**_UTC 230326\nTHERE ARE NOM_YGRQLZ__NYFW_PMZ_PYMHDPBSE$12_1_QBKU_IGAHDPYM_EDB__BDI_ALIQ__L_0____4_____1_1_. LZ OYEN SOUTH OF \nICELAND IS SSZBSIL__S_LSIP_IQ_WARDS TO THE NORWEGFMONJP_ASSO_PWMHYZ_EWBC__PYM_ OF \nTHE NORTH SEA IMHDPM_ZYF_\nFORECAST VALID MONDAY 15:0)!'._:0*23._PX_BHMD_ZA_S__ +_8,)6 23'5 2-3, ZZML_G SOUTHWEJH_MGF_YPKQGRBNKRB_W__OR._!_60*!._+7_K_BDAB_A\nWAVEHEIGHT LESS HDM_ METER,._'_EB.7_3_49,_9:._)+4_8_6_:88!8_*(*___8,)6 '975_2._0*_, INCRQJFMKRP_DPMONZYHDM_ZJ_F_6.\nMODERHPMHZM_ZZ_BNQ_GK_  _M_:/__3=__56\n_3_5 09''8_)6 \n!9_\n._'_06.!_113__:__-=3_38__5 )3'' 5_-, 0.____0__6_8___.8___49,_9_9)_NE_ZAZZRPPS_IZ_LY 5, LATPYMONFMHDGI_LVK_GUNNMK _P_DERAHPMHZM_ZZY_BNQ_GK__L LG__IG_IULIGP_ POSSIBLY \nFOG, LATER INCREASIM_ZWPYHPODABI.\nU_PD_F_DHON__CBI\nZD_G_P_FIY_FSSF_UCK_SKKC_Y_G_CREASING 1.\n0-1.5 METER__ONONONGWZ_ \nSOUTH TO SOUTHWESTM_BB_3KQGRBRKOIEP_ 5, POSSIBLY 6.\nMODPYHPMHZM_ZZBHE_LLY __\n__3V_O GOOO_\n_AVEHEIGHT 0.5-1.0 METER, _YZBMHDPMZYHDMF_YPKQGEORMGC_\nMETER._'_03___+6_$.\n_2.0 METER.\n\n!9FORECAST VALIWMHCPJWEM_NX9_$_*__5_ __ )5+_44__1+'_7881_/O_THWEST 4-5, FZZMF_YPJF_MNKP_MODERAHZHPZZMZZOH__BNCKQI\n_8_/_9)_NEBHQ_METER, \n_'_06.\n_2.0 _PH_Y__ZZZW_SR_LIKMK_T 5-6.\nGRADUALLY IN THE NORTDPYM_YDM_SIOSMYKGL__C_I_PMHZM_ZZII__AVEHEFGDH_ MGCML_G_ZR_X__32___49,_9:9_)_NE_UAAAZEPPS_I_HT \nSOSPJ_D_PJEMO\nH_RADUALLY IN THE ZYHDELB(3$__'.6!_MODERATE TOM_ZZ__WAVEHEIGHT 1. BH_G_HNED_PI_RWSG_U_IG_LQ__LMI__RONA\n_SXI__Z_H_ONGWZ_M\nGRADUALLY OCCASFZSMYF_MODERATE TO GOOD.\nWAVEHEIGH__CC_9:9_)_NE_UAZAAAU_SYFFFFSS_X_KAXAXF_PF_TR UTC MAR \n_MSI (+5_KLAVERBANK\nNZWJMLCZ_MP\n_WJMLCZ_MP\n_IN 54-12.9N 004-00.5E\nESTABLISHED\nNNNN",
    "clean_text": "ZCZC GA73\nWZ 130/26\n__+6,$_++_KEAB\nFE_KHU_FTM__.\n\n_,_ 3 _796 56 6L_G:(()7_)3_19*___6-12.3__.\n_U__GKBK1_\n)_/_\n_HAUU_M CANCPSM_AM\nTUEMV_RKNAMJ__H_AXR\nE_YF\n____KAXAXMP_HF_NCMN0__92-4 _6_943:-*_.2:__$__/(_\n_5_=7__'_**_UTC 230326\nTHERE ARE NOM_YGRQLZ__NYFW_PMZ_PYMHDPBSE$12_1_QBKU_IGAHDPYM_EDB__BDI_ALIQ__L_0____4_____1_1_. LZ OYEN SOUTH OF\nICELAND IS SSZBSIL__S_LSIP_IQ_WARDS TO THE NORWEGFMONJP_ASSO_PWMHYZ_EWBC__PYM_ OF\nTHE NORTH SEA IMHDPM_ZYF_\nFORECAST VALID MONDAY 15:0)!'._:0*23._PX_BHMD_ZA_S__ +_8,)6 23'5 2-3, ZZML_G SOUTHWEJH_MGF_YPKQGRBNKRB_W__OR._!_60*!._+7_K_BDAB_A\nWAVEHEIGHT LESS HDM_ METER,._'_EB.7_3_49,_9:._)+4_8_6_:88!8_*(*___8,)6 '975_2._0*_, INCRQJFMKRP_DPMONZYHDM_ZJ_F_6.\nMODERHPMHZM_ZZ_BNQ_GK_ _M_:/__3=__56\n_3_5 09''8_)6\n!9_\n._'_06.!_113__:__-=3_38__5 )3'' 5_-, 0.____0__6_8___.8___49,_9_9)_NE_ZAZZRPPS_IZ_LY 5, LATPYMONFMHDGI_LVK_GUNNMK _P_DERAHPMHZM_ZZY_BNQ_GK__L LG__IG_IULIGP_ POSSIBLY\nFOG, LATER INCREASIM_ZWPYHPODABI.\nU_PD_F_DHON__CBI\nZD_G_P_FIY_FSSF_UCK_SKKC_Y_G_CREASING 1.\n0-1.5 METER__ONONONGWZ_\nSOUTH TO SOUTHWESTM_BB_3KQGRBRKOIEP_ 5, POSSIBLY 6.\nMODPYHPMHZM_ZZBHE_LLY __\n__3V_O GOOO_\n_AVEHEIGHT 0.5-1.0 METER, _YZBMHDPMZYHDMF_YPKQGEORMGC_\nMETER._'_03___+6_$.\n_2.0 METER.\n\n!9FORECAST VALIWMHCPJWEM_NX9_$_*__5_ __ )5+_44__1+'_7881_/O_THWEST 4-5, FZZMF_YPJF_MNKP_MODERAHZHPZZMZZOH__BNCKQI\n_8_/_9)_NEBHQ_METER,\n_'_06.\n_2.0 _PH_Y__ZZZW_SR_LIKMK_T 5-6.\nGRADUALLY IN THE NORTDPYM_YDM_SIOSMYKGL__C_I_PMHZM_ZZII__AVEHEFGDH_ MGCML_G_ZR_X__32___49,_9:9_)_NE_UAAAZEPPS_I_HT\nSOSPJ_D_PJEMO\nH_RADUALLY IN THE ZYHDELB(3$__'.6!_MODERATE TOM_ZZ__WAVEHEIGHT 1. BH_G_HNED_PI_RWSG_U_IG_LQ__LMI__RONA\n_SXI__Z_H_ONGWZ_M\nGRADUALLY OCCASFZSMYF_MODERATE TO GOOD.\nWAVEHEIGH__CC_9:9_)_NE_UAZAAAU_SYFFFFSS_X_KAXAXF_PF_TR UTC MAR\n_MSI (+5_KLAVERBANK\nNZWJMLCZ_MP\n_WJMLCZ_MP\n_IN 54-12.9N 004-00.5E\nESTABLISHED\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, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fog, later increasim zwpyhpodabi",
      "Iceland is sszbsil s lsip iq wards to the norwegfmonjp asso pwmhyz ewbc pym of",
      "Forecast valid monday 15:0)!'. :0 23. px bhmd za s 8,)6 23'5 2-3, zzml g southwejh mgf ypkqgrbnkrb w or. ! 60 !. 7 k bdab a"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 98,
    "heading": "2026-03-23 15:07:32 AREA: T",
    "published_at": "2026-03-23 15:07:32",
    "area": "T",
    "message_id": "",
    "text": "KCZC GA82\n__-.\n_6_5_\nVIKING._)0_)06_'.+!'.2!EI_B_SNE_PM3 BUOY 59-31.7N 001-30____88__,8AUIIRLL_U UZCZC",
    "clean_text": "KCZC GA82\n__-.\n_6_5_\nVIKING._)0_)06_'.+!'.2!EI_B_SNE_PM3 BUOY 59-31.7N 001-30____88__,8AUIIRLL_U UZCZC",
    "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: Viking. )0 )06 '. !'.2!ei b sne pm3 buoy 59-31.7n 001-30 88 ,8auiirll u uzczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Viking. )0 )06 '. !'.2!ei b sne pm3 buoy 59-31.7n 001-30 88 ,8auiirll u uzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 99,
    "heading": "2026-03-23 15:07:05 AREA: G",
    "published_at": "2026-03-23 15:07:05",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA_FHONG_AM\nXRGHKQO_W_SNRGZZR_UIR_OV_-:71=0*5+5!94. '975_2-4( 53-11.0N 002-05.8P_M_IIL__*:_)085_0_=3. \nNNNN",
    "clean_text": "ZCZC GA_FHONG_AM\nXRGHKQO_W_SNRGZZR_UIR_OV_-:71=0*5+5!94. '975_2-4( 53-11.0N 002-05.8P_M_IIL__*:_)085_0_=3.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. 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": 100,
    "heading": "2026-03-23 15:06:42 AREA: G",
    "published_at": "2026-03-23 15:06:42",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GQ_HAB__KCBVZB_R_IHF_GIQ_ FARMXB_UDGEON SZCHDMLCZ_M_HNCMKDHL_E UHCS_\nNMNNONNIII__UU_ZCZC",
    "clean_text": "ZCZC GQ_HAB__KCBVZB_R_IHF_GIQ_ FARMXB_UDGEON SZCHDMLCZ_M_HNCMKDHL_E UHCS_\nNMNNONNIII__UU_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. 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": 101,
    "heading": "2026-03-23 15:05:33 AREA: G",
    "published_at": "2026-03-23 15:05:33",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\n,_$:_)\n4_+_-3(' \n_3_83)$ ,945_23'52-4$'.\n_35 .-'5 53-10.7XG_2-59.1)BXJ__(7_(_-=-8$' 8,903*9*L_ON_M CANCEL WZ 875-3.=___, :*__88-8-)+_ZCAXM_ E__Z 1_ \nTW_DILZR_I_D_NK WIND FARM. \n1. TUYLFPM_ZWP_VY_\n \nFNS__TIVE/.9,__$01, 53-20.1N__SU_E..9,_)8_$0__5')____) _6*_)___9E. \n2. CANCEL WZ 5!588_9,,888:ZCZC",
    "clean_text": "ZCZC GA71\nWZ 204/26\n,_$:_)\n4_+_-3('\n_3_83)$ ,945_23'52-4$'.\n_35 .-'5 53-10.7XG_2-59.1)BXJ__(7_(_-=-8$' 8,903*9*L_ON_M CANCEL WZ 875-3.=___, :*__88-8-)+_ZCAXM_ E__Z 1_\nTW_DILZR_I_D_NK WIND FARM.\n1. TUYLFPM_ZWP_VY_\n\nFNS__TIVE/.9,__$01, 53-20.1N__SU_E..9,_)8_$0__5')____) _6*_)___9E.\n2. CANCEL WZ 5!588_9,,888:ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 2. cancel wz 5!588 9,,888:zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wz 5!588 9,,888:zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 102,
    "heading": "2026-03-23 15:05:04 AREA: G",
    "published_at": "2026-03-23 15:05:04",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/0__2_8*6_8)_+46_)__._NXKG/*=__8_+_186\n \nPL__ZYBMZYHDM_YPT_ST2_8_-03.2N_\n_ _VISD_FFNY\n_WM_AVAIDSCFZ_PY_HF__\nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/0__2_8*6_8)_+46_)__._NXKG/*=__8_+_186\n\nPL__ZYBMZYHDM_YPT_ST2_8_-03.2N_\n_ _VISD_FFNY\n_WM_AVAIDSCFZ_PY_HF__\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. 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": 103,
    "heading": "2026-03-23 15:04:14 AREA: G",
    "published_at": "2026-03-23 15:04:14",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ \n_ _TU_MO\nGE_PP\nMRCC DOVECT_MO_G_/T SERVICE FROM BAWDSEY SITE 51-59.__375001-26___0.+_84. \nN_SS_CI__U_AXAXM\nF_ONGKBNKMRHKQO_UPPB_ZRIQ_HUMBER. \nMF R/T SERVICE FROM _CSSPY_ZHJMJFHPM_PRMYG__\n_ KCXGCB____ZCZC",
    "clean_text": "ZCZC GA83\nWZ\n_ _TU_MO\nGE_PP\nMRCC DOVECT_MO_G_/T SERVICE FROM BAWDSEY SITE 51-59.__375001-26___0.+_84.\nN_SS_CI__U_AXAXM\nF_ONGKBNKMRHKQO_UPPB_ZRIQ_HUMBER.\nMF R/T SERVICE FROM _CSSPY_ZHJMJFHPM_PRMYG__\n_ KCXGCB____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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc dovect mo g /t service from bawdsey site 51-59. 375001-26 0. 84",
      "Mf r/t service from csspy zhjmjfhpm prmyg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 104,
    "heading": "2026-03-23 15:03:47 AREA: T",
    "published_at": "2026-03-23 15:03:47",
    "area": "T",
    "message_id": "",
    "text": "_CZC GA94\nWZ 220/26\n___0\n+9_'*1$29_4-594 28,$ !-4..\nTURBINV__Z_TAPYMIN_001-23.3_7.:__*_):8__3:,___.__=36_=(3\nNNNN",
    "clean_text": "_CZC GA94\nWZ 220/26\n___0\n+9_'*1$29_4-594 28,$ !-4..\nTURBINV__Z_TAPYMIN_001-23.3_7.:__*_):8__3:,___.__=36_=(3\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. 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": 105,
    "heading": "2026-03-23 15:02:40 AREA: G",
    "published_at": "2026-03-23 15:02:40",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWP__5/__7_7._34. \n_'0__696_$. \n1. PLATFORM 49/27-'__7_)_*)!_0'',_9_!_.2.._*__92_)__\n33-58=3. \n2.__:-,:3) 2+ :03:$_(GA_\nNNNN",
    "clean_text": "ZCZC GA02\nWP__5/__7_7._34.\n_'0__696_$.\n1. PLATFORM 49/27-'__7_)_*)!_0'',_9_!_.2.._*__92_)__\n33-58=3.\n2.__:-,:3) 2+ :03:$_(GA_\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. 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": 106,
    "heading": "2026-03-23 15:02:16 AREA: G",
    "published_at": "2026-03-23 15:02:16",
    "area": "G",
    "message_id": "GA03",
    "text": "ZCZC GA03\nWZ 22_7\nGMDS..__6771)5_,$.\nVHF DSC SER\nF_PJM_YDQ_HW\nP_WMJFHPM_H:__3N 003-22.6W OFF_.\nNND_ONNIII_AZCZC",
    "clean_text": "ZCZC GA03\nWZ 22_7\nGMDS..__6771)5_,$.\nVHF DSC SER\nF_PJM_YDQ_HW\nP_WMJFHPM_H:__3N 003-22.6W OFF_.\nNND_ONNIII_AZCZC",
    "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: Vhf dsc ser. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vhf dsc ser"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 107,
    "heading": "2026-03-23 15:01:45 AREA: G",
    "published_at": "2026-03-23 15:01:45",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GZFE__Z 225/26\n_700_.\n1. MF_RFC_XQAND DBA_JGK__LQI_\n QYNBSKBNITE 57-07_ 9!! -84.\n2. CA:_.*_\n_8_'97,(__0Z__B __ZCZC",
    "clean_text": "ZCZC GZFE__Z 225/26\n_700_.\n1. MF_RFC_XQAND DBA_JGK__LQI_\nQYNBSKBNITE 57-07_ 9!! -84.\n2. CA:_.*_\n_8_'97,(__0Z__B __ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: Qynbskbnite 57-07 9!! -84. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Qynbskbnite 57-07 9!! -84"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 108,
    "heading": "2026-03-23 15:00:18 AREA: Z",
    "published_at": "2026-03-23 15:00:18",
    "area": "Z",
    "message_id": "ZFLGZO",
    "text": "ZCZC ZFLGZO\nG_S_MM__Z3$ '9\n_!\n10(6348,___23'534)4_+,$ 8,:43-'8,_ '3=343 _ !94:3 9 LATER\n\nFORTH\nSO_XT_LTERJE\nL_L__E_E 8 47'42/__1_+/6=\n\nTYNE\nSOUTHWEJ_P_J___$=_$(___*3__+-33_8_,_8,_888_)6 _-)3 !94:3 !81_3/037/__1_+/6_=0=!\n!\n\n__=-=ZC_CM__CO_G_Z 226/26\n_$: )_!_\nBESSEMER GAS FICE_QM PLATFORM 49/23 TEAQQMO\n_WAU__ G_FOG SIGNANUANOPERATIYFKV_F_ UN_ZNCEL W_RHCQO_HE_DEJ__HIIIIULLAI____UUAZCZC",
    "clean_text": "ZCZC ZFLGZO\nG_S_MM__Z3$ '9\n_!\n10(6348,___23'534)4_+,$ 8,:43-'8,_ '3=343 _ !94:3 9 LATER\n\nFORTH\nSO_XT_LTERJE\nL_L__E_E 8 47'42/__1_+/6=\n\nTYNE\nSOUTHWEJ_P_J___$=_$(___*3__+-33_8_,_8,_888_)6 _-)3 !94:3 !81_3/037/__1_+/6_=0=!\n!\n\n__=-=ZC_CM__CO_G_Z 226/26\n_$: )_!_\nBESSEMER GAS FICE_QM PLATFORM 49/23 TEAQQMO\n_WAU__ G_FOG SIGNANUANOPERATIYFKV_F_ UN_ZNCEL W_RHCQO_HE_DEJ__HIIIIULLAI____UUAZCZC",
    "display_region_heading": "Unresolved B1 code Z",
    "display_region_label": "B1 code Z",
    "subject_label": "pilot service notice",
    "subject_code": "F",
    "decoded_summary": "pilot service notice for Unresolved B1 code Z. This is a weather bulletin; readable sections mention fog, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wau g fog signanuanoperatiyfkv f un zncel w rhcqo he dej hiiiiullai uuazczc",
      "Bessemer gas fice qm platform 49/23 teaqqmo"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 109,
    "heading": "2026-03-23 14:40:42 AREA: T",
    "published_at": "2026-03-23 14:40:42",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMP__IT B_51-7 9),:._4=)9_888__AXA_MPK__WZ 1_\n5_28__5001-35.5W FOG SIGNAL IPFKZQN\n_ \nN_ONNIII B_Z\nZZZ_A_WZ  __57__-___8! __ 51-_8-(8-(*=__,)85.\n/,,9,_8(_=============0(8:= 9*___/5__7__(ZCZC",
    "clean_text": "ZCZCMP__IT B_51-7 9),:._4=)9_888__AXA_MPK__WZ 1_\n5_28__5001-35.5W FOG SIGNAL IPFKZQN\n_\nN_ONNIII B_Z\nZZZ_A_WZ __57__-___8! __ 51-_8-(8-(*=__,)85.\n/,,9,_8(_=============0(8:= 9*___/5__7__(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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "5 28 5001-35.5w fog signal ipfkzqn"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 110,
    "heading": "2026-03-23 14:40:18 AREA: T",
    "published_at": "2026-03-23 14:40:18",
    "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": 112,
    "heading": "2026-03-23 13:42:17 AREA: T",
    "published_at": "2026-03-23 13:42:17",
    "area": "T",
    "message_id": "",
    "text": "ZCZC\nU_\n231130=UTC MAR\nOOSTENDERADIO MSI 117/26\nBE EEZ\nM/V\nBTAWC_M_F_FMZPYHFZJIIIKM_+_.\n 70O_O_\n___PMGVH_MF_M_ZJ_\nHNU__ ZG_M\n_U_U__FHNNZ_HQW)45__5\n3_/_1_U__P AT A SAFE DISTANC OF 500 M.\nBELGICACFJMSFJHPF_MZ_M_D_M\n_ND 60.\nNNNN",
    "clean_text": "ZCZC\nU_\n231130=UTC MAR\nOOSTENDERADIO MSI 117/26\nBE EEZ\nM/V\nBTAWC_M_F_FMZPYHFZJIIIKM_+_.\n70O_O_\n___PMGVH_MF_M_ZJ_\nHNU__ ZG_M\n_U_U__FHNNZ_HQW)45__5\n3_/_1_U__P AT A SAFE DISTANC OF 500 M.\nBELGICACFJMSFJHPF_MZ_M_D_M\n_ND 60.\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 118,
    "heading": "2026-03-23 13:17:38 AREA: T",
    "published_at": "2026-03-23 13:17:38",
    "area": "T",
    "message_id": "TA19",
    "text": "ZCZC TA19\n071438 UTC A__V\nOOSTENDERADIO MSI 189/23\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVERSIJDE ESTABLISHED BETWEEN BEACH \nAND 51-13.294N 002-51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nUNDERWATERPIPELINE LOMBARDSIJDE ESTABLISHED BETA_BEACH \nAND POS 51-__N 002-45.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABOVE \nTHESE PIPELINES\nNNNN",
    "clean_text": "ZCZC TA19\n071438 UTC A__V\nOOSTENDERADIO MSI 189/23\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVERSIJDE ESTABLISHED BETWEEN BEACH\nAND 51-13.294N 002-51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDN'\nUNDERWATERPIPELINE LOMBARDSIJDE ESTABLISHED BETA_BEACH\nAND POS 51-__N 002-45.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABOVE\nTHESE PIPELINES\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text reports a pipeline-related hazard near 51-13.294N 002-51.385E with local restrictions for nearby traffic.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor to fish above",
      "Marked with north cardinal buoy 'jdn'",
      "Marked with north cardinal buoy 'dc1'"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 120,
    "heading": "2026-03-23 13:16:23 AREA: T",
    "published_at": "2026-03-23 13:16:23",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n141654 UTC J_\nOOSTENDERADIO MSI 027/26\nBE EEZ\nHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 5127/375_, 00222.306E \nUNMARKED\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA99\n141654 UTC J_\nOOSTENDERADIO MSI 027/26\nBE EEZ\nHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 5127/375_, 00222.306E\nUNMARKED\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE VICINITY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "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: Shipping is requested not to fish nor to anchor in the vicinity.",
    "decoded_highlights": [
      "Shipping is requested not to fish nor to anchor in the vicinity",
      "Hydrographical instrument established in pos 5127/375 , 00222.306e",
      "Unmarked"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 126,
    "heading": "2026-03-23 13:11:02 AREA: T",
    "published_at": "2026-03-23 13:11:02",
    "area": "T",
    "message_id": "TA97",
    "text": "ZCZC TA97\n230715 UTC M_\n__OO_TENDERADIO MSI 115/26\nBE EEZ\nBOTTOM SURVEY BY M/\nML_SF_M_IK__+_.__MG_H_MC_HF_M\n  MG_H_ONGFM_ZJFHFZM_H _PG_MWA WIMTE\nSHIPPING IS REQU_D TO PASS AT A SAFE DISTANCE OF 500 M\n_E_A IS LISTENING ON CHAN 16 AND 60\nNNNN",
    "clean_text": "ZCZC TA97\n230715 UTC M_\n__OO_TENDERADIO MSI 115/26\nBE EEZ\nBOTTOM SURVEY BY M/\nML_SF_M_IK__+_.__MG_H_MC_HF_M\nMG_H_ONGFM_ZJFHFZM_H _PG_MWA WIMTE\nSHIPPING IS REQU_D TO PASS AT A SAFE DISTANCE OF 500 M\n_E_A IS LISTENING ON CHAN 16 AND 60\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BE EEZ"
    ],
    "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: Bottom survey by m/. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bottom survey by m/",
      "Shipping is requ d to pass at a safe distance of 500 m",
      "E a is listening on chan 16 and 60"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-03-23 13:10:23 AREA: T",
    "published_at": "2026-03-23 13:10:23",
    "area": "T",
    "message_id": "TA98",
    "text": "ZCZC TA98\n230719 UTC MAR\nGAZJHPWPYWFZ\nQGONMMPHCP_SB__UNNERY EXERCISES IN THE SMALL SECTOR OF LOMBARDSIJDE\nTODAY 23 03 2026 FROM 0800 UNTIL 1330 K_GUNNERY SECTOR IS LISTENING ON _ 16 AND 74\nNNNN",
    "clean_text": "ZCZC TA98\n230719 UTC MAR\nGAZJHPWPYWFZ\nQGONMMPHCP_SB__UNNERY EXERCISES IN THE SMALL SECTOR OF LOMBARDSIJDE\nTODAY 23 03 2026 FROM 0800 UNTIL 1330 K_GUNNERY SECTOR IS LISTENING ON _ 16 AND 74\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: Qgonmmphcp sb unnery exercises in the small sector of lombardsijde.",
    "decoded_highlights": [
      "Qgonmmphcp sb unnery exercises in the small sector of lombardsijde",
      "Today 23 03 2026 from 0800 until 1330 k gunnery sector is listening on 16 and 74",
      "Gazjhpwpywfz"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 128,
    "heading": "2026-03-23 13:06:11 AREA: S",
    "published_at": "2026-03-23 13:06:11",
    "area": "S",
    "message_id": "SE01",
    "text": "ZCZC SE01\n231 _M___\n5____):6.____/_\n\nWEATHERFORECAST FOR GERMAD BIGHT\n\nMONDAY:\nWIND: LIGHT AND VARIABLE WINDS, LATER SOUTHWEST ABOUT 4.\nVISIBILITY/WEATHER: LOCALLY POOR VISIBILITY, MISTY.\nSEA: 1,5 METER.\n\nTUESDAY:\nWIND: SOUTHWEST 4 TO 5, INCREASING SLOWLY 6 TO 7.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY_SEA:_2,5 METER, WESTERN PA_T LATER 4 METER.\nNNNN",
    "clean_text": "ZCZC SE01\n231 _M___\n5____):6.____/_\n\nWEATHERFORECAST FOR GERMAD BIGHT\n\nMONDAY:\nWIND: LIGHT AND VARIABLE WINDS, LATER SOUTHWEST ABOUT 4.\nVISIBILITY/WEATHER: LOCALLY POOR VISIBILITY, MISTY.\nSEA: 1,5 METER.\n\nTUESDAY:\nWIND: SOUTHWEST 4 TO 5, INCREASING SLOWLY 6 TO 7.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY_SEA:_2,5 METER, WESTERN PA_T LATER 4 METER.\nNNNN",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code S. Readable text says: Wind: light and variable winds, later southwest about 4. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wind: light and variable winds, later southwest about 4",
      "Visibility/weather: rain or shower with partly poor visibility sea: 2,5 meter, western pa t later 4 meter",
      "Visibility/weather: locally poor visibility, misty"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 129,
    "heading": "2026-03-23 13:05:33 AREA: S",
    "published_at": "2026-03-23 13:05:33",
    "area": "S",
    "message_id": "SA34",
    "text": "ZCZC SA34\nNCC-HAMBURG\n__ _0MG_HXM_KYON_Q_AV. ARN_MVKXZWBM UZONGHJJM_PYBMLF_DHM_PJHPYM_ACH\n'GW/EMS' LIGHT-:=)!_0_.__6_53.094-48)6 43.9=3$.\n_,,,,\n\nZCZC",
    "clean_text": "ZCZC SA34\nNCC-HAMBURG\n__ _0MG_HXM_KYON_Q_AV. ARN_MVKXZWBM UZONGHJJM_PYBMLF_DHM_PJHPYM_ACH\n'GW/EMS' LIGHT-:=)!_0_.__6_53.094-48)6 43.9=3$.\n_,,,,\n\nZCZC",
    "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: 'gw/ems' light-: )! 0 . 6 53.094-48)6 43.9 3$. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'gw/ems' light-: )! 0 . 6 53.094-48)6 43.9 3$",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 138,
    "heading": "2026-03-23 12:00:43 AREA: G",
    "published_at": "2026-03-23 12:00:43",
    "area": "G",
    "message_id": "GB98",
    "text": "ZCZC GB98\nGALE WARNING MONDAY 23 MARCH 0956 UTC\n\nVIKING\nSOCHDPYS_M__LE FORCE 8 EXPECT_D SOON, VEERING SOUTHWESTERLY AND INCREASING SEVERE GALE FORCE 9 LATER\n\nFORTH\nSO__HWESTERLY GALE FORCE 8 EXPECTED LATER\n\nTYNE\nSOUTHWESTERLY GALE FORCE 8 EXPECTED LATER\n\nDOGGER\nSOUTHWESTERLY_E FORCE 8 EXPECTED LATER\nNNNN",
    "clean_text": "ZCZC GB98\nGALE WARNING MONDAY 23 MARCH 0956 UTC\n\nVIKING\nSOCHDPYS_M__LE FORCE 8 EXPECT_D SOON, VEERING SOUTHWESTERLY AND INCREASING SEVERE GALE FORCE 9 LATER\n\nFORTH\nSO__HWESTERLY GALE FORCE 8 EXPECTED LATER\n\nTYNE\nSOUTHWESTERLY GALE FORCE 8 EXPECTED LATER\n\nDOGGER\nSOUTHWESTERLY_E FORCE 8 EXPECTED LATER\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",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Sochdpys m le force 8 expect d soon, veering southwesterly and increasing severe gale force 9 later.",
    "decoded_highlights": [
      "Sochdpys m le force 8 expect d soon, veering southwesterly and increasing severe gale force 9 later",
      "So hwesterly gale force 8 expected later",
      "Southwesterly gale force 8 expected later"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 139,
    "heading": "2026-03-23 11:10:15 AREA: G",
    "published_at": "2026-03-23 11:10:15",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-1,_(=__P_IMYW AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ_10/26 (GA9$___7ZCZC",
    "clean_text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-1,_(=__P_IMYW AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ_10/26 (GA9$___7ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-12.3N 002-09.8W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. nng e buoy 56-1, ( p imyw and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "Neart na gaoithe windfarm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 140,
    "heading": "2026-03-23 11:09:51 AREA: G",
    "published_at": "2026-03-23 11:09:51",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 141,
    "heading": "2026-03-23 11:09:25 AREA: G",
    "published_at": "2026-03-23 11:09:25",
    "area": "G",
    "message_id": "GA85",
    "text": "ZCZC GA85\nWZ 148/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWAD_ 53-11.0N 002-05.8E,_)UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA85\nWZ 148/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWAD_ 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 southwad 53-11.0n 002-05.8e, )unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform southwad 53-11.0n 002-05.8e, )unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 143,
    "heading": "2026-03-23 11:08:25 AREA: G",
    "published_at": "2026-03-23 11:08:25",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nR__LVM_F_M_YB_Z___NXO_XES___'8_,-)' 8,9034-58=3_ _\nA. D01, 53-20.1N 000-49.1\nL_M_N_S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nR__LVM_F_M_YB_Z___NXO_XES___'8_,-)' 8,9034-58=3_ _\nA. D01, 53-20.1N 000-49.1\nL_M_N_S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 2. cancel wz 58/26 (ga29). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 144,
    "heading": "2026-03-23 11:07:53 AREA: G",
    "published_at": "2026-03-23 11:07:53",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT ANDVSSM_FWJMFZ_PYHF\nP_BO_\n__V_CEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT ANDVSSM_FWJMFZ_PYHF\nP_BO_\n__V_CEL 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: 1. met mast 53-10.7n 002-59.1e unlit andvssm fwjmfz pyhf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e unlit andvssm fwjmfz pyhf",
      "Orwell gas field northwestwards"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 145,
    "heading": "2026-03-23 11:07:23 AREA: G",
    "published_at": "2026-03-23 11:07:23",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD_\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD_\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 146,
    "heading": "2026-03-23 11:06:58 AREA: G",
    "published_at": "2026-03-23 11:06:58",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\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.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55-04.4n 001-27.8w off air",
      "Mrcc humber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 147,
    "heading": "2026-03-23 11:06:34 AREA: G",
    "published_at": "2026-03-23 11:06:34",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6_IK_\n_ UY_HGPMZ_IR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6_IK_\n_ UY_HGPMZ_IR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6 ik",
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 148,
    "heading": "2026-03-23 11:06:06 AREA: G",
    "published_at": "2026-03-23 11:06:06",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBL_HH_O_ORE DEMONSTRATOR WIND FARM.\nTURBINE B\nQ_MH__N 001-23.6W KNLFHMWM+_.*!_'.!+_06_!_09,_9___!_ZCZC",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBL_HH_O_ORE DEMONSTRATOR WIND FARM.\nTURBINE B\nQ_MH__N 001-23.6W KNLFHMWM+_.*!_'.!+_06_!_09,_9___!_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": [
      "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 says: Turbine b. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine b",
      "Bl hh o ore demonstrator wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 149,
    "heading": "2026-03-23 11:05:32 AREA: G",
    "published_at": "2026-03-23 11:05:32",
    "area": "G",
    "message_id": "GA95",
    "text": "ZCZC GA95\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. N1 55-08.1N 002-09.5E. \nB. E5 54-51.5N 00--20.7E. \n2. CANCEL WZ 9\n/2__-50). \nNNNN",
    "clean_text": "ZCZC GA95\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA. N1 55-08.1N 002-09.5E.\nB. E5 54-51.5N 00--20.7E.\n2. CANCEL WZ 9\n/2__-50).\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.",
    "decoded_highlights": [
      "1. buoys unlit",
      "Sofia offshore wind farm",
      "2. cancel wz 9"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 150,
    "heading": "2026-03-23 11:05:00 AREA: G",
    "published_at": "2026-03-23 11:05:00",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD9=\n_(_!94. 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD9=\n_(_!94. 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: ( !94. 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "( !94. 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative",
      "Leman gas field9",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 151,
    "heading": "2026-03-23 11:04:35 AREA: G",
    "published_at": "2026-03-23 11:04:35",
    "area": "G",
    "message_id": "GA03",
    "text": "ZCZC GA03\nWZ 224/26\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET HEAD SITE 58-40.3N 003-22.6W OFF AIR.\nNNNN",
    "clean_text": "ZCZC GA03\nWZ 224/26\nGMDSS. MRCC SHETLAND.\nVHF DSC SERVICES FROM DUNNET HEAD SITE 58-40.3N 003-22.6W OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Vhf dsc services from dunnet head site 58-40.3n 003-22.6w off air",
      "Gmdss. mrcc shetland"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 152,
    "heading": "2026-03-23 11:04:04 AREA: G",
    "published_at": "2026-03-23 11:04:04",
    "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-0.2W BF_M_Y_2. CANCEL WZ 21_5_3.=_\n!S_ONGONNIII_ZCZC",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-0.2W BF_M_Y_2. CANCEL WZ 21_5_3.=_\n!S_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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-0.2w bf m y 2. cancel wz 21 5 3",
      "Mrcc shetland",
      "!s ongonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 153,
    "heading": "2026-03-23 11:03:34 AREA: G",
    "published_at": "2026-03-23 11:03:34",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUOL____ONGLPJJP_PYM_JM_FP_W_1. PLATFORM 49/23E, 53-7 .+__.\n_U_K_U_B GP\nW-/_3_(__)__C__,LZM CANCEL WZ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUOL____ONGLPJJP_PYM_JM_FP_W_1. PLATFORM 49/23E, 53-7 .+__.\n_U_K_U_B GP\nW-/_3_(__)__C__,LZM CANCEL WZ 104/26 (GA54).\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. 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": 154,
    "heading": "2026-03-23 11:00:18 AREA: G",
    "published_at": "2026-03-23 11:00:18",
    "area": "G",
    "message_id": "GE82",
    "text": "ZCZC GE82\nISSUED BY THE MET OFFICE AT 0900 ON MON 23 MAR\n\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FAIR ISLE\n\nTHE GENERAL SITUATION AT MIDNIGHT\nATLANTIC LOW EXP_BAILEY 964 BY MIDNIGHT_E\nTXV=!_+05_8\n_7+)/)==0(_2 _-:( ' 94 '2, 5 TO 7, OCNL GALE 8 LTR. ROUGH OR VERY ROUGH. WINTRY SHWRS THEN RAIN. _OOZ_M_Z__\nCOOR\n\nFORTIES CROMARTY\nW BACK S OR SW, 4 TZ_ INCR 6 TO GALE 8 LTR IN FORTIES AND CROMARTY. SLT OR MOD UNTIL LTR IN SW FORTIES AND CROMARTY, OTHERWISE MOD OR ROUGH. SHWRS THEN OCCASIONAL RAIN. GOOD, OCNL POOR\n\nFORTH TYNE\nNW 3 TO 5, BACK S OR SW 5 TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT, BECMG SLT OR MOD. OCCASIONAL RAIN LTR. GOOD, OCNL POOR LHYONONGWZ_ HUMBER THAMES\nVRB BECMG S OR SW, 2 TO 4, INCR 5 OR 6 LTR__ MOD OR ROUGDMFM_FJDPY_BHQAA_WBAEB__DB__B__$3__2/'RBKUBDW_FFCS, OTHERWISE SLT OR MOD. MAINLY FAIR. MOD OR GOOD, OCNL POOR\n\nFAIR ISLE\nW 5 TO 7, BA_C_Y TO GALE 8, VEER SW 7 TO SEV GALE 9 LTR_M_94 =346 497__, BECMG VERY ROUGH OR HIGH LTR, OCNL VERY HIGH LTR IN S FAEROES. RAIN OR WI_TY_MJD_YJ\n_MGZZW_M_Z_SM_ZZYONONGZCHIII_K FLW 24 HOURS:\nSEV GALES EXP IN VIKING AND FAIR ISLE. STRG WINDS EXP IN ALL OTHER AREAS \nNNNN",
    "clean_text": "ZCZC GE82\nISSUED BY THE MET OFFICE AT 0900 ON MON 23 MAR\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FAIR ISLE\n\nTHE GENERAL SITUATION AT MIDNIGHT\nATLANTIC LOW EXP_BAILEY 964 BY MIDNIGHT_E\nTXV=!_+05_8\n_7+)/)==0(_2 _-:( ' 94 '2, 5 TO 7, OCNL GALE 8 LTR. ROUGH OR VERY ROUGH. WINTRY SHWRS THEN RAIN. _OOZ_M_Z__\nCOOR\n\nFORTIES CROMARTY\nW BACK S OR SW, 4 TZ_ INCR 6 TO GALE 8 LTR IN FORTIES AND CROMARTY. SLT OR MOD UNTIL LTR IN SW FORTIES AND CROMARTY, OTHERWISE MOD OR ROUGH. SHWRS THEN OCCASIONAL RAIN. GOOD, OCNL POOR\n\nFORTH TYNE\nNW 3 TO 5, BACK S OR SW 5 TO 7, PERHAPS GALE 8 LTR. SMOOTH OR SLT, BECMG SLT OR MOD. OCCASIONAL RAIN LTR. GOOD, OCNL POOR LHYONONGWZ_ HUMBER THAMES\nVRB BECMG S OR SW, 2 TO 4, INCR 5 OR 6 LTR__ MOD OR ROUGDMFM_FJDPY_BHQAA_WBAEB__DB__B__$3__2/'RBKUBDW_FFCS, OTHERWISE SLT OR MOD. MAINLY FAIR. MOD OR GOOD, OCNL POOR\n\nFAIR ISLE\nW 5 TO 7, BA_C_Y TO GALE 8, VEER SW 7 TO SEV GALE 9 LTR_M_94 =346 497__, BECMG VERY ROUGH OR HIGH LTR, OCNL VERY HIGH LTR IN S FAEROES. RAIN OR WI_TY_MJD_YJ\n_MGZZW_M_Z_SM_ZZYONONGZCHIII_K FLW 24 HOURS:\nSEV GALES EXP IN VIKING AND FAIR ISLE. STRG WINDS EXP IN ALL OTHER AREAS\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention gales, ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warnings: viking forties cromarty fair isle",
      "7 )/) 0( 2 -:( ' 94 '2, 5 to 7, ocnl gale 8 ltr. rough or very rough. wintry shwrs then rain. ooz m z",
      "W back s or sw, 4 tz incr 6 to gale 8 ltr in forties and cromarty. slt or mod until ltr in sw forties and cromarty, otherwise mod or rough. shwrs then occasional rain. good, ocnl poor"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 155,
    "heading": "2026-03-23 09:32:52 AREA: T",
    "published_at": "2026-03-23 09:32:52",
    "area": "T",
    "message_id": "TA98",
    "text": "ZCZC TA98\n230719 UTC MAR\nOOSTENDERADIO MSI 116/26\nBE EEZ\nGUNNERY EXERCISES IN THE SMALL SECTOR OF LOMBARDSIJDE\nTODAY 23 03 2026 FROM 0800 UNTIL 1330 UTC\nGUNNERY SECTOR IS LISTENING ON CHAN 16 ANDC_CYONGONNIV__VVVVVVVVVVVVV__ALWY__B_ZCZC",
    "clean_text": "ZCZC TA98\n230719 UTC MAR\nOOSTENDERADIO MSI 116/26\nBE EEZ\nGUNNERY EXERCISES IN THE SMALL SECTOR OF LOMBARDSIJDE\nTODAY 23 03 2026 FROM 0800 UNTIL 1330 UTC\nGUNNERY SECTOR IS LISTENING ON CHAN 16 ANDC_CYONGONNIV__VVVVVVVVVVVVV__ALWY__B_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: Gunnery exercises in the small sector of lombardsijde.",
    "decoded_highlights": [
      "Gunnery exercises in the small sector of lombardsijde",
      "Today 23 03 2026 from 0800 until 1330 utc",
      "Gunnery sector is listening on chan 16 andc cyongonniv vvvvvvvvvvvvv alwy b zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 159,
    "heading": "2026-03-23 09:30:04 AREA: T",
    "published_at": "2026-03-23 09:30:04",
    "area": "T",
    "message_id": "TA97",
    "text": "ZCZC TA97\n230715 UTC MAR\nOOSTENDERADIO MSI 115/26\nBE EEZ\nBOTTOM SURVEY BY M/V BELGICA FROM 0900 UTC UNTIL 1100 UTC\nIN POSITION 51-23N 0__.7!___09,_*$!__ 8' 43173'53$ 59 0!_8_ -5 - '-!3 $8'5-,:3 9! 500 M\nBELGICA IS LISTENING ON CHAN 16 AND 60\nONNIII_ZCZC",
    "clean_text": "ZCZC TA97\n230715 UTC MAR\nOOSTENDERADIO MSI 115/26\nBE EEZ\nBOTTOM SURVEY BY M/V BELGICA FROM 0900 UTC UNTIL 1100 UTC\nIN POSITION 51-23N 0__.7!___09,_*$!__ 8' 43173'53$ 59 0!_8_ -5 - '-!3 $8'5-,:3 9! 500 M\nBELGICA IS LISTENING ON CHAN 16 AND 60\nONNIII_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: Bottom survey by m/v belgica from 0900 utc until 1100 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bottom survey by m/v belgica from 0900 utc until 1100 utc",
      "Belgica is listening on chan 16 and 60",
      "Onniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 160,
    "heading": "2026-03-23 09:18:58 AREA: T",
    "published_at": "2026-03-23 09:18:58",
    "area": "T",
    "message_id": "TA72",
    "text": "ZCZC TA72\nFU_E\nG_H_MZ_MO_AAQD__EKWFZM_JFM_HY__\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POS\n5115.938N  0025896!7_0_,\n_  __+60_..\nU_FBYZUGPONGJDF_G IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA72\nFU_E\nG_H_MZ_MO_AAQD__EKWFZM_JFM_HY__\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POS\n5115.938N 0025896!7_0_,\n_ __+60_..\nU_FBYZUGPONGJDF_G IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text reports seabed obstacles and warns against anchoring or fishing nearby. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Obstacles on the seabed in following pos",
      "U fbyzugpongjdf g is requested not to anchor nor to fish in the vicinity",
      "Oostende-zeebrugge"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 164,
    "heading": "2026-03-23 09:15:51 AREA: T",
    "published_at": "2026-03-23 09:15:51",
    "area": "T",
    "message_id": "",
    "text": "ZKZC TA99\n141654 UTCV_AN\nOZJHPWPYWFZM_JF_\n_U_TU_ONGLPMPPAONGD_WYZ_YDFXSMFJHYC_PHMPJHLIII_DPWMFM_ZJM\n_MCXLNX_LON:8::),0,9_,.-4(3$\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE VICINITY\nNGONNIII ZCZC",
    "clean_text": "ZKZC TA99\n141654 UTCV_AN\nOZJHPWPYWFZM_JF_\n_U_TU_ONGLPMPPAONGD_WYZ_YDFXSMFJHYC_PHMPJHLIII_DPWMFM_ZJM\n_MCXLNX_LON:8::),0,9_,.-4(3$\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE VICINITY\nNGONNIII 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. Readable text says: Shipping is requested not to fish nor to anchor in the vicinity. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to fish nor to anchor in the vicinity",
      "Mcxlnx lon:8::),0,9 ,.-4(3$",
      "Ngonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  }
]