[
  {
    "index": 1,
    "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": 2,
    "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": 4,
    "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": 6,
    "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": 7,
    "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": 8,
    "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": 9,
    "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": 10,
    "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": 11,
    "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": 12,
    "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": 13,
    "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": 14,
    "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": 15,
    "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": 16,
    "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": 17,
    "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": 18,
    "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": 19,
    "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": 20,
    "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": 22,
    "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": 28,
    "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": 30,
    "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": 36,
    "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": 37,
    "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": 38,
    "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": 39,
    "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": 48,
    "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": 49,
    "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": 50,
    "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": 51,
    "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": 53,
    "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": 54,
    "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": 55,
    "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": 56,
    "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": 57,
    "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": 58,
    "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": 59,
    "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": 60,
    "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": 61,
    "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": 62,
    "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": 63,
    "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": 64,
    "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": 65,
    "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": 69,
    "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": 70,
    "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": 74,
    "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"
  },
  {
    "index": 78,
    "heading": "2026-03-23 09:12:02 AREA: T",
    "published_at": "2026-03-23 09:12:02",
    "area": "T",
    "message_id": "TA87",
    "text": "ZCZC TA87\n171730 UTC MA_\n_OOSTE_DERADIO MSI 107/26\n_OSTENDE-ZEEBRUGG_\n___MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWING COORDINATES : \n51-31.75N 002-31.13E\n51-20.82N 002-52.76E \n51_+_+0_.\n_09.75E\n__OMOEN 003-09.75E \n51-1_.31N 003-08.040\n,,.::_1)9,::_.__,_.).+._$+6!_.2._!*$!_.!._$0.0_!6888_9448$94\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\n G__MP_V_LISTENING OUT ON VHF CH (( 3._2._\nNNNN",
    "clean_text": "ZCZC TA87\n171730 UTC MA_\n_OOSTE_DERADIO MSI 107/26\n_OSTENDE-ZEEBRUGG_\n___MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWING COORDINATES :\n51-31.75N 002-31.13E\n51-20.82N 002-52.76E\n51_+_+0_.\n_09.75E\n__OMOEN 003-09.75E\n51-1_.31N 003-08.040\n,,.::_1)9,::_.__,_.).+._$+6!_.2._!*$!_.!._$0.0_!6888_9448$94\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nG__MP_V_LISTENING OUT ON VHF CH (( 3._2._\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 requested to pass at a safe distance. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping requested to pass at a safe distance",
      "Ooste deradio msi 107/26",
      "Ostende-zeebrugg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 80,
    "heading": "2026-03-23 09:10:26 AREA: T",
    "published_at": "2026-03-23 09:10:26",
    "area": "T",
    "message_id": "TE45",
    "text": "ZCZC TE45\n230710 UTC MAR\nOOSTENDERADIO WX 45/26\nTHAMES, DOVER AND BELGIAN COAST:\nN 2-3, THIS MORNING DECR TO VRB 1-2, IN THE AFTERNOON TURNING SSW AND INCR TO _-0_._\n ,8__5 8,:4 59 4-5 F_WITH_H CLOUDS, THIS_HT MORE CLOUDS FM TH_ W. MOD TO GOOD VIS.\n\nNNNN",
    "clean_text": "ZCZC TE45\n230710 UTC MAR\nOOSTENDERADIO WX 45/26\nTHAMES, DOVER AND BELGIAN COAST:\nN 2-3, THIS MORNING DECR TO VRB 1-2, IN THE AFTERNOON TURNING SSW AND INCR TO _-0_._\n,8__5 8,:4 59 4-5 F_WITH_H CLOUDS, THIS_HT MORE CLOUDS FM TH_ W. MOD TO GOOD VIS.\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Belgium - Belgian coast and southern North Sea. Readable text says: N 2-3, this morning decr to vrb 1-2, in the afternoon turning ssw and incr to -0. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N 2-3, this morning decr to vrb 1-2, in the afternoon turning ssw and incr to -0",
      "8 5 8,:4 59 4-5 f with h clouds, this ht more clouds fm th w. mod to good vis",
      "Thames, dover and belgian coast"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 85,
    "heading": "2026-03-23 09:03:04 AREA: S",
    "published_at": "2026-03-23 09:03:04",
    "area": "S",
    "message_id": "SA56",
    "text": "ZCZC SA56\nNCC-HAMBURG\n170620 KHXMH 26\nNAV. WARN. NO. 158\nGERMAN BIGHT. NORTHWESTERLY OWF 7BARD OFFSHORE 1'.\nSURVEY OPERATIONS IN_S_Z_RESS BY MV 'KOMMANDOR ORCA', CS *___6+:2._+*!_!+.__6_!__.\n_30,8E.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 NM REQUESTED.\n_,9,,(((((((((((((((((((((((((((((((((((((_ZCZC",
    "clean_text": "ZCZC SA56\nNCC-HAMBURG\n170620 KHXMH 26\nNAV. WARN. NO. 158\nGERMAN BIGHT. NORTHWESTERLY OWF 7BARD OFFSHORE 1'.\nSURVEY OPERATIONS IN_S_Z_RESS BY MV 'KOMMANDOR ORCA', CS *___6+:2._+*!_!+.__6_!__.\n_30,8E.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 NM REQUESTED.\n_,9,,(((((((((((((((((((((((((((((((((((((_ZCZC",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text reports survey operations and implies local caution around the work area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey operations in s z ress by mv 'kommandor orca', cs 6 :2. ! ! . 6 !",
      "Restricted manoevrability during operations",
      "German bight. northwesterly owf 7bard offshore 1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 88,
    "heading": "2026-03-23 09:00:16 AREA: S",
    "published_at": "2026-03-23 09:00:16",
    "area": "S",
    "message_id": "SE99",
    "text": "ZCZC SE99\n2307__NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECASTE _ELKELKO__\nA_AAZEIIF_NG\nAIND: VARIABLE WINDS 2 TO 3, SHIFTING SOUTHWEST LATER AND INCREASING\nABOUT 4.\nVISIBILITY/WEATHER: LOCALLY POOR VISIBILITY, MISTY.\nSEA: NORTHWESTERN PART INCREASING 2 METER.\n\nTUESDAY:\nWIND: SOUTHWEST 4 TO 5, INCREASING SLOWLY 6 TO 7.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH POOR VISIBILITY.\nSEA: WESTERN PART LATER 6___0__6_NNNN",
    "clean_text": "ZCZC SE99\n2307__NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECASTE _ELKELKO__\nA_AAZEIIF_NG\nAIND: VARIABLE WINDS 2 TO 3, SHIFTING SOUTHWEST LATER AND INCREASING\nABOUT 4.\nVISIBILITY/WEATHER: LOCALLY POOR VISIBILITY, MISTY.\nSEA: NORTHWESTERN PART INCREASING 2 METER.\n\nTUESDAY:\nWIND: SOUTHWEST 4 TO 5, INCREASING SLOWLY 6 TO 7.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH POOR VISIBILITY.\nSEA: WESTERN PART LATER 6___0__6_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: rain or shower with poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: rain or shower with poor visibility",
      "Visibility/weather: locally poor visibility, misty",
      "Weatherforecaste elkelko"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 92,
    "heading": "2026-03-23 08:31:37 AREA: P",
    "published_at": "2026-03-23 08:31:37",
    "area": "P",
    "message_id": "P",
    "text": "ZCZC P\nP__NUPU_TC MAR 26\nMSI 95/26\nTHE FOLLOWING NAVBERS ARE IN FORCE:\n\nMSI    94/26  20-03-2026\nMSI    93/26  20-03-2026\nMSI    92/26  19-03-2026\nMSI    89/26  18-03-2026\nMSI    88/26  18-03-2026\nMSI    87/26  18-03-2026\nMSI V  _FPT_EAWPWY\nMSI    79/26  10-03-2026\nMSI    75/26  07-03-2026\nMSI    38/26  29-01-2026\nMSI      2/26  04-01-2026\nMSI   310/25 14-10-2025\nMSI   302/25  09-10-2025\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nNNNN",
    "clean_text": "ZCZC P\nP__NUPU_TC MAR 26\nMSI 95/26\nTHE FOLLOWING NAVBERS ARE IN FORCE:\n\nMSI 94/26 20-03-2026\nMSI 93/26 20-03-2026\nMSI 92/26 19-03-2026\nMSI 89/26 18-03-2026\nMSI 88/26 18-03-2026\nMSI 87/26 18-03-2026\nMSI V _FPT_EAWPWY\nMSI 79/26 10-03-2026\nMSI 75/26 07-03-2026\nMSI 38/26 29-01-2026\nMSI 2/26 04-01-2026\nMSI 310/25 14-10-2025\nMSI 302/25 09-10-2025\n\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code P. Readable text says: The following navbers are in force. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "The following navbers are in force"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 93,
    "heading": "2026-03-23 08:31:12 AREA: P",
    "published_at": "2026-03-23 08:31:12",
    "area": "P",
    "message_id": "",
    "text": "ZCZC PA_PW\nPRQOPP UTC JAN 26\nMSI 2/26\nBUOY WP2 53-18.7N 004-02.2E MISSING\nUNCOVERED MEASCYF_MP CF_PHMZMHDPMJPLPWON_ZCZC",
    "clean_text": "ZCZC PA_PW\nPRQOPP UTC JAN 26\nMSI 2/26\nBUOY WP2 53-18.7N 004-02.2E MISSING\nUNCOVERED MEASCYF_MP CF_PHMZMHDPMJPLPWON_ZCZC",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code P. Readable text says: Buoy wp2 53-18.7n 004-02.2e missing.",
    "decoded_highlights": [
      "Buoy wp2 53-18.7n 004-02.2e missing",
      "Uncovered meascyf mp cf phmzmhdpmjplpwon zczc",
      "Prqopp utc jan 26"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 96,
    "heading": "2026-03-23 07:42:05 AREA: K",
    "published_at": "2026-03-23 07:42:05",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST M_CHE PJHONGFWJMHZM\nF_HFZM_DK_E__FJIII_ANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-\n2!__!=___CBF_GFONG\nFSHNWITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST M_CHE PJHONGFWJMHZM\nF_HFZM_DK_E__FJIII_ANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-\n2!__!=___CBF_GFONG\nFSHNWITH CAUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV CHERBOURG",
      "CHERBOURG"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text reports an aid-to-navigation fault. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "F hfzm dk e fjiii ansmitter out of service - light unlit",
      "Dover - dst m che pjhongfwjmhzm",
      "Avurnav cherbourg 26/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 97,
    "heading": "2026-03-23 07:40:52 AREA: T",
    "published_at": "2026-03-23 07:40:52",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_ KA28\nWIGHT - LARGE CAYEUX-S R_MER\nWORKS\nCABLE LAYING OPEYHFZONG_YZBM_H__MTCH_II_XMBYV\n_UNTIL FUO_S_J OOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED BY:\n50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N ____-21.02E\n50-15.86N 001-19.41E\n50-19.01N 001-12.02E\n50-19.74N 001-04.77E\n50001-04.93E\n50-19.36N 001-1_946E\n50-15.97N 001-20.08E\n50-13.73N 001-21.92E\n_NNN\n\nZCZC",
    "clean_text": "ZCZ_ KA28\nWIGHT - LARGE CAYEUX-S R_MER\nWORKS\nCABLE LAYING OPEYHFZONG_YZBM_H__MTCH_II_XMBYV\n_UNTIL FUO_S_J OOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED BY:\n50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N ____-21.02E\n50-15.86N 001-19.41E\n50-19.01N 001-12.02E\n50-19.74N 001-04.77E\n50001-04.93E\n50-19.36N 001-1_946E\n50-15.97N 001-20.08E\n50-13.73N 001-21.92E\n_NNN\n\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. Readable text sets local operating restrictions near 50-10.84N 001-29.44E; 50-10.44N 001-29.13E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoring and diving within this area",
      "Cable laying opeyhfzong yzbm h mtch ii xmbyv",
      "Until fuo s j ootice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 98,
    "heading": "2026-03-23 07:40:18 AREA: K",
    "published_at": "2026-03-23 07:40:18",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOUYM\nNU_TU_ONGWZDST MANCHE EST\nAIDS TO NAVIGATION CHANGES__ULIGHT BUOY - LIG_T UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOUYM\nNU_TU_ONGWZDST MANCHE EST\nAIDS TO NAVIGATION CHANGES__ULIGHT BUOY - LIG_T UNLIT\nBYOY FAIRY SUD\n51-21.20N 002-17.30E\nNAVIGATE WITH CAUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DST MANCHE"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text says: Aids to navigation changes ulight buoy - lig t unlit.",
    "decoded_highlights": [
      "Aids to navigation changes ulight buoy - lig t unlit",
      "Avurnav cherbouym",
      "Nu tu ongwzdst manche est"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 100,
    "heading": "2026-03-23 07:29:31 AREA: J",
    "published_at": "2026-03-23 07:29:31",
    "area": "J",
    "message_id": "JA85",
    "text": "ZCZC JA85\n040930 UTC _AR\nGERMAN NAV WY__\n_U_TU_ONGJZCHDPYMLSHFX_ODERBANK.\nYELLOW LIGHT SPAR BUOY WITH INJ_YFHFZM_JGZWJ_JMHY_HG_RAQINPE\nTEMPORARILY REMOVED.\nNNNN",
    "clean_text": "ZCZC JA85\n040930 UTC _AR\nGERMAN NAV WY__\n_U_TU_ONGJZCHDPYMLSHFX_ODERBANK.\nYELLOW LIGHT SPAR BUOY WITH INJ_YFHFZM_JGZWJ_JMHY_HG_RAQINPE\nTEMPORARILY REMOVED.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Yellow light spar buoy with inj yfhfzm jgzwj jmhy hg raqinpe. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Yellow light spar buoy with inj yfhfzm jgzwj jmhy hg raqinpe",
      "Temporarily removed"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 103,
    "heading": "2026-03-23 07:24:40 AREA: J",
    "published_at": "2026-03-23 07:24:40",
    "area": "J",
    "message_id": "JA14",
    "text": "ZCZC JA14\n230700 UTC MAR\nPOLISH NAV WARN 055/26\nSOUTHERN BALTIC. POLISH COAST\nDUE TO MILITARY EXERCISES ZONE S-6 \nIS CLOSED FOR SHIPPING AND FISHERY: \nCENTERED 54-39.27N 016-36.59E\n03-23 07:00-13:00 UTC\n ___UYMYX TX_IMG_H_ON\n_PUYM FX_MGHZM_WT PQCPP UTC\n03-25 04:00 TOV_WY PPCTO UTC\n03-26 04:00 TO 03-27 00:59 UTC\n0=7:.YX_MGHZM_ PX_MG_H_ON\n_PUCIUIUCPP TO 28 00:59 UTC\n03-28 04:00 TO 13:00 UTC\nCANCEL THIS MSG 281300 UTC MAR\nNNNN",
    "clean_text": "ZCZC JA14\n230700 UTC MAR\nPOLISH NAV WARN 055/26\nSOUTHERN BALTIC. POLISH COAST\nDUE TO MILITARY EXERCISES ZONE S-6\nIS CLOSED FOR SHIPPING AND FISHERY:\nCENTERED 54-39.27N 016-36.59E\n03-23 07:00-13:00 UTC\n___UYMYX TX_IMG_H_ON\n_PUYM FX_MGHZM_WT PQCPP UTC\n03-25 04:00 TOV_WY PPCTO UTC\n03-26 04:00 TO 03-27 00:59 UTC\n0=7:.YX_MGHZM_ PX_MG_H_ON\n_PUCIUIUCPP TO 28 00:59 UTC\n03-28 04:00 TO 13:00 UTC\nCANCEL THIS MSG 281300 UTC MAR\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Centered 54-39.27n 016-36.59e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Centered 54-39.27n 016-36.59e",
      "Due to military exercises zone s-6",
      "Is closed for shipping and fishery"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 105,
    "heading": "2026-03-23 07:22:59 AREA: Q",
    "published_at": "2026-03-23 07:22:59",
    "area": "Q",
    "message_id": "Q",
    "text": "ZCZC Q\n __OQPWP UTC MAR \nGERMAN NAV WARN 162/26\nWESTERN BALTIC. NORTHERLY DARSSER ORT.\nGEOPHYSICAL SURVEYS CONDUCTED \nBY MV MIRANDA/T7AD2\nAROUND OF PSN: 54-33.4N 012-32.0E.\nA SAFETY DISTANCE OF 0.5 O_ FJMYP_CFYPWONGONNIII_ZCZC",
    "clean_text": "ZCZC Q\n__OQPWP UTC MAR\nGERMAN NAV WARN 162/26\nWESTERN BALTIC. NORTHERLY DARSSER ORT.\nGEOPHYSICAL SURVEYS CONDUCTED\nBY MV MIRANDA/T7AD2\nAROUND OF PSN: 54-33.4N 012-32.0E.\nA SAFETY DISTANCE OF 0.5 O_ FJMYP_CFYPWONGONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code Q",
    "display_region_label": "B1 code Q",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code Q. Readable text says: Around of psn: 54-33.4n 012-32.0e.",
    "decoded_highlights": [
      "Around of psn: 54-33.4n 012-32.0e",
      "Geophysical surveys conducted",
      "A safety distance of 0.5 o fjmyp cfypwongonniii zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 107,
    "heading": "2026-03-23 07:21:35 AREA: J",
    "published_at": "2026-03-23 07:21:35",
    "area": "J",
    "message_id": "JA22",
    "text": "ZCZC JA22\n230333 _ _/._6.9,_2!*$.\n._6_=__3657_9\n_-_2(.\nDGJ\nGJHHFZMD_IOMT KHZ\n55-17.9N 014-46.4E UNRELIABLE. \nNNNN",
    "clean_text": "ZCZC JA22\n230333 _ _/._6.9,_2!*$.\n._6_=__3657_9\n_-_2(.\nDGJ\nGJHHFZMD_IOMT KHZ\n55-17.9N 014-46.4E UNRELIABLE.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: 55-17.9n 014-46.4e unreliable. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "55-17.9n 014-46.4e unreliable",
      "Gjhhfzmd iomt khz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 108,
    "heading": "2026-03-23 07:18:38 AREA: J",
    "published_at": "2026-03-23 07:18:38",
    "area": "J",
    "message_id": "JE32",
    "text": "ZCZC JE32\n230327 UTC MAR\nBALTIC SEA WEATHERFORECAST \n\nNEAR GALE WARNING\nBAY OF BOTHNIA\n\nWEATHER SUMMARY:\nDEEP L MOV NE-WARDS OVER NORWEGIAN SEA.\n\nFORECAST VALID 24 HZCYJM_IND SCALE IN METERS PER SECOND)\n\nSKAGERRAK\n W-SW 7-12. . _.!.'3._ =8', OVEY_F_DT SOME RAIN.\n\nKATTEGAT\nW-NW 3-8. TOMORROW MORNING SW 5-10. GOOD VIS.\n\nLAV_M\nP\nW-SW 5-10. MAINLY GOOD VIS.\n\nTHE SOUND, THE BELTS, WESTERN BALTIC\nVRB 1-5. OVERNIGHT S 3-8. MAINLY GOOD VIS.\n\nSOUTHERN BALTIC, SOUTHEASTERN BALTIC\nS-SW 1-5, IN EVENING W 3-7. TOMORROW MORNING AGAIN S-SW 1-5. GOOD VIS.\n\nCENTRAL BALTIC, GULF OF RIGA\nS-SW 5-10. FM EVENING W-SW, OVERNIGHT 2-7. MAINLY GOOD VIS.\n\nNORTHERN BALTIC, GULF OF FINLAND, SEA OF AALANW_MGY_DFPS_ZMJP_MGJZCHDPYMJPMZ_MLZHDFMJUM__ _FM AFTERNOON 5-10, FM EVENING W-_'2_.___!_'3._++_._!*\n.__$!*.__0/++.*+_0._$_6*\n_9,9,9,_+6_$06.*0.+_.)+_$!\n.__$0._:_88(_=\n__)_.+.)+_$!.*7.__ 0._!.)_.+.)+_$!.:_.__._ _____.0\n0__._\n_*_.+\n06_!_$___3 =9_)(_8,)6 _99$ =8', IN EVENING NEAR FINNISH COAST SHWRS OF SNOW OR RAIN.\nNNNN",
    "clean_text": "ZCZC JE32\n230327 UTC MAR\nBALTIC SEA WEATHERFORECAST\n\nNEAR GALE WARNING\nBAY OF BOTHNIA\n\nWEATHER SUMMARY:\nDEEP L MOV NE-WARDS OVER NORWEGIAN SEA.\n\nFORECAST VALID 24 HZCYJM_IND SCALE IN METERS PER SECOND)\n\nSKAGERRAK\nW-SW 7-12. . _.!.'3._ =8', OVEY_F_DT SOME RAIN.\n\nKATTEGAT\nW-NW 3-8. TOMORROW MORNING SW 5-10. GOOD VIS.\n\nLAV_M\nP\nW-SW 5-10. MAINLY GOOD VIS.\n\nTHE SOUND, THE BELTS, WESTERN BALTIC\nVRB 1-5. OVERNIGHT S 3-8. MAINLY GOOD VIS.\n\nSOUTHERN BALTIC, SOUTHEASTERN BALTIC\nS-SW 1-5, IN EVENING W 3-7. TOMORROW MORNING AGAIN S-SW 1-5. GOOD VIS.\n\nCENTRAL BALTIC, GULF OF RIGA\nS-SW 5-10. FM EVENING W-SW, OVERNIGHT 2-7. MAINLY GOOD VIS.\n\nNORTHERN BALTIC, GULF OF FINLAND, SEA OF AALANW_MGY_DFPS_ZMJP_MGJZCHDPYMJPMZ_MLZHDFMJUM__ _FM AFTERNOON 5-10, FM EVENING W-_'2_.___!_'3._++_._!*\n.__$!*.__0/++.*+_0._$_6*\n_9,9,9,_+6_$06.*0.+_.)+_$!\n.__$0._:_88(_=\n__)_.+.)+_$!.*7.__ 0._!.)_.+.)+_$!.:_.__._ _____.0\n0__._\n_*_.+\n06_!_$___3 =9_)(_8,)6 _99$ =8', IN EVENING NEAR FINNISH COAST SHWRS OF SNOW OR RAIN.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code J. Readable text says: Near gale warning. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Near gale warning",
      "Forecast valid 24 hzcyjm ind scale in meters per second)",
      "Baltic sea weatherforecast"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 109,
    "heading": "2026-03-23 07:11:10 AREA: G",
    "published_at": "2026-03-23 07:11:10",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3NVQPPWAPOMIW AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "clean_text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3NVQPPWAPOMIW AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-14.3N 002-08.6W.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3nvqppwapomiw ais inoperative",
      "Neart na gaoithe windfarm",
      "2. cancel wz 10/26 (ga91)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 111,
    "heading": "2026-03-23 07:10:19 AREA: G",
    "published_at": "2026-03-23 07:10:19",
    "area": "G",
    "message_id": "",
    "text": "ZCZC G_FHONG_AM\n_Y_T_\nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC G_FHONG_AM\n_Y_T_\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 002-05.8E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform southwark 53-11.0n 002-05.8e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e, unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 112,
    "heading": "2026-03-23 07:09:48 AREA: G",
    "published_at": "2026-03-23 07:09:48",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\nCROMARTY_\n _D_D FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCELVWAN39/26 (GA12).\nNNNN",
    "clean_text": "ZCZC GA89\nWZ 161/26\nCROMARTY_\n_D_D FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCELVWAN39/26 (GA12).\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": [
      "CROMARTY"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 57-29.4N 001-21.1W.",
    "decoded_highlights": [
      "1. turbine hs2, 57-29.4n 001-21.1w, fog signal inoperative",
      "Cromarty",
      "D d floating wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 113,
    "heading": "2026-03-23 07:09:25 AREA: G",
    "published_at": "2026-03-23 07:09:25",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon south buoy 53-12.5n 001-25.6e unlit.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 114,
    "heading": "2026-03-23 07:08:53 AREA: G",
    "published_at": "2026-03-23 07:08:53",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/26 \nNORTH SEA. \nTEAL AND GUILLEMOT OIL FIELDS. \nCHART GB 278. \nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.38E\nNNNN",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/26\nNORTH SEA.\nTEAL AND GUILLEMOT OIL FIELDS.\nCHART GB 278.\nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.38E\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Safety zone, radius 500 metres, established in 57-16.48n 000-46.38e.",
    "decoded_highlights": [
      "Safety zone, radius 500 metres, established in 57-16.48n 000-46.38e",
      "Navarea i 43/26",
      "North sea"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 115,
    "heading": "2026-03-23 07:08:16 AREA: G",
    "published_at": "2026-03-23 07:08:16",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK _F_M_YB_\n1. TURBINE FOG SIGNALS INOPERATIVE: \nA. D01_ \n_-20.1N 000-49.1E. \nB. \n'01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK _F_M_YB_\n1. TURBINE FOG SIGNALS INOPERATIVE:\nA. D01_\n_-20.1N 000-49.1E.\nB.\n'01, 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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. turbine fog signals inoperative",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 117,
    "heading": "2026-03-23 07:07:14 AREA: G",
    "published_at": "2026-03-23 07:07:14",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD. \n__'__+6_.+6_$._605_2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\n__'__+6_.+6_$._605_2, 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: ' 6 . 6 $. 605 2, 54-03.2n 001-02.0e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "' 6 . 6 $. 605 2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 118,
    "heading": "2026-03-23 07:06:49 AREA: G",
    "published_at": "2026-03-23 07:06:49",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM _CSSPY_ZHJMJFHPM_HH_II_KYBYG_M\n_ UC__GUMZ*._ \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM _CSSPY_ZHJMJFHPM_HH_II_KYBYG_M\n_ UC__GUMZ*._\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from csspy zhjmjfhpm hh ii kybyg m",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 119,
    "heading": "2026-03-23 07:06:25 AREA: G",
    "published_at": "2026-03-23 07:06:25",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICQM6+_.)_2_0_.*!_0.\n________8_001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICQM6+_.)_2_0_.*!_0.\n________8_001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Mrcc dover. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 120,
    "heading": "2026-03-23 07:04:03 AREA: G",
    "published_at": "2026-03-23 07:04:03",
    "area": "G",
    "message_id": "GA92",
    "text": "ZCZC GA92\nNAVAREA I 57/26\n1. NAVAREA I WARNINGS IN FORCE AT 201000 UTC MAR 2026:\n\n2026 SERIES: 43, 51, 52, 54, 57.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUEDMQ_DMUPPVMYPM_II_LISHED IN AVQVS__U_ITIONS OF THE ADMIRALTY NOTICES TO MARINERS BULLETIN _BL\nS_ONONGL_AREA I WARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\n\nC. THE COMPLETE TEXTS OF ALL IN-FORCE NAVREA I WYFJ_MGF_SCWF_MHDZJPM_DFXDMYPMZMSZ_PYMLPF_MLYZW_JH_MGYPMYP_YFHPWMFMJP_HF__B__-_(!_._ 8, 233(' 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE AT: HTTPS://MSI.ADMIRALTY.CO.UK/RADIZ\nF_HFZS_YF__BONONGSHPYHF_PSEOHBDPJPMB_MLPMYP_CPJHPWML_MI_IKP\n_GBF_M_YZBM_YPMFMXZ_GZYWFHZYMH_NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCEL NAVAREA I 49/26 (EA29)(GA67)(OA58).\nNNNN",
    "clean_text": "ZCZC GA92\nNAVAREA I 57/26\n1. NAVAREA I WARNINGS IN FORCE AT 201000 UTC MAR 2026:\n\n2026 SERIES: 43, 51, 52, 54, 57.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUEDMQ_DMUPPVMYPM_II_LISHED IN AVQVS__U_ITIONS OF THE ADMIRALTY NOTICES TO MARINERS BULLETIN _BL\nS_ONONGL_AREA I WARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\n\nC. THE COMPLETE TEXTS OF ALL IN-FORCE NAVREA I WYFJ_MGF_SCWF_MHDZJPM_DFXDMYPMZMSZ_PYMLPF_MLYZW_JH_MGYPMYP_YFHPWMFMJP_HF__B__-_(!_._ 8, 233(' 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE AT: HTTPS://MSI.ADMIRALTY.CO.UK/RADIZ\nF_HFZS_YF__BONONGSHPYHF_PSEOHBDPJPMB_MLPMYP_CPJHPWML_MI_IKP\n_GBF_M_YZBM_YPMFMXZ_GZYWFHZYMH_NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCEL NAVAREA I 49/26 (EA29)(GA67)(OA58).\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": [
      "A. texts of navarea i warnings issuedmq dmuppvmypm ii lished in avqvs u itions of the admiralty notices to mariners bulletin bl",
      "S onongl area i warnings less than 42 days old (43/26 onward) are promulgated via enhanced group call (egc) and/or relevant navtex transmitters",
      "Gbf m yzbm ypmfmxz gzywfhzymh navwarnings(at)ukho.gov.uk"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 121,
    "heading": "2026-03-23 07:03:01 AREA: G",
    "published_at": "2026-03-23 07:03:01",
    "area": "G",
    "message_id": "GA95",
    "text": "ZCZC GA95\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \n_ _\nB_M E_ . \n2. CANCEL_N\n\n_Z_A\n__-/-/._Z_OM__AMHUUTUEON_H_P\n_ONGLS_HD_Z_ORE DE_Z_EO_ATOR WIND FARM.\n_5RBINE B10 55-06.8N 001-23.6W UNLIT AND FOG UIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA95\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\n_ _\nB_M E_ .\n2. CANCEL_N\n\n_Z_A\n__-/-/._Z_OM__AMHUUTUEON_H_P\n_ONGLS_HD_Z_ORE DE_Z_EO_ATOR WIND FARM.\n_5RBINE B10 55-06.8N 001-23.6W UNLIT AND FOG UIGNAL 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": [
      "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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "5rbine b10 55-06.8n 001-23.6w unlit and fog uignal inoperative",
      "1. buoys unlit",
      "Sofia offshore wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 122,
    "heading": "2026-03-23 07:02:04 AREA: G",
    "published_at": "2026-03-23 07:02:04",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA_224/26\nGMDSS. MRCC SHETLAND.\n_H_ DSC SERVICES FROM DU_NE\n H_LD SITE 58-_!__\nYW OFF AIR_M\nNNN_Z_BZ__W_NZN PA0_95W__SFHMWMSSM_FWJF\n_:__08_._. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA_224/26\nGMDSS. MRCC SHETLAND.\n_H_ DSC SERVICES FROM DU_NE\nH_LD SITE 58-_!__\nYW OFF AIR_M\nNNN_Z_BZ__W_NZN PA0_95W__SFHMWMSSM_FWJF\n_:__08_._. CANCEL WZ 100/26 (GA52).\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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "H dsc services from du ne",
      "Gmdss. mrcc shetland",
      "Yw off air m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 123,
    "heading": "2026-03-23 07:01:33 AREA: G",
    "published_at": "2026-03-23 07:01:33",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AWMWJ_MJ_Y\nF_PJM_YZBM__PPJJMJIII_ 57-07.7N /_--03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AWMWJ_MJ_Y\nF_PJM_YZBM__PPJJMJIII_ 57-07.7N /_--03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 1. mf r/t awmwj mj y. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. mf r/t awmwj mj y",
      "Mrcc shetland",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 124,
    "heading": "2026-03-23 07:00:19 AREA: G",
    "published_at": "2026-03-23 07:00:19",
    "area": "G",
    "message_id": "GB97",
    "text": "ZCZC GB97\nCULLERCOHJYWFZONG_S_M_YFM_Z_EM_UP_G_YXDM\n_PYZMGCH_ONONG\nF__ONG_SPMZUM_P_II_ BUT SOUTHERLY GALE FORCE 8 EXCPCHPWMSS_YONONG_FYMFJSPONG_SPMZ_ASED BUT SOUTHERLY GALE FORCE 8 EXPECTED SOON, VEERING SOUTHWESTERLY AND _NCREASING SE_VYUM_S_M_ZYXPM\nZMGSHPYONGONNIII_ZC 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 GB97\nCULLERCOHJYWFZONG_S_M_YFM_Z_EM_UP_G_YXDM\n_PYZMGCH_ONONG\nF__ONG_SPMZUM_P_II_ BUT SOUTHERLY GALE FORCE 8 EXCPCHPWMSS_YONONG_FYMFJSPONG_SPMZ_ASED BUT SOUTHERLY GALE FORCE 8 EXPECTED SOON, VEERING SOUTHWESTERLY AND _NCREASING SE_VYUM_S_M_ZYXPM\nZMGSHPYONGONNIII_ZC 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": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological 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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "F ong spmzum p ii but southerly gale force 8 excpchpwmss yonong fymfjspong spmz ased but southerly gale force 8 expected soon, veering southwesterly and ncreasing se vyum s m zyxpm",
      "Zmgshpyongonniii zc ga07"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 125,
    "heading": "2026-03-23 06:45:07 AREA: E",
    "published_at": "2026-03-23 06:45:07",
    "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": 126,
    "heading": "2026-03-23 06:44:46 AREA: E",
    "published_at": "2026-03-23 06:44:46",
    "area": "E",
    "message_id": "EA22",
    "text": "ZCZC EA22\nWZ 185/26 \nWIGHT. \nNEEDLES LIGHT 500+_:__.\n_ _H_HGUM+_.*!_'.!+_06_!\n0__8(\nNNNN",
    "clean_text": "ZCZC EA22\nWZ 185/26\nWIGHT.\nNEEDLES LIGHT 500+_:__.\n_ _H_HGUM+_.*!_'.!+_06_!\n0__8(\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 says: Needles light 500. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Needles light 500"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-03-23 06:44:26 AREA: E",
    "published_at": "2026-03-23 06:44:26",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EAQ_LUNDY. \nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT. \n \n,_8887ZCZC",
    "clean_text": "ZCZC EAQ_LUNDY.\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT.\n\n,_8887ZCZC",
    "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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - English Channel and western approaches. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lavernock spit buoy 51-23.0n 003-10.8w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 128,
    "heading": "2026-03-23 06:44:02 AREA: E",
    "published_at": "2026-03-23 06:44:02",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMFVR/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMFVR/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": [
      "Mfvr/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 129,
    "heading": "2026-03-23 06:41:39 AREA: E",
    "published_at": "2026-03-23 06:41:39",
    "area": "E",
    "message_id": "EA43",
    "text": "ZCZC EA43\nNAVAREA I 57/26\n1. NAVAREA I WARNINGS IN FORCE AT 201000 UTC MAR 2026:\n\n2026 SERIES: 43, 51, 52, 54, 57.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBLI__ED IN WEEKLY EDITIONS OF THE ADMIRALT__DOEICEF TO MARINERS BUL_ETIN _ANMB).\n\nB. NAVAREA I WARNINGS_LSH THAN 42 DAYSMZS_M_C. THE COMPLETE TEXTS OS_ALL IN-FOR_I WARNIN_S, INCLU_ING THOSE _MFMJP_HFZMFFFMZ_IUVA_MB IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE AT: HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\n\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR A__NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCEL NAVAREA I 49/26 (EA29)(GA67)(OA58).\nNNNN",
    "clean_text": "ZCZC EA43\nNAVAREA I 57/26\n1. NAVAREA I WARNINGS IN FORCE AT 201000 UTC MAR 2026:\n\n2026 SERIES: 43, 51, 52, 54, 57.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBLI__ED IN WEEKLY EDITIONS OF THE ADMIRALT__DOEICEF TO MARINERS BUL_ETIN _ANMB).\n\nB. NAVAREA I WARNINGS_LSH THAN 42 DAYSMZS_M_C. THE COMPLETE TEXTS OS_ALL IN-FOR_I WARNIN_S, INCLU_ING THOSE _MFMJP_HFZMFFFMZ_IUVA_MB IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE AT: HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\n\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR A__NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCEL NAVAREA I 49/26 (EA29)(GA67)(OA58).\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A. texts of navarea i warnings issued each week are publi ed in weekly editions of the admiralt doeicef to mariners bul etin anmb)",
      "B. navarea i warnings lsh than 42 daysmzs m c. the complete texts os all in-for i warnin s, inclu ing those mfmjp hfzmfffmz iuva mb in weeks 1, 13, 26 and 39 and are also available from the ukho website at: https://msi.admiralty.co.uk/radionavigationalwarnings",
      "Alternatively, these may be requested by e-mail from navarea i co-ordinator a navwarnings(at)ukho.gov.uk"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 130,
    "heading": "2026-03-23 06:40:18 AREA: E",
    "published_at": "2026-03-23 06:40:18",
    "area": "E",
    "message_id": "EL10",
    "text": "ZCZC EL10\nSUBS AWM_C_M_ CET_EMO_G_ZJ__\nSUBFACTSV_WM_C_*._6_4__C_JBDQOX__J_OZ__FMM LIVE GUNNERY FIRINGS IN PROGRESS: \n\nPLYMOUTH APPROACHES - LIZARD _OFHMHZMJHYHM_ZF_H_\nBETWEEN 230900 AND 231600 MAR.\n\nPOYHSWM_ACHES - START POINT TO SAINT ALBANS HEAD.\nBETWEEN 230800 AND 7070_+.__6\n_9,_\n__:''.20_!'*.!.$_._+___:/2_6 1_/,___EPBB_ND MF BROADCASTS OR CONTACT NAVAL OPERATIONS PHONE (44) (0)1752 557550.\n\n2. CANCEL SUBS AND GUNS 175/26 (EL09). \nNNNN",
    "clean_text": "ZCZC EL10\nSUBS AWM_C_M_ CET_EMO_G_ZJ__\nSUBFACTSV_WM_C_*._6_4__C_JBDQOX__J_OZ__FMM LIVE GUNNERY FIRINGS IN PROGRESS:\n\nPLYMOUTH APPROACHES - LIZARD _OFHMHZMJHYHM_ZF_H_\nBETWEEN 230900 AND 231600 MAR.\n\nPOYHSWM_ACHES - START POINT TO SAINT ALBANS HEAD.\nBETWEEN 230800 AND 7070_+.__6\n_9,_\n__:''.20_!'*.!.$_._+___:/2_6 1_/,___EPBB_ND MF BROADCASTS OR CONTACT NAVAL OPERATIONS PHONE (44) (0)1752 557550.\n\n2. CANCEL SUBS AND GUNS 175/26 (EL09).\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: Plymouth approaches - lizard ofhmhzmjhyhm zf h. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Plymouth approaches - lizard ofhmhzmjhyhm zf h",
      "Poyhswm aches - start point to saint albans head",
      "2. cancel subs and guns 175/26 (el09)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 131,
    "heading": "2026-03-23 05:54:15 AREA: G",
    "published_at": "2026-03-23 05:54:15",
    "area": "G",
    "message_id": "GB97",
    "text": "ZCZC GB97\nCULLERCOATSRADIO\nGALE WARNING MONDAY 23 MARCH 0349 UTC\n\n_\nC_ING\nGALE NOW CEASED BUT SOUTHERLY GALE FORCE 8 EXPECTED LATER\n\nFAIR ISLE\nGALE NOW CEASED BUHMJZCHDPYSEM_KJNB_ORCE 8 EXPECT_WMJZZ_MG_PPYF_MJZCHD_PJHPYS_MWMF_YPJF_MJP_PY_M_S_M_ZYXPM\nZMGSHPYONGONNKKKKKKKKKKKKKKKKQEXPE_HPWMX__FPH__G_PPYF_MJ_C_Y AND INCREASING_ORCE 10 LATER\n\nFAIR ISLE FAEROES\nGALE NOW_CEASED BUT SOUTHERLY GAL\n8 EXPEC\nEUS_\n\n_ZCZC",
    "clean_text": "ZCZC GB97\nCULLERCOATSRADIO\nGALE WARNING MONDAY 23 MARCH 0349 UTC\n\n_\nC_ING\nGALE NOW CEASED BUT SOUTHERLY GALE FORCE 8 EXPECTED LATER\n\nFAIR ISLE\nGALE NOW CEASED BUHMJZCHDPYSEM_KJNB_ORCE 8 EXPECT_WMJZZ_MG_PPYF_MJZCHD_PJHPYS_MWMF_YPJF_MJP_PY_M_S_M_ZYXPM\nZMGSHPYONGONNKKKKKKKKKKKKKKKKQEXPE_HPWMX__FPH__G_PPYF_MJ_C_Y AND INCREASING_ORCE 10 LATER\n\nFAIR ISLE FAEROES\nGALE NOW_CEASED BUT SOUTHERLY GAL\n8 EXPEC\nEUS_\n\n_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": "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. Readable text says: Gale now ceased but southerly gale force 8 expected later. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale now ceased but southerly gale force 8 expected later",
      "Gale now ceased buhmjzchdpysem kjnb orce 8 expect wmjzz mg ppyf mjzchd pjhpys mwmf ypjf mjp py m s m zyxpm",
      "Gale warning monday 23 march 0349 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 132,
    "heading": "2026-03-23 05:45:46 AREA: W",
    "published_at": "2026-03-23 05:45:46",
    "area": "W",
    "message_id": "WA96",
    "text": "ZCZC WA96\nAVUCNROVENCE - LION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\n FROM 230000 UTC MAR 26 TO 262359  HXM_Y_\n_ SCIENTIFIC SURVEY AND GLIDER IMPLEMETHFZMLEM_\nM_\nJGHSHPONMZM_ZS_Z_FMS_P___OVYCUMTI\nN 005-17. 0E,_42-_4.35N 006-03.21E.\n 42-54.35N 006-03.21E, 42-42.35N 006-03.2_3_43-03_71N 005-16.70E, 42-12.36NPTARTMRQE.\n 43-06.52N 005-14.02E, 43-00_+____\n_-14.02_-___(C_PFTTM_DDHNM__AQRMPWE.\n_ 42-05_19_.\n-03.95N 005-11_95__\n 4 -08.47N 005-14.\n70\n._=__HUVZO_9:.5.='__\n5 WIDE B_RTH REQUESTED\n_PFT__KGA_AT____DZ_ULON 1_9\n_:___:6=9_!068+\n9054-5___8=856 - SCIENTIFIC SURVEY\n F_OM 290000 UTC_\nAF\nKPPUAEBYQ__\n 43-35.00N 007-37.40E/43-34.____2_6___ZCZC",
    "clean_text": "ZCZC WA96\nAVUCNROVENCE - LION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\nFROM 230000 UTC MAR 26 TO 262359 HXM_Y_\n_ SCIENTIFIC SURVEY AND GLIDER IMPLEMETHFZMLEM_\nM_\nJGHSHPONMZM_ZS_Z_FMS_P___OVYCUMTI\nN 005-17. 0E,_42-_4.35N 006-03.21E.\n42-54.35N 006-03.21E, 42-42.35N 006-03.2_3_43-03_71N 005-16.70E, 42-12.36NPTARTMRQE.\n43-06.52N 005-14.02E, 43-00_+____\n_-14.02_-___(C_PFTTM_DDHNM__AQRMPWE.\n_ 42-05_19_.\n-03.95N 005-11_95__\n4 -08.47N 005-14.\n70\n._=__HUVZO_9:.5.='__\n5 WIDE B_RTH REQUESTED\n_PFT__KGA_AT____DZ_ULON 1_9\n_:___:6=9_!068+\n9054-5___8=856 - SCIENTIFIC SURVEY\nF_OM 290000 UTC_\nAF\nKPPUAEBYQ__\n43-35.00N 007-37.40E/43-34.____2_6___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. Readable text points to a scientific survey area near 42-54.35N 006-03.21E; 43-06.52N 005-14.02E and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "9054-5 8 856 - scientific survey",
      "Scientific survey and glider implemethfzmlem",
      "42-54.35n 006-03.21e, 42-42.35n 006-03.2 3 43-03 71n 005-16.70e, 42-12.36nptartmrqe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 133,
    "heading": "2026-03-23 05:43:21 AREA: T",
    "published_at": "2026-03-23 05:43:21",
    "area": "T",
    "message_id": "",
    "text": "ZCZXMU__PONG_CY__MHZCSZM_ _ET_EO_G_ZYJPM_M_PSLPMIMGSF_CY_M_MG_FZB\nIK_G_WWSPM_MG_YZ\nPXPM\nMGJYWF_PM_MG_F_Y_CPM_MG_LYPYONF_G+6/0._:''0_!9,\n_)) -=74,-= 597)9, 2-4,8,_' 8, !94:3 -43 -=-8)-_)3 9, 5_3 __)\n_*!_09,.$__J\nX_TGZYHFS_BG__GX+__:_!_:0\n__69,.9,._:6_.__.!.__6/0._._419 UTC MAR 26:\n 77/26, 1_7/_108/26, 111/26, 155/26, 175/26, 1_/26, 179/26, 180/26, 1815$_. !-5___= !15'__. !65_ AND THIS MSG\n2. CANCEL THIS MSG 271419 UTC MAR 26NNNN",
    "clean_text": "ZCZXMU__PONG_CY__MHZCSZM_ _ET_EO_G_ZYJPM_M_PSLPMIMGSF_CY_M_MG_FZB\nIK_G_WWSPM_MG_YZ\nPXPM\nMGJYWF_PM_MG_F_Y_CPM_MG_LYPYONF_G+6/0._:''0_!9,\n_)) -=74,-= 597)9, 2-4,8,_' 8, !94:3 -43 -=-8)-_)3 9, 5_3 __)\n_*!_09,.$__J\nX_TGZYHFS_BG__GX+__:_!_:0\n__69,.9,._:6_.__.!.__6/0._._419 UTC MAR 26:\n77/26, 1_7/_108/26, 111/26, 155/26, 175/26, 1_/26, 179/26, 180/26, 1815$_. !-5___= !15'__. !65_ AND THIS MSG\n2. CANCEL THIS MSG 271419 UTC MAR 26NNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. 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": 134,
    "heading": "2026-03-23 05:41:33 AREA: W",
    "published_at": "2026-03-23 05:41:33",
    "area": "W",
    "message_id": "WA92",
    "text": "ZCZC WA92\nAVURNAV TOULON 17_)8_74._\n_'_*_0-!._-:_3'\n'03:8-) 9034-5!9*9,\nFIRING EXERCISE\n FROM 230800 UTC MAR 26 TO 231800 UTC MAR 26\n FQZBMPU_QI_PN75: .-4 26 TO 241800 UTC MAR 26\n FROM 250800 UTC MAR 26 TO 251800 UTC MAR 26\n /*.+_,)8-,  ,-=53/ '34=8:3 (CENTER)\n COASTAL WARNING NR. 155/26 MAR 18\n LF_CYFMJPMMMSMJ_(____0.)+:202.)3._/9,.66_BPEG_OAQRMPOE\n 44-10.36N 009-28.58E\n 44-06.00N VNS_A_PE\n 43-58.00N 009-1:.50E\n SHIPPING FISHING ANCHORAGE AND ANY S YKKU/UNDERWATER FTF\n FOR COUNTERMEASURE LAUNCH, TORPEDO LAUNCH, AN TOA_W_T_TRAILING\n ALL TRANSITING SHIPS BEWARE\n2. CANCEL THIS MSG __ )_,.57_: .-4 26NNNN",
    "clean_text": "ZCZC WA92\nAVURNAV TOULON 17_)8_74._\n_'_*_0-!._-:_3'\n'03:8-) 9034-5!9*9,\nFIRING EXERCISE\nFROM 230800 UTC MAR 26 TO 231800 UTC MAR 26\nFQZBMPU_QI_PN75: .-4 26 TO 241800 UTC MAR 26\nFROM 250800 UTC MAR 26 TO 251800 UTC MAR 26\n/*.+_,)8-, ,-=53/ '34=8:3 (CENTER)\nCOASTAL WARNING NR. 155/26 MAR 18\nLF_CYFMJPMMMSMJ_(____0.)+:202.)3._/9,.66_BPEG_OAQRMPOE\n44-10.36N 009-28.58E\n44-06.00N VNS_A_PE\n43-58.00N 009-1:.50E\nSHIPPING FISHING ANCHORAGE AND ANY S YKKU/UNDERWATER FTF\nFOR COUNTERMEASURE LAUNCH, TORPEDO LAUNCH, AN TOA_W_T_TRAILING\nALL TRANSITING SHIPS BEWARE\n2. CANCEL THIS MSG __ )_,.57_: .-4 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: Shipping fishing anchorage and any s ykku/underwater ftf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping fishing anchorage and any s ykku/underwater ftf",
      "Coastal warning nr. 155/26 mar 18",
      "Firing exercise"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 135,
    "heading": "2026-03-23 05:40:12 AREA: W",
    "published_at": "2026-03-23 05:40:12",
    "area": "W",
    "message_id": "WA99",
    "text": "ZCZC WA99\nA\nURNAV TOULON 183/26\nPROVENCE\nSPECIAL OPERATIONS\n1. FIRING EXERCIS\n FROM 231345 UTC MAR 26 TO 231859 UTC MARE2\n AREA 04D-13-17-41-42-45 BOUNDED BY :\n 43-07.80N 006-40.00E/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-2220E\n 43-02.90N 006-29.00E/43-05.00N 006-29.00E\n (CHART FR7507_\n HAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 231959 UTC MAR 26NNNN",
    "clean_text": "ZCZC WA99\nA\nURNAV TOULON 183/26\nPROVENCE\nSPECIAL OPERATIONS\n1. FIRING EXERCIS\nFROM 231345 UTC MAR 26 TO 231859 UTC MARE2\nAREA 04D-13-17-41-42-45 BOUNDED BY :\n43-07.80N 006-40.00E/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-2220E\n43-02.90N 006-29.00E/43-05.00N 006-29.00E\n(CHART FR7507_\nHAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 231959 UTC MAR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "PROVENCE"
    ],
    "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: Hazardous to navigation.",
    "decoded_highlights": [
      "Hazardous to navigation",
      "Urnav toulon 183/26",
      "Provence"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 136,
    "heading": "2026-03-23 05:39:29 AREA: T",
    "published_at": "2026-03-23 05:39:29",
    "area": "T",
    "message_id": "",
    "text": "ZCZCIWB_1\n_.4_: ZCZC",
    "clean_text": "ZCZCIWB_1\n_.4_: 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": 137,
    "heading": "2026-03-23 05:32:10 AREA: T",
    "published_at": "2026-03-23 05:32:10",
    "area": "T",
    "message_id": "",
    "text": "ZCZCE\nEOAROMYIN 018-55.08E\n393-5_1_$,,_8-8.22E\n39-49.77N 01__8_802/3\n39-35.23N \n_45_ _3173'53$ \n\n,,,,\n\n_2____\n+:+.=\n230330 UTC MAR 26\nSELLIA MA INA RADIO\n\nCOASTAL WARNING 144/26 MAR 21\nFM 08.00LT ON 23 MAR 26 UNTIL 00.01LT ON 24 MAR 26,\nFM 08.00LT ON 24 MAR 26 UNTIL 02_ GSHMZM_MAR 269_\nFM 08.00LT ON 25 MAR 26 UNTIAC00.01LT ON 26 _Y_\n_\nFM 08.00LT ON 26 MAR 26 UNTIL 00.01LT ON 27 MAR 26,\nFM _!__T 27 AR 26 UNTIL 14.00LT ON 27 MAR 26,\nWILL BE CARRIED OUT LAUNCH O_VF_DH\nGJBZ__MXZSZCYMWMJCY_09___!\n!_!_0.*._'*.!._$0.-+0.)+:202.)_._$_._+'+_!._+!_*_TANGO 833 ALFA ZONE:\nA. LAT. 40 16'30'' N   LONG. 017 0J_JJMGPONL_MV_E\n_ _PVWQSRTSS N   LONG. 017 16'20'' E\n_WM _T. 40 24'05'' N   LONPWM _QC U_FKY_U\nTD. LAT. 40 24'13'' N   LONG. 017 13'49'' E\nE. LAT. 40 24'30'' N   LONG. 017 1-'15'' E\nF. LAT_ 40 17'00'' F IVA_NG_ _17\n:-/___7 E\n__M LAT_ 40 !2_'- _.7_1)_:_. _(7 6_. LA_2!_2H_KH_I_BRMS_DHDZCJPMP_BG\n___WORKING.\nCOASTAL WARNI_N_EW_TXWY MAR 1 IS DELETBD.__303*0 UTC_PC26\nS_TAKFEX_F_ZCZC",
    "clean_text": "ZCZCE\nEOAROMYIN 018-55.08E\n393-5_1_$,,_8-8.22E\n39-49.77N 01__8_802/3\n39-35.23N\n_45_ _3173'53$\n\n,,,,\n\n_2____\n+:+.=\n230330 UTC MAR 26\nSELLIA MA INA RADIO\n\nCOASTAL WARNING 144/26 MAR 21\nFM 08.00LT ON 23 MAR 26 UNTIL 00.01LT ON 24 MAR 26,\nFM 08.00LT ON 24 MAR 26 UNTIL 02_ GSHMZM_MAR 269_\nFM 08.00LT ON 25 MAR 26 UNTIAC00.01LT ON 26 _Y_\n_\nFM 08.00LT ON 26 MAR 26 UNTIL 00.01LT ON 27 MAR 26,\nFM _!__T 27 AR 26 UNTIL 14.00LT ON 27 MAR 26,\nWILL BE CARRIED OUT LAUNCH O_VF_DH\nGJBZ__MXZSZCYMWMJCY_09___!\n!_!_0.*._'*.!._$0.-+0.)+:202.)_._$_._+'+_!._+!_*_TANGO 833 ALFA ZONE:\nA. LAT. 40 16'30'' N LONG. 017 0J_JJMGPONL_MV_E\n_ _PVWQSRTSS N LONG. 017 16'20'' E\n_WM _T. 40 24'05'' N LONPWM _QC U_FKY_U\nTD. LAT. 40 24'13'' N LONG. 017 13'49'' E\nE. LAT. 40 24'30'' N LONG. 017 1-'15'' E\nF. LAT_ 40 17'00'' F IVA_NG_ _17\n:-/___7 E\n__M LAT_ 40 !2_'- _.7_1)_:_. _(7 6_. LA_2!_2H_KH_I_BRMS_DHDZCJPMP_BG\n___WORKING.\nCOASTAL WARNI_N_EW_TXWY MAR 1 IS DELETBD.__303*0 UTC_PC26\nS_TAKFEX_F_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: Coastal warning 144/26 mar 21. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning 144/26 mar 21",
      "Fm 08.00lt on 23 mar 26 until 00.01lt on 24 mar 26",
      "Fm 08.00lt on 24 mar 26 until 02 gshmzm mar 269"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 141,
    "heading": "2026-03-23 05:27:15 AREA: U",
    "published_at": "2026-03-23 05:27:15",
    "area": "U",
    "message_id": "UA03",
    "text": "ZCZC UA03\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01  20 REPETITION   \nSOUTHERN ADRIATIC SEA   BRINDISI.9 ___\n_AN UNTIL 31 DEC 2026 FROM LOCAL \nF__M\nEBMGHZM_UYB_O_G_FHDMP_SION OF NATIONAL HOLIDAYS ANW _CSEMWMC_CJH_MG_FSSMLPON_YEUBAX_BCB*___31_(_856 285_ '.-)) 23-09,' 8, 5_3 -43-\n8, !49,5 9! 59443 :-=-))9 !848,_ 4-,_3:\nA  40 38' 40 N   18 01' 12 E  B  40 39' 869 N   18 03' 669 E \nC  40 39' 02 N   18 04' 24 E  D  40 37' 51 N   18 04' 27 E \nE  40 36' 39 N   18 03' 22 E  F  40 0!*._!._..._01' 12 E.\nTRANSIT, ANCHORAGE AND FISHIN_ YPM_YZDFLFHPW_NNNN",
    "clean_text": "ZCZC UA03\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01 20 REPETITION\nSOUTHERN ADRIATIC SEA BRINDISI.9 ___\n_AN UNTIL 31 DEC 2026 FROM LOCAL\nF__M\nEBMGHZM_UYB_O_G_FHDMP_SION OF NATIONAL HOLIDAYS ANW _CSEMWMC_CJH_MG_FSSMLPON_YEUBAX_BCB*___31_(_856 285_ '.-)) 23-09,' 8, 5_3 -43-\n8, !49,5 9! 59443 :-=-))9 !848,_ 4-,_3:\nA 40 38' 40 N 18 01' 12 E B 40 39' 869 N 18 03' 669 E\nC 40 39' 02 N 18 04' 24 E D 40 37' 51 N 18 04' 27 E\nE 40 36' 39 N 18 03' 22 E F 40 0!*._!._..._01' 12 E.\nTRANSIT, ANCHORAGE AND FISHIN_ YPM_YZDFLFHPW_NNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Coastal warning 001/26 jan 01 20 repetition. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning 001/26 jan 01 20 repetition",
      "Transit, anchorage and fishin ypm yzdflfhpw nnnn",
      "An until 31 dec 2026 from local"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 142,
    "heading": "2026-03-23 05:25:51 AREA: U",
    "published_at": "2026-03-23 05:25:51",
    "area": "U",
    "message_id": "UA04",
    "text": "ZCZC UA04\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NG. 101/26 FEB 18\nLIGURIAN SEA  \nAREA BOUNDED BY FOLLOWING POINTS:\n  45 12.824N   012 22.473E\n  45 12.788N   012 22.449E\n  45 12.720N   012 22.714E\n  45 12.770N   012 22.739E\nUNTIL 29TH MAR 2026 DAYTIME HOURS AND WEATHER PERMITTING\nM/N CARMAR DUE WITH THEMFWMZ_MY__SIDE SCAN SONAR,\nAND MULTIB A_\nWILL CARRY OUT SEABED RESTORATION\nSHIPPING   FISHING   ANCHORAGE AM_ EVERY SURFACE/UNDERWATER\nACTIVITY IS DANGEROUS.\nALL TRANSITTING SHIP BEWARE\nNNNN",
    "clean_text": "ZCZC UA04\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NG. 101/26 FEB 18\nLIGURIAN SEA\nAREA BOUNDED BY FOLLOWING POINTS:\n45 12.824N 012 22.473E\n45 12.788N 012 22.449E\n45 12.720N 012 22.714E\n45 12.770N 012 22.739E\nUNTIL 29TH MAR 2026 DAYTIME HOURS AND WEATHER PERMITTING\nM/N CARMAR DUE WITH THEMFWMZ_MY__SIDE SCAN SONAR,\nAND MULTIB A_\nWILL CARRY OUT SEABED RESTORATION\nSHIPPING FISHING ANCHORAGE AM_ EVERY SURFACE/UNDERWATER\nACTIVITY IS DANGEROUS.\nALL TRANSITTING SHIP BEWARE\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Shipping fishing anchorage am every surface/underwater.",
    "decoded_highlights": [
      "Shipping fishing anchorage am every surface/underwater",
      "Until 29th mar 2026 daytime hours and weather permitting",
      "Coastal warning ng. 101/26 feb 18"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 143,
    "heading": "2026-03-23 05:23:33 AREA: U",
    "published_at": "2026-03-23 05:23:33",
    "area": "U",
    "message_id": "UA08",
    "text": "ZCZC UA08\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01  20 REPETITION _C\nSOUTHERN ADRC\nF_MJPMMMLYFWFJF_FM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JULY AND\nACHCJH_F WILL BE\nCARRIED OUT A MILITARY ACTIVITY WITH SMALL WEAPONS IN THE AREA\nIN FRONT OF TORRE CAVALLO FIRING RANGE:\nA  40 38' 40 N   0__(__,___9_,39AQB_Q_BBOBXGOPOQQ_B_B_ 40 39' 02 N   18 04' 24 E  D  40 37' 51 N   18 04' 27 E \nE NWRP E_S EO N__W_W_WW__WWYRL BARLETTA'S HARBOUR WORKING\nCOASTAL WARNING 137/26 MAR 17 DELETED\nNNNN",
    "clean_text": "ZCZC UA08\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26 JAN 01 20 REPETITION _C\nSOUTHERN ADRC\nF_MJPMMMLYFWFJF_FM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JULY AND\nACHCJH_F WILL BE\nCARRIED OUT A MILITARY ACTIVITY WITH SMALL WEAPONS IN THE AREA\nIN FRONT OF TORRE CAVALLO FIRING RANGE:\nA 40 38' 40 N 0__(__,___9_,39AQB_Q_BBOBXGOPOQQ_B_B_ 40 39' 02 N 18 04' 24 E D 40 37' 51 N 18 04' 27 E\nE NWRP E_S EO N__W_W_WW__WWYRL BARLETTA'S HARBOUR WORKING\nCOASTAL WARNING 137/26 MAR 17 DELETED\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Coastal warning 001/26 jan 01 20 repetition c. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning 001/26 jan 01 20 repetition c",
      "Carried out a military activity with small weapons in the area",
      "Coastal warning 137/26 mar 17 deleted"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 144,
    "heading": "2026-03-23 05:21:48 AREA: U",
    "published_at": "2026-03-23 05:21:48",
    "area": "U",
    "message_id": "UA07",
    "text": "ZCZC UA07\n230320 UHXM_Y_\n_NDOLFO RADIO\nN_ZJHSM_FM\n  UTUE_G0)__(5 REPETITION)  \nSOUTHERN ADRIATIC SEA   OTRANTO \nDAYS 02 03 04 05 06 09 10 11 12 13 16 17 18 19 20 23 24 25 26 27 \n30 AND ___GBYM_YZBM__F\n_MHZM_PPLT, WILL BE CARRIED OUT A FIRING\nMILITARY ACTIVITIES IN THE SEA AREA IN FRONT OF 'TORRE VENERI'\nFIRING RANGE, BOUNDED BY THE FOLLOWING POINTS:\nA    _OP _TSEQ N   18 15'30 E  B    40 30'20 __   18 16'30 E \nC    40 29'25 N   18 19'03 E  D    40 27'45 N   18 _8 E \nE    40 25'55 N   18 22'28 E  F    40 23'05 N   18 23'18 E \nG    40 23'54 N   18 17'30 E \nSAILING, ANCHORAGE AND FIJDF_MYPM_YZDFLFHPWMONONONN_FF_\nZCZC",
    "clean_text": "ZCZC UA07\n230320 UHXM_Y_\n_NDOLFO RADIO\nN_ZJHSM_FM\nUTUE_G0)__(5 REPETITION)\nSOUTHERN ADRIATIC SEA OTRANTO\nDAYS 02 03 04 05 06 09 10 11 12 13 16 17 18 19 20 23 24 25 26 27\n30 AND ___GBYM_YZBM__F\n_MHZM_PPLT, WILL BE CARRIED OUT A FIRING\nMILITARY ACTIVITIES IN THE SEA AREA IN FRONT OF 'TORRE VENERI'\nFIRING RANGE, BOUNDED BY THE FOLLOWING POINTS:\nA _OP _TSEQ N 18 15'30 E B 40 30'20 __ 18 16'30 E\nC 40 29'25 N 18 19'03 E D 40 27'45 N 18 _8 E\nE 40 25'55 N 18 22'28 E F 40 23'05 N 18 23'18 E\nG 40 23'54 N 18 17'30 E\nSAILING, ANCHORAGE AND FIJDF_MYPM_YZDFLFHPWMONONONN_FF_\nZCZC",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "ADRIATIC",
      "OTRANTO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Military activities in the sea area in front of 'torre veneri'. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Military activities in the sea area in front of 'torre veneri'",
      "Sailing, anchorage and fijdf mypm yzdflfhpwmonononn ff",
      "Firing range, bounded by the following points"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 145,
    "heading": "2026-03-23 05:21:00 AREA: U",
    "published_at": "2026-03-23 05:21:00",
    "area": "U",
    "message_id": "UA06",
    "text": "ZCZC UA06\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WAR_FM_ Y_T_AR 21\nSOUTHERN ADRIATIC SEA - BRINDISI.\nTHE BRINDISI VTS CENTER IS IN NON-_+,06_!_0.DJPM_YZBM_CB_GSHONZ.\n7____69,:_(19_$07.00LT OF 22 MAR 2026,\nTHEREFORE VTS SERVICES CANNOT BE PROVIDED.\n\n\n\nNNNN",
    "clean_text": "ZCZC UA06\n230320 UTC MAR 26\nMONDOLFO RADIO\n\nCOASTAL WAR_FM_ Y_T_AR 21\nSOUTHERN ADRIATIC SEA - BRINDISI.\nTHE BRINDISI VTS CENTER IS IN NON-_+,06_!_0.DJPM_YZBM_CB_GSHONZ.\n7____69,:_(19_$07.00LT OF 22 MAR 2026,\nTHEREFORE VTS SERVICES CANNOT BE PROVIDED.\n\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Therefore vts services cannot be provided",
      "Southern adriatic sea - brindisi",
      "Mondolfo radio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 146,
    "heading": "2026-03-23 05:20:19 AREA: U",
    "published_at": "2026-03-23 05:20:19",
    "area": "U",
    "message_id": "UA05",
    "text": "ZCZC UA05\n720__MG_HXM_Y_\n_MONDOLFO RADIO\n\nCOASTAL WARNING NR. 159/26 MAR 19\nADRIA\n_EA - TRIESTE -\nFROM 200700 UTC MAR 26 TO 2_070_ _ _/._6_\n__9,__6!0*_0.__*.!*.!._. (NOT OPERATIONAL)\nALL TRANSITING SHIPS BEWARE\n\nNNNN",
    "clean_text": "ZCZC UA05\n720__MG_HXM_Y_\n_MONDOLFO RADIO\n\nCOASTAL WARNING NR. 159/26 MAR 19\nADRIA\n_EA - TRIESTE -\nFROM 200700 UTC MAR 26 TO 2_070_ _ _/._6_\n__9,__6!0*_0.__*.!*.!._. (NOT OPERATIONAL)\nALL TRANSITING SHIPS BEWARE\n\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Coastal warning nr. 159/26 mar 19. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning nr. 159/26 mar 19",
      "Ea - trieste -",
      "All transiting ships beware"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 152,
    "heading": "2026-03-23 05:12:53 AREA: T",
    "published_at": "2026-03-23 05:12:53",
    "area": "T",
    "message_id": "TA79",
    "text": "ZCZC TA79\n27_420 UTC SEP  \nOOSTENDERADIO MSI 350/25\nOOSTENDE-ZEEBRUGGE\nCHAIN ON THE SEABED IN THE VICINITY \nOF 51-20,____.\n_03,75E\nSHIPPING IS REQUESTED NOT TO ANCHOR \nNOR TO FISH IN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA79\n27_420 UTC SEP\nOOSTENDERADIO MSI 350/25\nOOSTENDE-ZEEBRUGGE\nCHAIN ON THE SEABED IN THE VICINITY\nOF 51-20,____.\n_03,75E\nSHIPPING IS REQUESTED NOT TO ANCHOR\nNOR 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",
      "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 sets local operating restrictions, including anchoring, fishing, or towing limits.",
    "decoded_highlights": [
      "Shipping is requested not to anchor",
      "Nor to fish in the vicinity",
      "Chain on the seabed in the vicinity"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 153,
    "heading": "2026-03-23 05:12:25 AREA: T",
    "published_at": "2026-03-23 05:12:25",
    "area": "T",
    "message_id": "TA88",
    "text": "ZCZC TA88\n,\n 07 _6._:_/._69,_++*_02062!+._*!_\n  TUEONGHJJ_GUPJHDFWPYMONG_PJHDFWPYM_PJCYF_IIKKMZSP_MZ UPB_NTLONG:::0)(1_,9_*_32_9/3_('*ZZFFFC__ZCZC",
    "clean_text": "ZCZC TA88\n,\n07 _6._:_/._69,_++*_02062!+._*!_\nTUEONGHJJ_GUPJHDFWPYMONG_PJHDFWPYM_PJCYF_IIKKMZSP_MZ UPB_NTLONG:::0)(1_,9_*_32_9/3_('*ZZFFFC__ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 155,
    "heading": "2026-03-23 05:06:11 AREA: S",
    "published_at": "2026-03-23 05:06:11",
    "area": "S",
    "message_id": "SE98",
    "text": "ZCZC SE98\n230300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nMONDAY:\nVARIABLE WINDS 2 TO 3, SHIFTING SOUTHWESTMSHPYMWMF_YPJF_MLZCHON\nY_ONGSZ_SSEM_ZZ_M_FJFLFSFH_MISTY.\nSEA: NORTHWESTERN PART I_CREASING 2 METER_N\n\nTUESDAY:9\n_!9_5_-_*\n6.___.-___!6)__ ')92)6 6 __-8, 94_'_4 285_ 0994 =8'8_8)85__\n_-: WESTERN PART LATER 4 METER.\nNNNN",
    "clean_text": "ZCZC SE98\n230300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nMONDAY:\nVARIABLE WINDS 2 TO 3, SHIFTING SOUTHWESTMSHPYMWMF_YPJF_MLZCHON\nY_ONGSZ_SSEM_ZZ_M_FJFLFSFH_MISTY.\nSEA: NORTHWESTERN PART I_CREASING 2 METER_N\n\nTUESDAY:9\n_!9_5_-_*\n6.___.-___!6)__ ')92)6 6 __-8, 94_'_4 285_ 0994 =8'8_8)85__\n_-: 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: Weatherforecast for german bight. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Weatherforecast for german bight",
      "Variable winds 2 to 3, shifting southwestmshpymwmf ypjf mlzchon",
      "Sea: northwestern part i creasing 2 meter n"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 159,
    "heading": "2026-03-23 05:02:44 AREA: S",
    "published_at": "2026-03-23 05:02:44",
    "area": "S",
    "message_id": "SA48",
    "text": "ZCZC SA48\nNCC-HAMBURG\n131030 UTCVMR 26\nNAV. WARN. N_QRO\nGERMAN BIGH\nTMGJZCHDPYSEM_PFJJPMLVIBOOGCW\nY_HPYMZ_PYHFZJM_QBOB_P_RO QUEST', CS 'C6FO2',\nWITHIN A RADIUS OF 2 NM AROUND POSITION\n54-41,1N 006-14,4E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 500 METERS REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA48\nNCC-HAMBURG\n131030 UTCVMR 26\nNAV. WARN. N_QRO\nGERMAN BIGH\nTMGJZCHDPYSEM_PFJJPMLVIBOOGCW\nY_HPYMZ_PYHFZJM_QBOB_P_RO QUEST', CS 'C6FO2',\nWITHIN A RADIUS OF 2 NM AROUND POSITION\n54-41,1N 006-14,4E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 500 METERS REQUESTED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Restricted manoevrability during operations.",
    "decoded_highlights": [
      "Restricted manoevrability during operations",
      "Within a radius of 2 nm around position",
      "German bigh"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 161,
    "heading": "2026-03-23 05:00:06 AREA: P",
    "published_at": "2026-03-23 05:00:06",
    "area": "P",
    "message_id": "PA26",
    "text": "ZCZC PA26\n230227 UTC MAR 26\nMSI 95/26\nTHE FOLLOWING NAVBERS ARE IN FORCE:\n\nMSI    94/26  20-03-2026\nMSI    93/26  20-03-2026\nMSI    92/26  19-03-2026\nMSI    89/26  18-03-2026\nMSI    88/26  18-03-2026\nMSI    87/26  18-03-2026\nMSI    83/26  12-03-2026\nMSI    79/26  10-03-2026\nMSI    75/26  07-03-2026\nMSI    38/26  29-01-2026\nMSI      2/26  04-01-2026\nMSI   310/25 14-10-2025\nMSI   302/25  09-10-2025\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nNNNN",
    "clean_text": "ZCZC PA26\n230227 UTC MAR 26\nMSI 95/26\nTHE FOLLOWING NAVBERS ARE IN FORCE:\n\nMSI 94/26 20-03-2026\nMSI 93/26 20-03-2026\nMSI 92/26 19-03-2026\nMSI 89/26 18-03-2026\nMSI 88/26 18-03-2026\nMSI 87/26 18-03-2026\nMSI 83/26 12-03-2026\nMSI 79/26 10-03-2026\nMSI 75/26 07-03-2026\nMSI 38/26 29-01-2026\nMSI 2/26 04-01-2026\nMSI 310/25 14-10-2025\nMSI 302/25 09-10-2025\n\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: The following navbers are in force. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "The following navbers are in force"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 162,
    "heading": "2026-03-23 04:40:19 AREA: Q",
    "published_at": "2026-03-23 04:40:19",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\n230240 UTC Y \nD_\n_IT RADIO\n\nCOASTAL - NAVTEX\n_ZYHDPYMWYFHF_CPMXCVU__CHART: 10-16\n\nPULA PORT, BREAKWATER, E0)9_V__Q\nICE IN VIC_NITY __RATWNTT _N 0_3-47,775E_ \n7__9 20 KT.=_FWH_MYQFM_M6___02.+_._$0.2309_+\n06_!'$_.0._!2.!_6._+.,/_:(____BH__JNS_1___\n((*_AOF_QOH_\nSEA 2-3.\nVIS 10-20 KM.\nVRB CLOUDY, LOC LIGHT RAIN WITH SLIGHT POSS OF T-SHWRS.\n\nCENTRAL ADRIATIC:\nOFFSHORE NW, ALONG THE COAST SE/E, JUST LOC NE WIND 5-15 KT. BY THE END OF THE DAY/OVERNIGHT NE, OFFSHORE ALSO NW WIND INCR TO 8-16 KT.\nSEA 1-2, JUSTMSZXM\nP_ONG_FJ_\nXGOCGLWJ_C_AWU_YANFZV_HF_QDF _ED_YFM_FHDMJSF_DHM_ZJJMZ_MH\nG_D_YJ\n_ONONGJ_GPYMWYFHFX_XON_Z_ORE NW, ALONG THE COAST SE/E, JUST LOC NE WIND 5-15 KT. BY THE END OF_THG DAY/OVERNIGHT NE, OFFSHORE ALSO NW WIND INCR TO 8-16 KT.\nSEA 1-2, JUST LOC 3.\nVIS 10-20 KM.\nVRB CLOUDY, LOC LIGHT RAIN WITH SLIGHT POSS OF T-SHWRS.NNNN",
    "clean_text": "ZCZC QA01\n230240 UTC Y\nD_\n_IT RADIO\n\nCOASTAL - NAVTEX\n_ZYHDPYMWYFHF_CPMXCVU__CHART: 10-16\n\nPULA PORT, BREAKWATER, E0)9_V__Q\nICE IN VIC_NITY __RATWNTT _N 0_3-47,775E_\n7__9 20 KT.=_FWH_MYQFM_M6___02.+_._$0.2309_+\n06_!'$_.0._!2.!_6._+.,/_:(____BH__JNS_1___\n((*_AOF_QOH_\nSEA 2-3.\nVIS 10-20 KM.\nVRB CLOUDY, LOC LIGHT RAIN WITH SLIGHT POSS OF T-SHWRS.\n\nCENTRAL ADRIATIC:\nOFFSHORE NW, ALONG THE COAST SE/E, JUST LOC NE WIND 5-15 KT. BY THE END OF THE DAY/OVERNIGHT NE, OFFSHORE ALSO NW WIND INCR TO 8-16 KT.\nSEA 1-2, JUSTMSZXM\nP_ONG_FJ_\nXGOCGLWJ_C_AWU_YANFZV_HF_QDF _ED_YFM_FHDMJSF_DHM_ZJJMZ_MH\nG_D_YJ\n_ONONGJ_GPYMWYFHFX_XON_Z_ORE NW, ALONG THE COAST SE/E, JUST LOC NE WIND 5-15 KT. BY THE END OF_THG DAY/OVERNIGHT NE, OFFSHORE ALSO NW WIND INCR TO 8-16 KT.\nSEA 1-2, JUST LOC 3.\nVIS 10-20 KM.\nVRB CLOUDY, LOC LIGHT RAIN WITH SLIGHT POSS OF T-SHWRS.NNNN",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "ADRIATIC"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Croatia - Adriatic Sea. This is a weather bulletin; readable sections mention ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vrb cloudy, loc light rain with slight poss of t-shwrs",
      "Vrb cloudy, loc light rain with slight poss of t-shwrs.nnnn",
      "Ice in vic nity ratwntt n 0 3-47,775e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 166,
    "heading": "2026-03-23 04:30:07 AREA: P",
    "published_at": "2026-03-23 04:30:07",
    "area": "P",
    "message_id": "PE57",
    "text": "ZCZC PE57\n230106 UTC MAR 26\nFORECAST DUTCH EEZ ISSUED AT 00:23 UTC 230326\nTHERE ARE NO WARNINGS.\n\nSYNOPSIS\nRIDGE OVER THE BRITISH ISLES WILL MOVE TO GERMANY. LOW, 965,\n SOUTHWEST OF ICELAND WILL MOVE NORTHEAST.\n\nFORECAST VALID MONDAY 03:00 TILL MONDAY 15:00 UTC\n\nTHAMES \nVARIABLE 2-3.\nMODERATE TO GOOD.\nWAVEHEIGHT LESS THAN 0.5 METER.\n,9,_$:_)06.9,_6!)'0._.\nMODERATE TO GO_W_MGSZ_SSEM_ZJJFLSEM_ZZ__WAVEHEIGHT LESS THAN 0.5 METER.\n\n\nGER_MLF_DHMWZ_ \nVARIABLE 2-3.\nMODERATE TO POOR.\nWAVEHEIGHT 0.5-1.0 METER.\n\n9\n__+10_*_._'!2._+_3._ _/_MGHFSSMHCPJWEM_PX_MG_H_ONONHD_PJMON_YFLSPM_N G_ADCSS_MF_YPJF_MJZCHD_PJ_M_YH_ONG_ZWPYHPMHZM_ZZ__WAVEHEIGHT LESS THAN \n_METER, INCREASING 0.5-1.0 METER.\n\n\nHUMBER \nVARIABLE 2-3, _)62:''_.!_60*!_.*+:_$_0*_._6__9,__+206_0._+._++6_._!_60*!._++__WAVEHEIGHT LESS THAN 0.5 METER, INCREASING AROUND 1.0 METER.\n\n\nGERMAN BIGHT \nVARIABLE 2-3, GRADUALLY INCREASING SOUTHWEST 4-5.\nMODERATE TO POOR, LATER INCREASING GOOD.\nWAVEHEIGHT 0.5-1.0 METER, INCREASING 1.0-1.5 METER.\n\n\nDOGGER \nVARIABLE 2-3, GRADUALLY INCREASING SOUTHWEST 5-6.\nMODERATE TO POOR, INCREASING GOOD.\nWAVEHEIGHT 0.5-1.0 METER, INCREASING _QMTAWMP METE__9\n\n\n\n\nNNNN",
    "clean_text": "ZCZC PE57\n230106 UTC MAR 26\nFORECAST DUTCH EEZ ISSUED AT 00:23 UTC 230326\nTHERE ARE NO WARNINGS.\n\nSYNOPSIS\nRIDGE OVER THE BRITISH ISLES WILL MOVE TO GERMANY. LOW, 965,\nSOUTHWEST OF ICELAND WILL MOVE NORTHEAST.\n\nFORECAST VALID MONDAY 03:00 TILL MONDAY 15:00 UTC\n\nTHAMES\nVARIABLE 2-3.\nMODERATE TO GOOD.\nWAVEHEIGHT LESS THAN 0.5 METER.\n,9,_$:_)06.9,_6!)'0._.\nMODERATE TO GO_W_MGSZ_SSEM_ZJJFLSEM_ZZ__WAVEHEIGHT LESS THAN 0.5 METER.\n\nGER_MLF_DHMWZ_\nVARIABLE 2-3.\nMODERATE TO POOR.\nWAVEHEIGHT 0.5-1.0 METER.\n\n9\n__+10_*_._'!2._+_3._ _/_MGHFSSMHCPJWEM_PX_MG_H_ONONHD_PJMON_YFLSPM_N G_ADCSS_MF_YPJF_MJZCHD_PJ_M_YH_ONG_ZWPYHPMHZM_ZZ__WAVEHEIGHT LESS THAN\n_METER, INCREASING 0.5-1.0 METER.\n\nHUMBER\nVARIABLE 2-3, _)62:''_.!_60*!_.*+:_$_0*_._6__9,__+206_0._+._++6_._!_60*!._++__WAVEHEIGHT LESS THAN 0.5 METER, INCREASING AROUND 1.0 METER.\n\nGERMAN BIGHT\nVARIABLE 2-3, GRADUALLY INCREASING SOUTHWEST 4-5.\nMODERATE TO POOR, LATER INCREASING GOOD.\nWAVEHEIGHT 0.5-1.0 METER, INCREASING 1.0-1.5 METER.\n\nDOGGER\nVARIABLE 2-3, GRADUALLY INCREASING SOUTHWEST 5-6.\nMODERATE TO POOR, INCREASING GOOD.\nWAVEHEIGHT 0.5-1.0 METER, INCREASING _QMTAWMP METE__9\n\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "DUTCH EEZ"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Netherlands - Dutch EEZ and southern North Sea. Readable text says there are currently no active warnings for this forecast area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "There are no warnings",
      "Forecast dutch eez issued at 00:23 utc 230326",
      "Southwest of iceland will move northeast"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  }
]