[
  {
    "index": 1,
    "heading": "2026-04-08 02:49:01 AREA: W",
    "published_at": "2026-04-08 02:49:01",
    "area": "W",
    "message_id": "WAXO",
    "text": "ZCZC WAXO\nNING ASTRAKLAI\n__WX__PKH_BIJATIOO\n_I_N __7____2E\nB. 42-48.2N 047-\n_::1___57:_=\n$(62+6 _0_=_2__F__COAS_A_C-_,:, 80\nSR ANWMT_J\nN\nYYYHFG_MY_:(3:B__AHT ICE_ABUOYINOI137_I_ 7__.$4_+(4\n____9_945 -'54-(_-, 0945 9)6-\n1._SE_C_RITY\nT_VC_MYWN _7W\n 42W\n 45-08.77NVCQWAPRMTTW\n \n SECOND/DA_GER_ZONAS_ ___PLUSU:.5_ SEC ES_A_LISHED\nI_ 43$0=-20.N 047-29-51.9E\n2. CANCEL _V_\nNNNN",
    "clean_text": "ZCZC WAXO\nNING ASTRAKLAI\n__WX__PKH_BIJATIOO\n_I_N __7____2E\nB. 42-48.2N 047-\n_::1___57:_=\n$(62+6 _0_=_2__F__COAS_A_C-_,:, 80\nSR ANWMT_J\nN\nYYYHFG_MY_:(3:B__AHT ICE_ABUOYINOI137_I_ 7__.$4_+(4\n____9_945 -'54-(_-, 0945 9)6-\n1._SE_C_RITY\nT_VC_MYWN _7W\n42W\n45-08.77NVCQWAPRMTTW\n\nSECOND/DA_GER_ZONAS_ ___PLUSU:.5_ SEC ES_A_LISHED\nI_ 43$0=-20.N 047-29-51.9E\n2. CANCEL _V_\nNNNN",
    "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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Yyyhfg my :(3:b aht ice abuoyinoi137 i 7 .$4 (4",
      "Ning astraklai",
      "Sr anwmt j"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-04-08 02:40:10 AREA: W",
    "published_at": "2026-04-08 02:40:10",
    "area": "W",
    "message_id": "WE95",
    "text": "ZCZC WE95\nN_BNZPHQZH_6_+_5 21 UTC\n\nFMFMLP_Z___ZO_C_M_ABKKEG3_+____2__+4:_85_=_) __:,.___872!_'_-))92 )9_ 10 _48-,\n:9-'58 ')__,_(_=3!=87_HW_CF_QIFXKVLQ_JHMZ_M_LYP_A_OX\n_PMZYMJPM_N DECR _QNGLZM__H_GLGSCGI_ZD_UK__KK___IN AFTERNOON__O\nONGLSPYPJ_NE 2 TO 4, __0_8,:4 4 OR 5 IN MORNING AND AFTERNOON.\nSMOOTH OR SLGTL_O G_ZZ_M_FJMWCPMHZMJZ_OG PATCHES.\n\nMINORQUE.\nSE 2 TZM_YO_\nNBEBB_(_)__31___3$____)3_ THEN DECR VRB 1 TO\n3 IN AFTERNOON, MAINLY E.\nSMOZHDMF_T, BECMG SMOOTH IN MORNING.\nLOC POOR VIS DUE TO SOME FO_ CAHMDPJ_MK)_\nE DECR 1 TZM_PMGHDPMLP_BOE_B-_7-=8_80*7_+$_7_:2('(,'__ BECM_OOTH IN MORNING.\nPOOR VIS DUE TO SOME FOG PATCHES.\n\nPROVENCE.\nSE DECR 1 TO 3, LOC VR_ IN FAR E, THEN INCR E 2 TOK4 EVECYWHERE IN\nLATE _IG_\nBIUF_INV_CTCH_ 1 TO _ AT IDDAY.\nSMOOTH OR SLGT, BEC_G SMOOTH INE \nU\nF V_V_P ZHHZZYL_F_KF\n_MGLNE\n__O___O_B__B_INTF__A\nZGZC WA_QI\nW_\nCOASTAL WARNI__ANNEL\nLIGHT BIUOYS NO 48 50 43 I_ 145-14_  _:_STABLISHE ,\nNONNI_IU_ZCZC",
    "clean_text": "ZCZC WE95\nN_BNZPHQZH_6_+_5 21 UTC\n\nFMFMLP_Z___ZO_C_M_ABKKEG3_+____2__+4:_85_=_) __:,.___872!_'_-))92 )9_ 10 _48-,\n:9-'58 ')__,_(_=3!=87_HW_CF_QIFXKVLQ_JHMZ_M_LYP_A_OX\n_PMZYMJPM_N DECR _QNGLZM__H_GLGSCGI_ZD_UK__KK___IN AFTERNOON__O\nONGLSPYPJ_NE 2 TO 4, __0_8,:4 4 OR 5 IN MORNING AND AFTERNOON.\nSMOOTH OR SLGTL_O G_ZZ_M_FJMWCPMHZMJZ_OG PATCHES.\n\nMINORQUE.\nSE 2 TZM_YO_\nNBEBB_(_)__31___3$____)3_ THEN DECR VRB 1 TO\n3 IN AFTERNOON, MAINLY E.\nSMOZHDMF_T, BECMG SMOOTH IN MORNING.\nLOC POOR VIS DUE TO SOME FO_ CAHMDPJ_MK)_\nE DECR 1 TZM_PMGHDPMLP_BOE_B-_7-=8_80*7_+$_7_:2('(,'__ BECM_OOTH IN MORNING.\nPOOR VIS DUE TO SOME FOG PATCHES.\n\nPROVENCE.\nSE DECR 1 TO 3, LOC VR_ IN FAR E, THEN INCR E 2 TOK4 EVECYWHERE IN\nLATE _IG_\nBIUF_INV_CTCH_ 1 TO _ AT IDDAY.\nSMOOTH OR SLGT, BEC_G SMOOTH INE\nU\nF V_V_P ZHHZZYL_F_KF\n_MGLNE\n__O___O_B__B_INTF__A\nZGZC WA_QI\nW_\nCOASTAL WARNI__ANNEL\nLIGHT BIUOYS NO 48 50 43 I_ 145-14_ _:_STABLISHE ,\nNONNI_IU_ZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "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": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for France - Provence, Ligurian Sea and western Mediterranean. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Light biuoys no 48 50 43 i 145-14 : stablishe",
      "Poor vis due to some fog patches",
      "Onglspypj ne 2 to 4, 0 8,:4 4 or 5 in morning and afternoon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-04-08 02:33:20 AREA: V",
    "published_at": "2026-04-08 02:33:20",
    "area": "V",
    "message_id": "VA14",
    "text": "ZCZC VA14\n072330 UTC APR 26\nSPSSFM_YFMYWFZO__A__DVQE3___:19_(49,OZFZFMJPBKBH_KE__ULF.\nFM 10.00LT UNTIL 169.0L_ ON 07 APR 2026,\nFM 10.00LT UNTIL 15.30LT ON 08 APF 2026,\nWILL BE CARRIED OUT GUNFIRING MIAITARY ACTI\nQLFPJMFMHDPMJPMAZ_ONSS_BM_MRKB_7 12.000' _19,'__0 17.000' N ___'9.__KBH_. 017 30.!00' E\nNSH_VYMBJM_MKBH. 01=___0___KB_UPP F__N\n-._'+_017 12.000' E\nTRANSIT, FISHING, ANCHORAMK AND OTHER UOZUAW_TER ACTIVITIES\nR.,6+$!)!_02_1_\nZCC W_PTQTRP UTC APR 26\nCOASEAOAZOO__P\n_KA\n_\n\n_4+\n__'1_*.62!+.0_!_09,_$!6+._\n___-.__(__E__Z_\n RTG_LV_OR THE PE_ROD _P_O_MU_K___U_AD_Z___ ZCZC",
    "clean_text": "ZCZC VA14\n072330 UTC APR 26\nSPSSFM_YFMYWFZO__A__DVQE3___:19_(49,OZFZFMJPBKBH_KE__ULF.\nFM 10.00LT UNTIL 169.0L_ ON 07 APR 2026,\nFM 10.00LT UNTIL 15.30LT ON 08 APF 2026,\nWILL BE CARRIED OUT GUNFIRING MIAITARY ACTI\nQLFPJMFMHDPMJPMAZ_ONSS_BM_MRKB_7 12.000' _19,'__0 17.000' N ___'9.__KBH_. 017 30.!00' E\nNSH_VYMBJM_MKBH. 01=___0___KB_UPP F__N\n-._'+_017 12.000' E\nTRANSIT, FISHING, ANCHORAMK AND OTHER UOZUAW_TER ACTIVITIES\nR.,6+$!)!_02_1_\nZCC W_PTQTRP UTC APR 26\nCOASEAOAZOO__P\n_KA\n_\n\n_4+\n__'1_*.62!+.0_!_09,_$!6+._\n___-.__(__E__Z_\nRTG_LV_OR THE PE_ROD _P_O_MU_K___U_AD_Z___ ZCZC",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. Readable text says: Transit, fishing, anchoramk and other uozuaw ter activities. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, fishing, anchoramk and other uozuaw ter activities",
      "Will be carried out gunfiring miaitary acti",
      "Fm 10.00lt until 169.0l on 07 apr 2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-04-08 02:32:12 AREA: V",
    "published_at": "2026-04-08 02:32:12",
    "area": "V",
    "message_id": "VA16",
    "text": "ZCZC VA16\n,C__PMG_H_MYM\n_SELLIAMMYFMYWFZONON_ZJHSM_YFM_ H_T_AR 26 (1 REPETITION)\nSET_____=_._ 93__49_8_-))!_+'__FROM 01 UNTIL 15 APR 2026, THE UNFH_P_ZMZP_MG_FS_M_YY_MZCHOND_WYZ_YLZMYPJPY_DMZ_P_Z_YDFXB_C_F_M_M1_$_-_LAT 39 51'30.62''N LONG 018 42'44.00''E\nALL UNITS IN TRANSIT MUSTVPAENGMKO:/__/$:_8_8'_=_7_(_1(__JH_PMZ.\n__MGBPHPYJM_YZBMCFH_\nNNNN",
    "clean_text": "ZCZC VA16\n,C__PMG_H_MYM\n_SELLIAMMYFMYWFZONON_ZJHSM_YFM_ H_T_AR 26 (1 REPETITION)\nSET_____=_._ 93__49_8_-))!_+'__FROM 01 UNTIL 15 APR 2026, THE UNFH_P_ZMZP_MG_FS_M_YY_MZCHOND_WYZ_YLZMYPJPY_DMZ_P_Z_YDFXB_C_F_M_M1_$_-_LAT 39 51'30.62''N LONG 018 42'44.00''E\nALL UNITS IN TRANSIT MUSTVPAENGMKO:/__/$:_8_8'_=_7_(_1(__JH_PMZ.\n__MGBPHPYJM_YZBMCFH_\nNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. Readable text says: Selliammyfmywfzonon zjhsm yfm h t ar 26 (1 repetition). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Selliammyfmywfzonon zjhsm yfm h t ar 26 (1 repetition)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 6,
    "heading": "2026-04-08 02:30:56 AREA: V",
    "published_at": "2026-04-08 02:30:56",
    "area": "V",
    "message_id": "",
    "text": "ZCZC VA6+_ __+ 30!._:_/.__026\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E B___Y_NNNN",
    "clean_text": "ZCZC VA6+_ __+ 30!._:_/.__026\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E B___Y_NNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOVER"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e b y nnnn",
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-04-08 02:28:16 AREA: E",
    "published_at": "2026-04-08 02:28:16",
    "area": "E",
    "message_id": "EA56",
    "text": "ZCZC EA56\nWZ 258/26\nPORTLAND.\nOFF CASQUETS TSS SOUTH-SOUTHWESTWARDS.\nCASQUETS LIGHT 49-43.3N 002-22.6W RACON INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC EA56\nWZ 258/26\nPORTLAND.\nOFF CASQUETS TSS SOUTH-SOUTHWESTWARDS.\nCASQUETS LIGHT 49-43.3N 002-22.6W RACON INOPERATIVE.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "PORTLAND"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text says: Casquets light 49-43.3n 002-22.6w racon inoperative.",
    "decoded_highlights": [
      "Casquets light 49-43.3n 002-22.6w racon inoperative",
      "Portland",
      "Off casquets tss south-southwestwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 9,
    "heading": "2026-04-08 02:24:57 AREA: U",
    "published_at": "2026-04-08 02:24:57",
    "area": "U",
    "message_id": "UA81",
    "text": "ZCZC UA81\n072320 UTC APR 26\n__+2+'_+.62!+9,9,_+*_'._6+__3_B___ZTIVPZ__AZ__LO_G_GWW_UTQ_ZE __IGPUL_CP\nV_\n\nL G__GVLD_ 01-0_-_7_!Z  _ Y H _AWPAWQAWWAW__WUAWIAWO AND 30 APR FROM 08.00LT TO 23.00LT, WILL BE CARRIED OUT A\nFIRING\nMILITAH_MXHF\nFHFPJMFMHDPMJKBKEKB__3-$____Q_FIRING RANGE, BOUNDED BY THE FOLLOWING POI_TSVC\n9.- 40 25'31''N - 18 15'30''E, B. - 40 30'20''XM\nM FM _JPJJ_V_N\nC. - 40 2_- 18 19'03''E, D. \n6MU_JYHJJGM_M FMU_JJGP_ON_P____YM_HJHHJJGM_I WWSWISSE_\nT=\n- 40 23'05''N - 18 23'18''E,\nG_ +__*_$6)\nSAILI_G, /2_$+__0._'_8,_ -$=:49_8_853_:=_0\n:\n\n=_7_ZCZC",
    "clean_text": "ZCZC UA81\n072320 UTC APR 26\n__+2+'_+.62!+9,9,_+*_'._6+__3_B___ZTIVPZ__AZ__LO_G_GWW_UTQ_ZE __IGPUL_CP\nV_\n\nL G__GVLD_ 01-0_-_7_!Z _ Y H _AWPAWQAWWAW__WUAWIAWO AND 30 APR FROM 08.00LT TO 23.00LT, WILL BE CARRIED OUT A\nFIRING\nMILITAH_MXHF\nFHFPJMFMHDPMJKBKEKB__3-$____Q_FIRING RANGE, BOUNDED BY THE FOLLOWING POI_TSVC\n9.- 40 25'31''N - 18 15'30''E, B. - 40 30'20''XM\nM FM _JPJJ_V_N\nC. - 40 2_- 18 19'03''E, D.\n6MU_JYHJJGM_M FMU_JJGP_ON_P____YM_HJHHJJGM_I WWSWISSE_\nT=\n- 40 23'05''N - 18 23'18''E,\nG_ +__*_$6)\nSAILI_G, /2_$+__0._'_8,_ -$=:49_8_853_:=_0\n:\n\n=_7_ZCZC",
    "display_region_heading": "Unresolved B1 code U",
    "display_region_label": "B1 code U",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code U. Readable text says: L g gvld 01-0 - 7 !z y h awpawqawwaw wuawiawo and 30 apr from 08.00lt to 23.00lt, will be carried out a. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "L g gvld 01-0 - 7 !z y h awpawqawwaw wuawiawo and 30 apr from 08.00lt to 23.00lt, will be carried out a",
      "Fhfpjmfmhdpmjkbkekb 3-$ q firing range, bounded by the following poi tsvc",
      "Militah mxhf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 10,
    "heading": "2026-04-08 02:24:14 AREA: U",
    "published_at": "2026-04-08 02:24:14",
    "area": "U",
    "message_id": "UA82",
    "text": "ZCZC UA82\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 148/26 MAR 24 (3 REPETITION)\nCENTRAL ADRIATIC SEA - PESCARA.\nLIGHTHOUSE OF PESCARA I.L. _871 (E231.35 IN POSITION:\nLAT 42 27.9'N - LONG 014 14._'E\nNOT WORKING.\n\nNNNN",
    "clean_text": "ZCZC UA82\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 148/26 MAR 24 (3 REPETITION)\nCENTRAL ADRIATIC SEA - PESCARA.\nLIGHTHOUSE OF PESCARA I.L. _871 (E231.35 IN POSITION:\nLAT 42 27.9'N - LONG 014 14._'E\nNOT WORKING.\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: Lighthouse of pescara i.l. 871 (e231.35 in position.",
    "decoded_highlights": [
      "Lighthouse of pescara i.l. 871 (e231.35 in position",
      "Coastal warning 148/26 mar 24 (3 repetition)",
      "Lat 42 27.9'n - long 014 14. 'e"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-08 02:21:54 AREA: U",
    "published_at": "2026-04-08 02:21:54",
    "area": "U",
    "message_id": "UA84",
    "text": "ZCZC UA84\n CU__MGCH_MYM\n_MONDOLFO RADIO\n\nCOASTAL WARNING NR. 173/26 MAR 26 (3 RELAY)\nADRIATIC SEA - VENEZIA - ALBARELLA ISLAND\nIN PSN:\n- 45 04.2N - 012 20.8E\nLIGHTHOUSE NR 4101=4_==.+_._+6=!_9,\n_!9,,88__\n77__+:+: 7-/83\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26=JAN __\n__4\n__4_358589,)\nSOUTHERN ADRIATIC SEA - BRINDISI.9\nFM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JULY AND AUGUST, WILL BE\nCARRIED OUT A MILITARY A_HF\nFTQNWITH SMALL WEAPONS IN TDPMYPONFM_YZ_HMZ_MNAE_FB_KB_J_G RANGE:\nA) 40 38' 40' - 18 01' 12''E, B) 40 39' 869''N - 18 03' 669''E9\nC) 40 39' 02'N - 18 04' 24''E, D) 40 37' 51''N - 18 04' 27''E,\nE) 40 36' 39''N - 18 03' 22''E, F) 40 38' 08''N - 18 01' 12''E.\nTRANSIT, ANCHORAANAND FISHING FRE PROHIBITED.\nNNNN",
    "clean_text": "ZCZC UA84\nCU__MGCH_MYM\n_MONDOLFO RADIO\n\nCOASTAL WARNING NR. 173/26 MAR 26 (3 RELAY)\nADRIATIC SEA - VENEZIA - ALBARELLA ISLAND\nIN PSN:\n- 45 04.2N - 012 20.8E\nLIGHTHOUSE NR 4101=4_==.+_._+6=!_9,\n_!9,,88__\n77__+:+: 7-/83\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING 001/26=JAN __\n__4\n__4_358589,)\nSOUTHERN ADRIATIC SEA - BRINDISI.9\nFM 01 JAN UNTIL 31 DEC 2026 FROM LOCAL TIME 06.00 TO 24.00,\nWITH EXCLUSION OF NATIONAL HOLIDAYS AND JULY AND AUGUST, WILL BE\nCARRIED OUT A MILITARY A_HF\nFTQNWITH SMALL WEAPONS IN TDPMYPONFM_YZ_HMZ_MNAE_FB_KB_J_G RANGE:\nA) 40 38' 40' - 18 01' 12''E, B) 40 39' 869''N - 18 03' 669''E9\nC) 40 39' 02'N - 18 04' 24''E, D) 40 37' 51''N - 18 04' 27''E,\nE) 40 36' 39''N - 18 03' 22''E, F) 40 38' 08''N - 18 01' 12''E.\nTRANSIT, ANCHORAANAND FISHING FRE PROHIBITED.\nNNNN",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MONDOLFO RADIO"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Lighthouse nr 4101 4 . . 6 ! 9. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lighthouse nr 4101 4 . . 6 ! 9",
      "Transit, anchoraanand fishing fre prohibited",
      "Coastal warning nr. 173/26 mar 26 (3 relay)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-04-08 02:21:02 AREA: U",
    "published_at": "2026-04-08 02:21:02",
    "area": "U",
    "message_id": "UA79",
    "text": "ZCZC UA79\n,CU__MG_H_MYM\n_DOLFO RADIO\n\nCOASTAL WARNING 172/26 APR 05 \nCENTRAL ADRIATIC SEA - PESCARA.\nFAILURE OF THE OPTICAL NAVI__FZMFWJMJ__BWO_ZMHDPMM_FZ\n_M_FORM IS REPORTED IN POSITION:\nLAT. 42 46' 02''N - LONG. 014 27' 50''_\nONGHYJFHHFM_PJJPSJM_SPJPM___TFBCBM_CHFZ__ONONGZFFF_\nZCZC",
    "clean_text": "ZCZC UA79\n,CU__MG_H_MYM\n_DOLFO RADIO\n\nCOASTAL WARNING 172/26 APR 05\nCENTRAL ADRIATIC SEA - PESCARA.\nFAILURE OF THE OPTICAL NAVI__FZMFWJMJ__BWO_ZMHDPMM_FZ\n_M_FORM IS REPORTED IN POSITION:\nLAT. 42 46' 02''N - LONG. 014 27' 50''_\nONGHYJFHHFM_PJJPSJM_SPJPM___TFBCBM_CHFZ__ONONGZFFF_\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"
    ],
    "display_region_heading": "Italy - Adriatic Sea and central Italian coast",
    "display_region_label": "Mondolfo, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Adriatic Sea and central Italian coast. Readable text says: Coastal warning 172/26 apr 05. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning 172/26 apr 05",
      "M form is reported in position",
      "Central adriatic sea - pescara"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-08 02:20:16 AREA: U",
    "published_at": "2026-04-08 02:20:16",
    "area": "U",
    "message_id": "UA80",
    "text": "ZCZC UA80\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 200/26 APR 05\nADRIATIC SEA - VENICE -\nDAY 05TH APR 2026 FROM 2000 UTC\nDUE TO LIMITED OPERATIONAL CAPABILITY INFORMATION SERVICE\nIS ONLY PROVIDED IN VENICE VTS\nALL TCAJFHF_MJ_F_JM_P_YPONONONNIII \nZCZC",
    "clean_text": "ZCZC UA80\n072320 UTC APR 26\nMONDOLFO RADIO\n\nCOASTAL WARNING NR. 200/26 APR 05\nADRIATIC SEA - VENICE -\nDAY 05TH APR 2026 FROM 2000 UTC\nDUE TO LIMITED OPERATIONAL CAPABILITY INFORMATION SERVICE\nIS ONLY PROVIDED IN VENICE VTS\nALL TCAJFHF_MJ_F_JM_P_YPONONONNIII\nZCZC",
    "resolved_station_name": "Mondolfo",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea and central Italian coast",
    "resolved_match_basis": "station-signature",
    "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.",
    "decoded_highlights": [
      "Due to limited operational capability information service",
      "Coastal warning nr. 200/26 apr 05",
      "Is only provided in venice vts"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-08 02:18:40 AREA: T",
    "published_at": "2026-04-08 02:18:40",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n_54 UTC JAN\nOOSTPWPYWFZM_MHCQZHB____WQURAEE___(___1_3/_B_POS 5127.375N 00222.30_\nUNMARKE_\n_IPPING IS REQ_ED NOT TO FISH NOR TO ANC__\nI_FMHDPM\nF_F_H_ONG_ZFFF____GZZJHP_\nBE EEZ\nPOSSIBLE EXPLOSIVE ON THE SEABED\nGFM_ZJM\nH__PEBUG_\nNG::_8E\nS_ING IS REQU_D NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\n\nNNNN",
    "clean_text": "ZCZC TA99\n_54 UTC JAN\nOOSTPWPYWFZM_MHCQZHB____WQURAEE___(___1_3/_B_POS 5127.375N 00222.30_\nUNMARKE_\n_IPPING IS REQ_ED NOT TO FISH NOR TO ANC__\nI_FMHDPM\nF_F_H_ONG_ZFFF____GZZJHP_\nBE EEZ\nPOSSIBLE EXPLOSIVE ON THE SEABED\nGFM_ZJM\nH__PEBUG_\nNG::_8E\nS_ING IS REQU_D NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\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": "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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "S ing is requ d not to anchor nor to fish in the vicinity",
      "Ipping is req ed not to fish nor to anc",
      "Possible explosive on the seabed"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-04-08 02:17:59 AREA: T",
    "published_at": "2026-04-08 02:17:59",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_ TA45\n0\n_\n7==75: '30 25\nOOSTENDERADIO MSI 311/25\nBE EEZ\nEXPLOSIVE _OSTON THE LINE BETWEEN POSITIZFM\nH_U__MPRN 003-05.47E \nAND 51-20.990N 003-8__5!3_09,_*$!_ ,95 59 -,:_94 ,94 59 !8'_ 8, 5_3 =8:8,856.\nNNNN",
    "clean_text": "ZCZ_ TA45\n0\n_\n7==75: '30 25\nOOSTENDERADIO MSI 311/25\nBE EEZ\nEXPLOSIVE _OSTON THE LINE BETWEEN POSITIZFM\nH_U__MPRN 003-05.47E\nAND 51-20.990N 003-8__5!3_09,_*$!_ ,95 59 -,:_94 ,94 59 !8'_ 8, 5_3 =8:8,856.\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. Readable text says: Explosive oston the line between positizfm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Explosive oston the line between positizfm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-04-08 02:14:51 AREA: T",
    "published_at": "2026-04-08 02:14:51",
    "area": "T",
    "message_id": "",
    "text": "ZCZC TA)7\n1_1730__TC MA_\nOOSTENDERADIO MSS 007/26\n_+9*_020_00)6:_\nCABLE OPERATIONS BY M/V MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWIM_ZZYWFHPJM_\n51-31.75N 002-31.13E\n51-20.82N 002-52.76E \n51-19.93N 003-09.75E\n51-19.93N 003-09.75E \n51-19.31N 003-08.04E\n51-20.06N 002-51.09E \n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIR_CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF CH 16 AND 65\nNNNN",
    "clean_text": "ZCZC TA)7\n1_1730__TC MA_\nOOSTENDERADIO MSS 007/26\n_+9*_020_00)6:_\nCABLE OPERATIONS BY M/V MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWIM_ZZYWFHPJM_\n51-31.75N 002-31.13E\n51-20.82N 002-52.76E\n51-19.93N 003-09.75E\n51-19.93N 003-09.75E\n51-19.31N 003-08.04E\n51-20.06N 002-51.09E\n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIR_CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF CH 16 AND 65\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. Readable text says: A ban on achoring and fishing in the entir corridor.",
    "decoded_highlights": [
      "A ban on achoring and fishing in the entir corridor",
      "Cable operations by m/v manu pekka and m/v duke",
      "Shipping requested to pass at a safe distance"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 20,
    "heading": "2026-04-08 02:12:55 AREA: T",
    "published_at": "2026-04-08 02:12:55",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_T\n_\n_291851 UTC MAR\nOOSTENDERADIO__ 134/26\nTSS-WESTHINDER\nM/V ST. CLEMENS\nANCHOR_DD CHAN LOSHMFM_ZJM\nH_UYB_G\nD_DZ_\nVXWP_VONNI_I\n   __U_27\n4_9_KB_UG_G):_1CB___AJ_AK____EI WYMIEY_38 23.047_, __ *_:__-_3_\n35_03..*_1__:-._($_5H_ZKZC_261002 UTC MAR \nOOSTENDE_AD_O MSI _PLYC_N TH_ SEABLWM_F_ING POSITIO_S\n1 17,$_2\n_002 _6,610E\nH51 17,281N 00_ 56,553E\n_AHI_PY___ZCZC",
    "clean_text": "ZCZC_T\n_\n_291851 UTC MAR\nOOSTENDERADIO__ 134/26\nTSS-WESTHINDER\nM/V ST. CLEMENS\nANCHOR_DD CHAN LOSHMFM_ZJM\nH_UYB_G\nD_DZ_\nVXWP_VONNI_I\n__U_27\n4_9_KB_UG_G):_1CB___AJ_AK____EI WYMIEY_38 23.047_, __ *_:__-_3_\n35_03..*_1__:-._($_5H_ZKZC_261002 UTC MAR\nOOSTENDE_AD_O MSI _PLYC_N TH_ SEABLWM_F_ING POSITIO_S\n1 17,$_2\n_002 _6,610E\nH51 17,281N 00_ 56,553E\n_AHI_PY___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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. Readable text says: Anchor dd chan loshmfm zjm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Anchor dd chan loshmfm zjm",
      "Oostenderadio 134/26",
      "Tss-westhinder"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-04-08 02:10:19 AREA: T",
    "published_at": "2026-04-08 02:10:19",
    "area": "T",
    "message_id": "TA02",
    "text": "ZCZC TA02\nCOASTAL WRNG NO 21/26\nSTRAIT ZF__UMQYN 00_-42.65E\nSHIP__N REQUESTED NOT TO ANCHOR NOR TZMFJDMFMMYKU/1__00 METER AROUND THIS OBJ\nIM\n_O\nNNNN",
    "clean_text": "ZCZC TA02\nCOASTAL WRNG NO 21/26\nSTRAIT ZF__UMQYN 00_-42.65E\nSHIP__N REQUESTED NOT TO ANCHOR NOR TZMFJDMFMMYKU/1__00 METER AROUND THIS OBJ\nIM\n_O\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ship n requested not to anchor nor tzmfjdmfmmyku/1 00 meter around this obj",
      "Coastal wrng no 21/26",
      "Strait zf umqyn 00 -42.65e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-08 02:06:59 AREA: S",
    "published_at": "2026-04-08 02:06:59",
    "area": "S",
    "message_id": "SE94",
    "text": "ZCZC SE94\n072300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nWEDNESDAY:\nWIND: SOUTHEAST 3 TO 4, INCREASING 4 TO 5.\nVISIBILITY/WEATHER: GOOD VISIBILITE_SEA: 1,5 METER.\n\nTHURSDAY:\nWIND: SOUTHEAST ABOUT 5, INCREASING ABZCHM_WESTERNM_YT LATER\nVEERING NORTHWEST.\nVISIBILITY/WPHDPY_MYFM_FH_M_Y_SEM_ZZ_M_FJFLFSFHJ\nSEA: NORTHERN PYHMF_YPJFM_PMGZPH_Y_ONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK_U\n_U__\n__ZCZC",
    "clean_text": "ZCZC SE94\n072300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nWEDNESDAY:\nWIND: SOUTHEAST 3 TO 4, INCREASING 4 TO 5.\nVISIBILITY/WEATHER: GOOD VISIBILITE_SEA: 1,5 METER.\n\nTHURSDAY:\nWIND: SOUTHEAST ABOUT 5, INCREASING ABZCHM_WESTERNM_YT LATER\nVEERING NORTHWEST.\nVISIBILITY/WPHDPY_MYFM_FH_M_Y_SEM_ZZ_M_FJFLFSFHJ\nSEA: NORTHERN PYHMF_YPJFM_PMGZPH_Y_ONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK_U\n_U__\n__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": [
      "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: good visibilite sea: 1,5 meter. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: good visibilite sea: 1,5 meter",
      "Weatherforecast for german bight",
      "Wind: southeast 3 to 4, increasing 4 to 5"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 31,
    "heading": "2026-04-08 02:00:51 AREA: S",
    "published_at": "2026-04-08 02:00:51",
    "area": "S",
    "message_id": "SA85",
    "text": "ZCZC SA85\nNCC-HAMBURG\n02E MG_H_MYM\n_NAV. WARN. NO. 196\nG_RMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1_.\nUXO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N 005-54,2EONGYPJHYF__IBKANXBEKS*_33_1/_!+*_SAFE BERTDMZ._ .__3,//P_U__ONNKKKKKKKKKKKKKKKKKKKKKVVVVVVVVVVVVVVV___AXA_MJ_FPONG__HAMBURG\n020420 UTC APR 26\nNAV. WARN. NO. 194\nGERMAN BF_NH\n01B_KL__OHQMEB_PERATIONS BY MV 'F__YZ_JEQPQPLO_QBQH_PHRQL_YZCWM_ZJ_D_)__ECEXLO$(__8____)4___0\n_ .-,93=4-_8)856 $748,_ 9034-589,',\nBERTH OF 2 NM REQUESTED_NN\n\n_ZCZC",
    "clean_text": "ZCZC SA85\nNCC-HAMBURG\n02E MG_H_MYM\n_NAV. WARN. NO. 196\nG_RMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1_.\nUXO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N 005-54,2EONGYPJHYF__IBKANXBEKS*_33_1/_!+*_SAFE BERTDMZ._ .__3,//P_U__ONNKKKKKKKKKKKKKKKKKKKKKVVVVVVVVVVVVVVV___AXA_MJ_FPONG__HAMBURG\n020420 UTC APR 26\nNAV. WARN. NO. 194\nGERMAN BF_NH\n01B_KL__OHQMEB_PERATIONS BY MV 'F__YZ_JEQPQPLO_QBQH_PHRQL_YZCWM_ZJ_D_)__ECEXLO$(__8____)4___0\n_ .-,93=4-_8)856 $748,_ 9034-589,',\nBERTH OF 2 NM REQUESTED_NN\n\n_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 says: Uxo survey by. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uxo survey by",
      "G rman bight. northwesterly owf 'bard offshore 1",
      "Mv 'ocean researcher', cs 'gdls' around position"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-04-08 02:00:15 AREA: S",
    "published_at": "2026-04-08 02:00:15",
    "area": "S",
    "message_id": "SA91",
    "text": "ZCZC SA91\n,_/__-._74_\n06_900 UTC APR 26\nNAV. WARN. NO. 203\nEAST_YS_MDPSF_ZSW_ 'HELGOLAND-O'  LIGHTBUOY  54-09N  \nP_CHPGPMHP_ARILY REMOVED.\nNNNN",
    "clean_text": "ZCZC SA91\n,_/__-._74_\n06_900 UTC APR 26\nNAV. WARN. NO. 203\nEAST_YS_MDPSF_ZSW_ 'HELGOLAND-O' LIGHTBUOY 54-09N\nP_CHPGPMHP_ARILY REMOVED.\nNNNN",
    "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: East ys mdpsf zsw 'helgoland-o' lightbuoy 54-09n. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "East ys mdpsf zsw 'helgoland-o' lightbuoy 54-09n",
      "P chpgpmhp arily removed",
      "Nav. warn. no. 203"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-04-08 01:58:08 AREA: E",
    "published_at": "2026-04-08 01:58:08",
    "area": "E",
    "message_id": "EB81",
    "text": "ZCZC EB81\nGALE WARNING TUESDAY 07 ASYF_M_ZROY\nGALE NOW CEASED\nNNONNKKKKKKKKKKKKKKKK_\n999999999999999999999999_+(_ZCZC",
    "clean_text": "ZCZC EB81\nGALE WARNING TUESDAY 07 ASYF_M_ZROY\nGALE NOW CEASED\nNNONNKKKKKKKKKKKKKKKK_\n999999999999999999999999_+(_ZCZC",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code E. Readable text says: Gale warning tuesday 07 asyf m zroy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warning tuesday 07 asyf m zroy",
      "Gale now ceased",
      "Nnonnkkkkkkkkkkkkkkkk"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-04-08 01:45:39 AREA: Q",
    "published_at": "2026-04-08 01:45:39",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\nMALIN HEADDRZOZONGYU_XM_T_EOMZ___KA___AE_WBK_Q_B_AKQD_ZRAK_NE, STAUS UNKNOWN\nMAY BE SUBMERGED\nPOSSIBLYMHMJDSSZKMIN$2_51_ 09'!5!+_._9,_0001 UTC MARCH 20-_\n \n_\n__BPEJMGM\n_TOMIOSW\nALL SHIPS REQUESTQWMHZM_PPMMJDY_MS_Z_ZCHMWMYP_ORT SIGHTINGS TO MALINHEAD COASTGUARD ON MF 2182KHZ OR CH16\n\nDTG: 30 1_6_.______3_2_ _:_-___3*.\n,,,,,,\n\n11_1__3-\n_37_\nZC_C R_LNZ_NSC_UHM_ H_MYMYJQJQIFYE__ZXV\nD_Q_PX_RQ PPSIN - 01-=\n _63**_0_9\n_,BEMOXPK__T_S_GXL_T_QNN_GZF. 41 20'30''N_U PQW TTSTP_SE,\n__*.341 24'57''NN_VC_MYFJPCJ_GP__A PQW OPSTTSSE.\nTRANSIT, ANCHORAG_ A_J F_JSFSFHPWI_LN_NP_ZFFFC\nZCZF RU_UA\nHPUWWTP UTC APR 26\n=4'._22'0.'-= ,4. 041/26 APR 06\n'_!,6_=__._3,8-..!3- _3_!49. 20:31 LT OI L 10 VHF/HFHYJFHFE_Q_ BEWARE\n\nNNNN",
    "clean_text": "ZCZC QA01\nMALIN HEADDRZOZONGYU_XM_T_EOMZ___KA___AE_WBK_Q_B_AKQD_ZRAK_NE, STAUS UNKNOWN\nMAY BE SUBMERGED\nPOSSIBLYMHMJDSSZKMIN$2_51_ 09'!5!+_._9,_0001 UTC MARCH 20-_\n\n_\n__BPEJMGM\n_TOMIOSW\nALL SHIPS REQUESTQWMHZM_PPMMJDY_MS_Z_ZCHMWMYP_ORT SIGHTINGS TO MALINHEAD COASTGUARD ON MF 2182KHZ OR CH16\n\nDTG: 30 1_6_.______3_2_ _:_-___3*.\n,,,,,,\n\n11_1__3-\n_37_\nZC_C R_LNZ_NSC_UHM_ H_MYMYJQJQIFYE__ZXV\nD_Q_PX_RQ PPSIN - 01-=\n_63**_0_9\n_,BEMOXPK__T_S_GXL_T_QNN_GZF. 41 20'30''N_U PQW TTSTP_SE,\n__*.341 24'57''NN_VC_MYFJPCJ_GP__A PQW OPSTTSSE.\nTRANSIT, ANCHORAG_ A_J F_JSFSFHPWI_LN_NP_ZFFFC\nZCZF RU_UA\nHPUWWTP UTC APR 26\n=4'._22'0.'-= ,4. 041/26 APR 06\n'_!,6_=__._3,8-..!3- _3_!49. 20:31 LT OI L 10 VHF/HFHYJFHFE_Q_ BEWARE\n\nNNNN",
    "resolved_station_name": "Malin Head",
    "resolved_country": "Ireland",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North-west approaches to Ireland",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "MALIN HEAD"
    ],
    "display_region_heading": "Ireland - North-west approaches to Ireland",
    "display_region_label": "Malin Head, Ireland",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Ireland - North-west approaches to Ireland. Readable text says: Transit, anchorag a j f jsfsfhpwi ln np zfffc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorag a j f jsfsfhpwi ln np zfffc",
      "All ships requestqwmhzm ppmmjdy ms z zchmwmyp ort sightings to malinhead coastguard on mf 2182khz or ch16",
      "May be submerged"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 35,
    "heading": "2026-04-08 01:44:11 AREA: Q",
    "published_at": "2026-04-08 01:44:11",
    "area": "Q",
    "message_id": "QB05",
    "text": "ZCZC QB05\nHF_DM_B_XKJBSQZ __O__FBVLGTAZ__C ON TUESDAY 07 APRIL 2026 BY_OH__MET OFFICE, EXETER, UNITED KIWZBM_ZYMHDPM_PYFZWM\nUMG_H_MZMHCPJWEM_CM__YFSMCHFSMIIIK\nUMG_H_MZM_PWPJWEM_FM__YF_M\nUUEONGJHZYBM_YF_ONGHM_WPPPTC, 56 NORTH 48 WEST 977 EXPEMHP_M\n_NORTH 30__.8+* .__:9._.__.:___ LOW 65 NORTH 28 WEST 976 LOSING ITS IDENTSH_MLEMJ_PM_FBP_BMGZYHDPYS_MZYMZYHDPJHPYSEM_FWJMYPMN!_._+.60/$.*_+6_.__6/0.\n_-5 58.3' 8, $3,.-4( '54-85 285_8, 100 MILES OF THE ICE EDGE THROUGHZCHONGONNIIF_ZCZC",
    "clean_text": "ZCZC QB05\nHF_DM_B_XKJBSQZ __O__FBVLGTAZ__C ON TUESDAY 07 APRIL 2026 BY_OH__MET OFFICE, EXETER, UNITED KIWZBM_ZYMHDPM_PYFZWM\nUMG_H_MZMHCPJWEM_CM__YFSMCHFSMIIIK\nUMG_H_MZM_PWPJWEM_FM__YF_M\nUUEONGJHZYBM_YF_ONGHM_WPPPTC, 56 NORTH 48 WEST 977 EXPEMHP_M\n_NORTH 30__.8+* .__:9._.__.:___ LOW 65 NORTH 28 WEST 976 LOSING ITS IDENTSH_MLEMJ_PM_FBP_BMGZYHDPYS_MZYMZYHDPJHPYSEM_FWJMYPMN!_._+.60/$.*_+6_.__6/0.\n_-5 58.3' 8, $3,.-4( '54-85 285_8, 100 MILES OF THE ICE EDGE THROUGHZCHONGONNIIF_ZCZC",
    "display_region_heading": "Unresolved B1 code Q",
    "display_region_label": "B1 code Q",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code Q. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "-5 58.3' 8, $3,.-4( '54-85 285 8, 100 miles of the ice edge throughzchongonniif zczc",
      "Hf dm b xkjbsqz o fbvlgtaz c on tuesday 07 april 2026 by oh met office, exeter, united kiwzbm zymhdpm pyfzwm",
      "Uueongjhzybm yf onghm wppptc, 56 north 48 west 977 expemhp m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 36,
    "heading": "2026-04-08 01:33:35 AREA: P",
    "published_at": "2026-04-08 01:33:35",
    "area": "P",
    "message_id": "PA29",
    "text": "ZCZC PA29\n070659 UTC APR 26\nMSI 109/26\nNO_THSEA\nSINKER PIPELINE UNCO_ERED ON SEABED\nBETWEEN 52-3 _ 004-34.6E AND 52-31.6N 004-35.7E\nDANGEROUS TO FISHERY\nNNNN",
    "clean_text": "ZCZC PA29\n070659 UTC APR 26\nMSI 109/26\nNO_THSEA\nSINKER PIPELINE UNCO_ERED ON SEABED\nBETWEEN 52-3 _ 004-34.6E AND 52-31.6N 004-35.7E\nDANGEROUS TO FISHERY\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 reports a pipeline-related hazard near 52-31.6N 004-35.7E with local restrictions for nearby traffic.",
    "decoded_highlights": [
      "Sinker pipeline unco ered on seabed",
      "Between 52-3 004-34.6e and 52-31.6n 004-35.7e",
      "Dangerous to fishery"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 37,
    "heading": "2026-04-08 01:31:22 AREA: P",
    "published_at": "2026-04-08 01:31:22",
    "area": "P",
    "message_id": "PA07",
    "text": "ZCZC PA07\n072101 _.HM\n__N\n_JF_G_QWXWY\nTSS TERSCHESSF_GERMAN BIGHT\nSOUTHWEST BOUND LANE\nMV WILSON CAEN C/S 8PRM\nREPORTED NOT UNDER COMMAND\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC PA07\n072101 _.HM\n__N\n_JF_G_QWXWY\nTSS TERSCHESSF_GERMAN BIGHT\nSOUTHWEST BOUND LANE\nMV WILSON CAEN C/S 8PRM\nREPORTED NOT UNDER COMMAND\nNAVIGATE WITH CAUTION\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: Tss terschessf german bight. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tss terschessf german bight",
      "Southwest bound lane",
      "Mv wilson caen c/s 8prm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-04-08 01:29:09 AREA: O",
    "published_at": "2026-04-08 01:29:09",
    "area": "O",
    "message_id": "OA36",
    "text": "ZCZC OA36\nNTM NO 86/26\n\nA BUOY IS ADRIFT IN VICINITY OF THE FOLLOWING HZJFHFZ_EUAQYN 010-3+_09,9,,888(_\nZCZC",
    "clean_text": "ZCZC OA36\nNTM NO 86/26\n\nA BUOY IS ADRIFT IN VICINITY OF THE FOLLOWING HZJFHFZ_EUAQYN 010-3+_09,9,,888(_\nZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: A buoy is adrift in vicinity of the following hzjfhfz euaqyn 010-3 09,9,,888(. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A buoy is adrift in vicinity of the following hzjfhfz euaqyn 010-3 09,9,,888("
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 41,
    "heading": "2026-04-08 01:26:51 AREA: O",
    "published_at": "2026-04-08 01:26:51",
    "area": "O",
    "message_id": "OA35",
    "text": "ZCZC OA35\nNTM NB_PL T_EMONGYPBZ_S_Z_ECK FROM IL BAJJA TA SANTA MARIJA, COMINO\n\nTHE PORTJMWME_TH__MWFYP_HZYHP_M_H_MZHF_PBKEEQBKUO_KRQB_ESSELS THAT THE WRECK AND OTHER DEBRCS AT IL-BAJJA TA SANTA MARIJA-COMINO IS BEING REMOVED.THIS WILL TAKE PLACE BETWEEN TUESDAY 7TH APRIL 2026 AND FRIDAY 10TH APRIL 2026.\n\nTHE _OYVM_FSSMLPM_YYFPWMZCHMDIVERS AND WLL BE ASSISTED BY\nTH_M\nPJJPSJMJPMP_PLAYED THE INTERNATIONAL CODE OF SIGNALS FLAF A.\n\nTHE CHHART POSN OF ZFM_MMHZMLMYP_EYAPQMQUUN 014-20.253E =_ZFHM_SO_PE _ZPGM\n_PMRTOE _VGZFDOS_JZZBQP_QBKEBCUB1,7__2($_____0.60_+_'.!*.)0!._66!02.+:_B_ABBQP_ TO ENTER THE AREA MENTIONED ABOUT.\n\nALL VESSELS ARE TO COMPLY WITH ANY INSTRUCTIONS GIVEN ON VHF CH12 OR _D\n _M_LEM_SSPHHM_HJMWMHZM_ZZPYHPM_FHDMHDPM_ZHY_HZYMZMJFHP_Z_OMONNICF_\nZCZC",
    "clean_text": "ZCZC OA35\nNTM NB_PL T_EMONGYPBZ_S_Z_ECK FROM IL BAJJA TA SANTA MARIJA, COMINO\n\nTHE PORTJMWME_TH__MWFYP_HZYHP_M_H_MZHF_PBKEEQBKUO_KRQB_ESSELS THAT THE WRECK AND OTHER DEBRCS AT IL-BAJJA TA SANTA MARIJA-COMINO IS BEING REMOVED.THIS WILL TAKE PLACE BETWEEN TUESDAY 7TH APRIL 2026 AND FRIDAY 10TH APRIL 2026.\n\nTHE _OYVM_FSSMLPM_YYFPWMZCHMDIVERS AND WLL BE ASSISTED BY\nTH_M\nPJJPSJMJPMP_PLAYED THE INTERNATIONAL CODE OF SIGNALS FLAF A.\n\nTHE CHHART POSN OF ZFM_MMHZMLMYP_EYAPQMQUUN 014-20.253E =_ZFHM_SO_PE _ZPGM\n_PMRTOE _VGZFDOS_JZZBQP_QBKEBCUB1,7__2($_____0.60_+_'.!*.)0!._66!02.+:_B_ABBQP_ TO ENTER THE AREA MENTIONED ABOUT.\n\nALL VESSELS ARE TO COMPLY WITH ANY INSTRUCTIONS GIVEN ON VHF CH12 OR _D\n_M_LEM_SSPHHM_HJMWMHZM_ZZPYHPM_FHDMHDPM_ZHY_HZYMZMJFHP_Z_OMONNICF_\nZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Ntm nb pl t emongypbz s z eck from il bajja ta santa marija, comino. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ntm nb pl t emongypbz s z eck from il bajja ta santa marija, comino",
      "The portjmwme th mwfyp hzyhp m h mzhf pbkeeqbkuo krqb essels that the wreck and other debrcs at il-bajja ta santa marija-comino is being removed.this will take place between tuesday 7th april 2026 and friday 10th april 2026",
      "The oyvm fssmlpm yyfpwmzchmdivers and wll be assisted by"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 42,
    "heading": "2026-04-08 01:24:43 AREA: O",
    "published_at": "2026-04-08 01:24:43",
    "area": "O",
    "message_id": "OA34",
    "text": "ZCZC OA34\nNTM NO 40/_/._6$+2+'!_$.*:\n03._!_$!._'_0*0._066!_+6!'.__:6*9,9,_5._YBFHHF_THE SURV__MFJMJ_DPWCSPWMHZMLP_F_BABDXQUKQBGBE_L_\nP\nYL_X__RXIC__XCEPTD TOCBQMCZ_SPHPWML_MJCWEM__GEIBKQONCGCPLOHDYDZWZSFHDMJCY\nPEMAFSSMCHFSFAPMMYP_ZH_S_MZPYHPWM\nP_DFSPMHZMYP_ZEUBQK_UKUB_KBKB_60_$748,_ 5_3 '74=36', THE SURVEY VESSEL SIMO (9HB6482) WILL BE RESTRICTED IN HER ABILITY TB__ANEUVER. VESSEL MASTERS OPPYHF_MFMHDPM\nF_F_H_MYPMYP_CPJHPWMHZM_PPBKBQK_BU1_(_B_T LEAST 100M WHEN IT IS SPOOTED.\n\nMASTERS AND OPERATORS OF VESSELS _E_SED KEEP A SHARP LOOK OUT AND NAVIGATE WITH CAUTION AT SAFEVJ_PP__HEY ARE TO ARE TO CZ_SEM_FHDMFJ_X_HFZJM_FPMLEM\nD._)=94 :$\n 3\n__0_94$_9-___\n (_/__)__8_8__8_8_+_0_:'_''__(_\n\nTHE SURVEY__FSSMLQM_ZC_HP_M_FHDFMHDPM_SHPJPMHPYYFHZYFSM_HPYJ_ \nNNNN",
    "clean_text": "ZCZC OA34\nNTM NO 40/_/._6$+2+'!_$.*:\n03._!_$!._'_0*0._066!_+6!'.__:6*9,9,_5._YBFHHF_THE SURV__MFJMJ_DPWCSPWMHZMLP_F_BABDXQUKQBGBE_L_\nP\nYL_X__RXIC__XCEPTD TOCBQMCZ_SPHPWML_MJCWEM__GEIBKQONCGCPLOHDYDZWZSFHDMJCY\nPEMAFSSMCHFSFAPMMYP_ZH_S_MZPYHPWM\nP_DFSPMHZMYP_ZEUBQK_UKUB_KBKB_60_$748,_ 5_3 '74=36', THE SURVEY VESSEL SIMO (9HB6482) WILL BE RESTRICTED IN HER ABILITY TB__ANEUVER. VESSEL MASTERS OPPYHF_MFMHDPM\nF_F_H_MYPMYP_CPJHPWMHZM_PPBKBQK_BU1_(_B_T LEAST 100M WHEN IT IS SPOOTED.\n\nMASTERS AND OPERATORS OF VESSELS _E_SED KEEP A SHARP LOOK OUT AND NAVIGATE WITH CAUTION AT SAFEVJ_PP__HEY ARE TO ARE TO CZ_SEM_FHDMFJ_X_HFZJM_FPMLEM\nD._)=94 :$\n3\n__0_94$_9-___\n(_/__)__8_8__8_8_+_0_:'_''__(_\n\nTHE SURVEY__FSSMLQM_ZC_HP_M_FHDFMHDPM_SHPJPMHPYYFHZYFSM_HPYJ_\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: P dfspmhzmyp zeubqk ukub kbkb 60 $748, 5 3 '74 36', the survey vessel simo (9hb6482) will be restricted in her ability tb aneuver. vessel masters oppyhf mfmhdpm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "P dfspmhzmyp zeubqk ukub kbkb 60 $748, 5 3 '74 36', the survey vessel simo (9hb6482) will be restricted in her ability tb aneuver. vessel masters oppyhf mfmhdpm",
      "The survey fssmlqm zc hp m fhdfmhdpm shpjpmhpyyfhzyfsm hpyj",
      "Masters and operators of vessels e sed keep a sharp look out and navigate with caution at safevj pp hey are to are to cz sem fhdmfj x hfzjm fpmlem"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-04-08 01:22:30 AREA: O",
    "published_at": "2026-04-08 01:22:30",
    "area": "O",
    "message_id": "OA31",
    "text": "ZCZC OA31\nCOASTAL WARNING NR 129/26 MAR 27\n\nJHYFHMZ____*__1_)_60\n)\n146__5)2_8___./V _5 *-,3 (5BXW3 SMZ_+6+ 6_S_G_FS_M_Z_C_HM_M_JMF_PSFPMFJ_PXN, USING A REMOTELY OPERATED VEHICLE, IN AREA BOUNDED BY FOLLOWFMF_FOQ_A) 37-01.100N 011-14_/ \n_) 37-12.800N 01  2__!,__9,/_'.0:7__6_:__.\n_ _UQUE\nD) 37-38.950N 012-32.133E\nE) 37-35.250N 012-31.95GP_N__JBNMKXXU_LBN/.:_:._,_) 37-00.600N 011- __ _,*$!1___3(1__(0_)(/9(__!+.2._,BKBU1_(_B__DBJQ_B_ 2NM\nNNNN",
    "clean_text": "ZCZC OA31\nCOASTAL WARNING NR 129/26 MAR 27\n\nJHYFHMZ____*__1_)_60\n)\n146__5)2_8___./V _5 *-,3 (5BXW3 SMZ_+6+ 6_S_G_FS_M_Z_C_HM_M_JMF_PSFPMFJ_PXN, USING A REMOTELY OPERATED VEHICLE, IN AREA BOUNDED BY FOLLOWFMF_FOQ_A) 37-01.100N 011-14_/\n_) 37-12.800N 01 2__!,__9,/_'.0:7__6_:__.\n_ _UQUE\nD) 37-38.950N 012-32.133E\nE) 37-35.250N 012-31.95GP_N__JBNMKXXU_LBN/.:_:._,_) 37-00.600N 011- __ _,*$!1___3(1__(0_)(/9(__!+.2._,BKBU1_(_B__DBJQ_B_ 2NM\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Coastal warning nr 129/26 mar 27. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning nr 129/26 mar 27"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 45,
    "heading": "2026-04-08 01:10:12 AREA: N",
    "published_at": "2026-04-08 01:10:12",
    "area": "N",
    "message_id": "NB87",
    "text": "ZCZC NB87\n,C_ YEMG_H_MYM\n_NORWEGIAN GALE WARNING NO. GX3_026\nISSUED BY NORWEGFPM_ZYPZYZSZF_KS\n_1$$/_,_,/)4::0__:_9KKBHMD___P_K_K,),_______-)3 8 FM WED 01UTC TO 11UTC, S SEV GALE 9 FM WED 11UTC\nSTO_A: S SEV GALE 9 FM WED 08UTC\nFROEYA BANK: S OCC GALE 8 FM WED 15UT_MHZMHDCM_UTC\nSTOREGGA-HSHPML_MH_M_YP_UF__BE73__\n____9 23$ 02UTC AND S GALE _=\n!. 23$ 16UTC\n\nNNNN",
    "clean_text": "ZCZC NB87\n,C_ YEMG_H_MYM\n_NORWEGIAN GALE WARNING NO. GX3_026\nISSUED BY NORWEGFPM_ZYPZYZSZF_KS\n_1$$/_,_,/)4::0__:_9KKBHMD___P_K_K,),_______-)3 8 FM WED 01UTC TO 11UTC, S SEV GALE 9 FM WED 11UTC\nSTO_A: S SEV GALE 9 FM WED 08UTC\nFROEYA BANK: S OCC GALE 8 FM WED 15UT_MHZMHDCM_UTC\nSTOREGGA-HSHPML_MH_M_YP_UF__BE73__\n____9 23$ 02UTC AND S GALE _=\n!. 23$ 16UTC\n\nNNNN",
    "resolved_station_name": "Orlandet",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Norwegian Sea and central Norwegian coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NORWEGIAN GALE WARNING"
    ],
    "display_region_heading": "Norway - Norwegian Sea and central Norwegian coast",
    "display_region_label": "Orlandet, Norway",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Norway - Norwegian Sea and central Norwegian coast. Readable text says: 1$$/ , ,/)4::0 : 9kkbhmd p k k,), -)3 8 fm wed 01utc to 11utc, s sev gale 9 fm wed 11utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1$$/ , ,/)4::0 : 9kkbhmd p k k,), -)3 8 fm wed 01utc to 11utc, s sev gale 9 fm wed 11utc",
      "Froeya bank: s occ gale 8 fm wed 15ut mhzmhdcm utc",
      "Norwegian gale warning no. gx3 026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 48,
    "heading": "2026-04-08 01:00:11 AREA: M",
    "published_at": "2026-04-08 01:00:11",
    "area": "M",
    "message_id": "MA25",
    "text": "ZCZC MA25\n051236 UH_MYM\n_DANISH NAV WARN 1_6\nDENMA_K. KATTEGAT. SKAGPMFPYMDYLZCY_ENTRANCE IN POS. 57-43.1MQPAETMTE\nCLOJP_M_ZYM_J_P_BO_GWONNIIIK_U_\nU_ZCZC",
    "clean_text": "ZCZC MA25\n051236 UH_MYM\n_DANISH NAV WARN 1_6\nDENMA_K. KATTEGAT. SKAGPMFPYMDYLZCY_ENTRANCE IN POS. 57-43.1MQPAETMTE\nCLOJP_M_ZYM_J_P_BO_GWONNIIIK_U_\nU_ZCZC",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code M. Readable text says: Denma k. kattegat. skagpmfpymdylzcy entrance in pos. 57-43.1mqpaetmte. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Denma k. kattegat. skagpmfpymdylzcy entrance in pos. 57-43.1mqpaetmte",
      "Danish nav warn 1 6"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 49,
    "heading": "2026-04-08 00:55:04 AREA: O",
    "published_at": "2026-04-08 00:55:04",
    "area": "O",
    "message_id": "OB31",
    "text": "ZCZC OB31\nGALE WARNING TUESDAY 07 APRIL 2140 UTC\n\nFAEROPJONGJZCHDPB_C_PBAKET_O_QN_R_LD_G_\n3$ '99,\nNNNN",
    "clean_text": "ZCZC OB31\nGALE WARNING TUESDAY 07 APRIL 2140 UTC\n\nFAEROPJONGJZCHDPB_C_PBAKET_O_QN_R_LD_G_\n3$ '99,\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code O. Readable text says: Gale warning tuesday 07 april 2140 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warning tuesday 07 april 2140 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-04-08 00:54:28 AREA: L",
    "published_at": "2026-04-08 00:54:28",
    "area": "L",
    "message_id": "",
    "text": "ZCZC LA(,_  7 UR .-4 26\nDANISH NAV WARN 1545_DENMARK. LIIM FIORD. LAGSTAR RENDE.\nDEPTHS 3.5M OBSERVED BETWPPON\nH_HC_CG_M\n_QPMIE\n56-57.9N 009-12.7E\nNNNN",
    "clean_text": "ZCZC LA(,_ 7 UR .-4 26\nDANISH NAV WARN 1545_DENMARK. LIIM FIORD. LAGSTAR RENDE.\nDEPTHS 3.5M OBSERVED BETWPPON\nH_HC_CG_M\n_QPMIE\n56-57.9N 009-12.7E\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code L. Readable text says: Danish nav warn 1545 denmark. liim fiord. lagstar rende. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Danish nav warn 1545 denmark. liim fiord. lagstar rende",
      "Depths 3.5m observed betwppon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 51,
    "heading": "2026-04-08 00:53:59 AREA: T",
    "published_at": "2026-04-08 00:53:59",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_MS_BKCELOXXMHKQ_YMYPWPON_UGBMWP_HDMZLJPY_PW_N\nH_HFBP_G__TMTQE\nN-SIDE OF CHANNEL\nNONNIIICUZCZC",
    "clean_text": "ZCZC_MS_BKCELOXXMHKQ_YMYPWPON_UGBMWP_HDMZLJPY_PW_N\nH_HFBP_G__TMTQE\nN-SIDE OF CHANNEL\nNONNIIICUZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: N-side of channel. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N-side of channel",
      "Nonniiicuzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 53,
    "heading": "2026-04-08 00:50:11 AREA: L",
    "published_at": "2026-04-08 00:50:11",
    "area": "L",
    "message_id": "LB23",
    "text": "ZCZC LB23\n072146 UTC APRV29__+670_!_._(',_((3)_3_-OHRNGPCGCP_EGIAN METEOROLOGICAL INSTITUTE 7.4.2026 AT 22 UTC\nSOUTH UTSIRE: SE GALE 8 FM THU 07UTC\nNORTH UTSIRE: S OCC GALE__C\n__BMUPW___PGVH_MH_M_I FM THU 02UTC\nVIKING: SE GALE 8 FM WED 14UTC\nEAST-TAMPEN: S O_XMS_M_FM__BMUP_\n__GV__MH_M\n_NG___HBQBPBBEC_NB_BH_NUOKIMDBX__Z_F+__771_7(-/-__*:__2028 UTC YM\n_NORWEGIAN NAV. WARFYM_ Y_T 28\n=._'1.6+03*_+00._,_06+0_.:_+:_19\n07202MGKH_MYM\n_NORWEGIAN NAV. WARNING 141/2026\n  /:$45 28\n  AREA FROEYSJOEEN N. GULEN\nTER_QKOUEB_KUGEB_GEW_ONQXCR_XKHLON_(_4O1_/_0\n2:-'6!:!!_-'__7_+:+: )_22\n071820 UTC APR 26\nNORWEGIAN GALE WARNING NO 240\n  OBRESTAD - KAYBZPEONKUQIKQB__P_MWM_HPYZZMJZCHDPJHMPYM_S_M_ZYXPM\nC_ONMMG_YBZPBKBHQ((23PG_ALX_K_XG_M_\nGSHDK_FUMK_SF_K_E_ __ZUVFD_Z_CSS_PMHHPYZPPBKBH_U _OM RTE_B_OJO_GG==__$.06._'_._+6/0.\n/9*(_EBEK_NB__PHL_UALZ_E_GCM_Z_A_LOEY\nFROM WEDPJW_MZ_EGEBQX_FROM WEDNESDAY AFTERNOON GALE FORCE 8.\n\nNNNN",
    "clean_text": "ZCZC LB23\n072146 UTC APRV29__+670_!_._(',_((3)_3_-OHRNGPCGCP_EGIAN METEOROLOGICAL INSTITUTE 7.4.2026 AT 22 UTC\nSOUTH UTSIRE: SE GALE 8 FM THU 07UTC\nNORTH UTSIRE: S OCC GALE__C\n__BMUPW___PGVH_MH_M_I FM THU 02UTC\nVIKING: SE GALE 8 FM WED 14UTC\nEAST-TAMPEN: S O_XMS_M_FM__BMUP_\n__GV__MH_M\n_NG___HBQBPBBEC_NB_BH_NUOKIMDBX__Z_F+__771_7(-/-__*:__2028 UTC YM\n_NORWEGIAN NAV. WARFYM_ Y_T 28\n=._'1.6+03*_+00._,_06+0_.:_+:_19\n07202MGKH_MYM\n_NORWEGIAN NAV. WARNING 141/2026\n/:$45 28\nAREA FROEYSJOEEN N. GULEN\nTER_QKOUEB_KUGEB_GEW_ONQXCR_XKHLON_(_4O1_/_0\n2:-'6!:!!_-'__7_+:+: )_22\n071820 UTC APR 26\nNORWEGIAN GALE WARNING NO 240\nOBRESTAD - KAYBZPEONKUQIKQB__P_MWM_HPYZZMJZCHDPJHMPYM_S_M_ZYXPM\nC_ONMMG_YBZPBKBHQ((23PG_ALX_K_XG_M_\nGSHDK_FUMK_SF_K_E_ __ZUVFD_Z_CSS_PMHHPYZPPBKBH_U _OM RTE_B_OJO_GG==__$.06._'_._+6/0.\n/9*(_EBEK_NB__PHL_UALZ_E_GCM_Z_A_LOEY\nFROM WEDPJW_MZ_EGEBQX_FROM WEDNESDAY AFTERNOON GALE FORCE 8.\n\nNNNN",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORWEGIAN NAV WARNING"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Norway - South-west Norwegian coast. Readable text says: From wedpjw mz egebqx from wednesday afternoon gale force 8. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "From wedpjw mz egebqx from wednesday afternoon gale force 8",
      "South utsire: se gale 8 fm thu 07utc",
      "North utsire: s occ gale c"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 54,
    "heading": "2026-04-08 00:41:47 AREA: K",
    "published_at": "2026-04-08 00:41:47",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LA__ MX__CT_KQMEKEZKAE_CABLE LAYINGVOPERATION\nG_PZBM_H_MGCHIIK_XMBY_\n_UNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED B__C\nI\nH_ _MFYG _\n_ UPONYHPBNH_\n50-13.61N 001-21.02E\n50-15.86N 001-19\n_E\n__ONA_BMS_G_PQAQUBUGP_N\nH_RN 001-04.77E\n50-20.11N 001-04.93E\n50-19.36N 001-12.:6E\n50-15.97N _F_QUQ__U_\n50-13.73N 0\n_7 _+7_09,_9,,__ 55_5__:KQOM_NAV CHE_BOUJG _UETUJOOVEC _JMGWJXDP_PJHPJHONG71__\n_ES\nAIS TRANSMITTER OUT OF SER\nF__M\nK_H_:'!_9,_)+:___)_11/3JJ_ZXEWMIP_ 000-57.80E\n_\nF_HPMIII_UFCAUTIO__F_ZVVVVVVVVVVVVVVVVEC\n_G__GUZCZC",
    "clean_text": "ZCZC KA28\nWIGHT - LA__ MX__CT_KQMEKEZKAE_CABLE LAYINGVOPERATION\nG_PZBM_H_MGCHIIK_XMBY_\n_UNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED B__C\nI\nH_ _MFYG _\n_ UPONYHPBNH_\n50-13.61N 001-21.02E\n50-15.86N 001-19\n_E\n__ONA_BMS_G_PQAQUBUGP_N\nH_RN 001-04.77E\n50-20.11N 001-04.93E\n50-19.36N 001-12.:6E\n50-15.97N _F_QUQ__U_\n50-13.73N 0\n_7 _+7_09,_9,,__ 55_5__:KQOM_NAV CHE_BOUJG _UETUJOOVEC _JMGWJXDP_PJHPJHONG71__\n_ES\nAIS TRANSMITTER OUT OF SER\nF__M\nK_H_:'!_9,_)+:___)_11/3JJ_ZXEWMIP_ 000-57.80E\n_\nF_HPMIII_UFCAUTIO__F_ZVVVVVVVVVVVVVVVVEC\n_G__GUZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code K. Readable text sets local operating restrictions near 50-13.61N 001-21.02E; 50-20.11N 001-04.93E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoring and diving within this area",
      "Wight - la mx ct kqmekezkae cable layingvoperation",
      "Until further notice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 55,
    "heading": "2026-04-08 00:41:13 AREA: K",
    "published_at": "2026-04-08 00:41:13",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 0_9/26\nDOVER - DST MAFXDPMPJH_FWJMZAVIGATIOM_D_PJONGSFIIK_DHMLCZEM_M_S__DHMCSFHONGL_ZEM_FY_MJCWON\nH _U BUG_PWAQUMV_VP_NGUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 0_9/26\nDOVER - DST MAFXDPMPJH_FWJMZAVIGATIOM_D_PJONGSFIIK_DHMLCZEM_M_S__DHMCSFHONGL_ZEM_FY_MJCWON\nH _U BUG_PWAQUMV_VP_NGUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV CHERBOURG",
      "CHERBOURG"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text says: Avurnav cherbourg 0 9/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Avurnav cherbourg 0 9/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 56,
    "heading": "2026-04-08 00:40:17 AREA: K",
    "published_at": "2026-04-08 00:40:17",
    "area": "K",
    "message_id": "KA40",
    "text": "ZCZC KA40\nAVURNAV CHERLZ_YM\n_T_EO_GUF_DHM_M_W\nF_ON_JP_FSMZ_PYHFZJO_INZM_3_39HE_1Z_FF_QQPUEP UTC APR 26 TO 111500 UTC APR 26\nAREA BOUNDED BY:\n_+_+_+___\n__ U_E_GUON\nII_ARPMUIN 000-00.25W\n49-32.3\n_ _BEUGU_N\nEZKNELXKHONG_:_2W\n_ACFNB_K_NB_AUTION\n2. CANCEL TOFJMBJM_ _P UTC APR 26\nNNFONNIII_ZCZC",
    "clean_text": "ZCZC KA40\nAVURNAV CHERLZ_YM\n_T_EO_GUF_DHM_M_W\nF_ON_JP_FSMZ_PYHFZJO_INZM_3_39HE_1Z_FF_QQPUEP UTC APR 26 TO 111500 UTC APR 26\nAREA BOUNDED BY:\n_+_+_+___\n__ U_E_GUON\nII_ARPMUIN 000-00.25W\n49-32.3\n_ _BEUGU_N\nEZKNELXKHONG_:_2W\n_ACFNB_K_NB_AUTION\n2. CANCEL TOFJMBJM_ _P UTC APR 26\nNNFONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code K. Readable text says: 2. cancel tofjmbjm p utc apr 26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel tofjmbjm p utc apr 26",
      "Avurnav cherlz ym",
      "Area bounded by"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-04-08 00:30:49 AREA: J",
    "published_at": "2026-04-08 00:30:49",
    "area": "J",
    "message_id": "JA23",
    "text": "ZCZC JA23\n021059 UTC J S\nBALTI_M\nM_Y_M\nUETUHONGJZCHDPY_MGJZCH_PBH__E_QLVUG_GGZYHDE_BSK_D_'___:'.+._!_(_7OEX__BA\nBR3(_(7_1KB_ALAND.\nGNSS, AIS, RADAR AND DGPS INTERFERENCE OBSERVED IN AREA.\nMARINERS ADVISED TO EXERCISE CAUT_ON\nGWML_MFYPYPWM_AE\n_K_X_OG_F_\nKJ)____7ZCZC",
    "clean_text": "ZCZC JA23\n021059 UTC J S\nBALTI_M\nM_Y_M\nUETUHONGJZCHDPY_MGJZCH_PBH__E_QLVUG_GGZYHDE_BSK_D_'___:'.+._!_(_7OEX__BA\nBR3(_(7_1KB_ALAND.\nGNSS, AIS, RADAR AND DGPS INTERFERENCE OBSERVED IN AREA.\nMARINERS ADVISED TO EXERCISE CAUT_ON\nGWML_MFYPYPWM_AE\n_K_X_OG_F_\nKJ)____7ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Gnss, ais, radar and dgps interference observed in area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gnss, ais, radar and dgps interference observed in area",
      "Mariners advised to exercise caut on"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-04-08 00:27:54 AREA: J",
    "published_at": "2026-04-08 00:27:54",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_Q_\n \n F E_CM75: .-4\nLITHUANIAN NAV WARN 018/26\nSOUTH-EI_TERN BS\nF_ON__ACHES TO PORT KLAIPEDA  ENTRANCE \nMAINTENANCE DREDGING\nMAINTENANCE DRED__IN PROGRESS IN THE SEAWAY CHANNEL, WITHIN AREA BOUNDED BY:\n55-43.8N 021-04.9=3\n55-43.7N 021-05.2E\n55-43.7N 021-05.2E\n55-43.6N 021-05.5E\n55-43.5N 021-04.4E\n55-43.7N 0-1-04.7'3\n55-43.8_..\n_ Y_FGM_M\nVESSELS _UB1UB_AVIGATE WITH CAUTION NEAR THE DREDGING WORKS AREA. VESSELS MUST PASS AT MINIMUM SAFE SPEED WHEN WOR_JMYPMFM_YZEEPP_PSJM_CJ_M_PPMWFJH_PMZ_MHMSPJHM\nP_MG_IKKBPHPYJM_YZBMHDPMWYPW_FM_PJJPSJMWBXQ_BADBASQDRM_DB_W4_(,/_EGLE_OR FURTHER INFORMATIONK\nG_Z__HM\nHW\n_O_G_XPSMSFHDCFM\nM_Y_M_KT)/25.\n _9,,888__ZCZC",
    "clean_text": "ZCZC JA_Q_\n\nF E_CM75: .-4\nLITHUANIAN NAV WARN 018/26\nSOUTH-EI_TERN BS\nF_ON__ACHES TO PORT KLAIPEDA ENTRANCE\nMAINTENANCE DREDGING\nMAINTENANCE DRED__IN PROGRESS IN THE SEAWAY CHANNEL, WITHIN AREA BOUNDED BY:\n55-43.8N 021-04.9=3\n55-43.7N 021-05.2E\n55-43.7N 021-05.2E\n55-43.6N 021-05.5E\n55-43.5N 021-04.4E\n55-43.7N 0-1-04.7'3\n55-43.8_..\n_ Y_FGM_M\nVESSELS _UB1UB_AVIGATE WITH CAUTION NEAR THE DREDGING WORKS AREA. VESSELS MUST PASS AT MINIMUM SAFE SPEED WHEN WOR_JMYPMFM_YZEEPP_PSJM_CJ_M_PPMWFJH_PMZ_MHMSPJHM\nP_MG_IKKBPHPYJM_YZBMHDPMWYPW_FM_PJJPSJMWBXQ_BADBASQDRM_DB_W4_(,/_EGLE_OR FURTHER INFORMATIONK\nG_Z__HM\nHW\n_O_G_XPSMSFHDCFM\nM_Y_M_KT)/25.\n_9,,888__ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: Vessels ub1ub avigate with caution near the dredging works area. vessels must pass at minimum safe speed when wor jmypmfm yzeepp psjm cj m ppmwfjh pmz mhmspjhm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vessels ub1ub avigate with caution near the dredging works area. vessels must pass at minimum safe speed when wor jmypmfm yzeepp psjm cj m ppmwfjh pmz mhmspjhm",
      "Maintenance dredging",
      "Maintenance dred in progress in the seaway channel, within area bounded by"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 62,
    "heading": "2026-04-08 00:24:49 AREA: J",
    "published_at": "2026-04-08 00:24:49",
    "area": "J",
    "message_id": "JA28",
    "text": "ZCZC JA28\n251815 UTC _AR\n\nKALINGRAD NAV WARN 052/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES L UH_SSJ__-*1____!4$_84'_6''*__-*_\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING BR-117\n5_-_4.00N 019-03.00E 55-_6\n__4'__=/_7_\n55-04.00N 020-15.00E 54-57.50N 020-06.00E\n54-57.50N_019-\n0E 54-50.00N 019-50.00E\n54-50.00N 019-25.00E\n_EL THIS _302200 UTC APR\nNNNN",
    "clean_text": "ZCZC JA28\n251815 UTC _AR\n\nKALINGRAD NAV WARN 052/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES L UH_SSJ__-*1____!4$_84'_6''*__-*_\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING BR-117\n5_-_4.00N 019-03.00E 55-_6\n__4'__=/_7_\n55-04.00N 020-15.00E 54-57.50N 020-06.00E\n54-57.50N_019-\n0E 54-50.00N 019-50.00E\n54-50.00N 019-25.00E\n_EL THIS _302200 UTC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Ships exercises l uh ssj - 1 !4$ 84' 6'' -. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ships exercises l uh ssj - 1 !4$ 84' 6'' -",
      "In area temporarily dangerous to shipping br-117",
      "Kalingrad nav warn 052/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 65,
    "heading": "2026-04-08 00:19:35 AREA: J",
    "published_at": "2026-04-08 00:19:35",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA60_,\n UU \nC APR\nPOLISH NAV WARN 072/26\nSOUT_GEOPHYSI_SM_ZYVJ\n___VESSEL RAMFORM VANGUARD / C61___'8: 311001861 \nIN ARPMLZCWUO_QB0,_++QB_  55-28_0:_.\n_04.15E \n55-26.60N 017-07.74E  55-7__:0_.\n_E \n55-25.71N 017-23.97E  55-27_1___.\n_28.23E \n55-30.17NV017-30.36E  55-36.70N 017-27.53E \n55-35.22N 017-22.80E  55-32.88N 01_-12.88E \n55-30.94N 017-04.66E \nWIDE BERTH REQUESTED AT LEAST 1.0 NM.\nNNNN",
    "clean_text": "ZCZC JA60_,\nUU\nC APR\nPOLISH NAV WARN 072/26\nSOUT_GEOPHYSI_SM_ZYVJ\n___VESSEL RAMFORM VANGUARD / C61___'8: 311001861\nIN ARPMLZCWUO_QB0,_++QB_ 55-28_0:_.\n_04.15E\n55-26.60N 017-07.74E 55-7__:0_.\n_E\n55-25.71N 017-23.97E 55-27_1___.\n_28.23E\n55-30.17NV017-30.36E 55-36.70N 017-27.53E\n55-35.22N 017-22.80E 55-32.88N 01_-12.88E\n55-30.94N 017-04.66E\nWIDE BERTH REQUESTED AT LEAST 1.0 NM.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: Wide berth requested at least 1.0 nm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wide berth requested at least 1.0 nm",
      "Polish nav warn 072/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 66,
    "heading": "2026-04-08 00:18:42 AREA: J",
    "published_at": "2026-04-08 00:18:42",
    "area": "J",
    "message_id": "JA45",
    "text": "ZCZC JA45\n021354 UTC A_YO_G_PYB\nKOBKKELBXAGH_Q_ESTERN BALTIC. MZYHDMZ_MWYJJPYM_ZRNFFZ_URVEY OPERATIONS BY MV 'FUGRO PIONEER /_X__T\nD_PJONGFMYPM_HYPP_HG_M\n_U_UE_UGP_N_HY_Y_N 012-40.5E AND 54-36.3N 012-44.2E\nYPJHYF_HP_M__C_PYLFSFH_MWCYF_MZPYHFZJ_BERTH OF 2000 M REQUESTED.\nNNNN",
    "clean_text": "ZCZC JA45\n021354 UTC A_YO_G_PYB\nKOBKKELBXAGH_Q_ESTERN BALTIC. MZYHDMZ_MWYJJPYM_ZRNFFZ_URVEY OPERATIONS BY MV 'FUGRO PIONEER /_X__T\nD_PJONGFMYPM_HYPP_HG_M\n_U_UE_UGP_N_HY_Y_N 012-40.5E AND 54-36.3N 012-44.2E\nYPJHYF_HP_M__C_PYLFSFH_MWCYF_MZPYHFZJ_BERTH OF 2000 M REQUESTED.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Kobkkelbxagh q estern baltic. mzyhdmz mwyjjpym zrnffz urvey operations by mv 'fugro pioneer / x t. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Kobkkelbxagh q estern baltic. mzyhdmz mwyjjpym zrnffz urvey operations by mv 'fugro pioneer / x t"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 68,
    "heading": "2026-04-08 00:16:57 AREA: J",
    "published_at": "2026-04-08 00:16:57",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_:_,__/.GB_LBD_\n_GERMANM\nM__YLONK4_:1+3'534, _-)58/_3-'5 9! (-$3546\n0_\n! =0-_-)2(_41\n36+__\n)1.41_)0,945_34, '594./MISA7',\nCOMMENCING IN POSITION 54-35,7N 012-33,8E\nVESSEL WILL BE CROSSING TSS ON POSITIOBM_HY_HK_)_/,:_7_60*_6!__0_.+_096)!'!__.2:6!_.+_IKATIONS.\nBERTH OF 500 METERS REQUESTED.\nCANCEL GERMAN NAV WARN 188/26\n_ONNONNIII_ZCZC",
    "clean_text": "ZCZC JA_:_,__/.GB_LBD_\n_GERMANM\nM__YLONK4_:1+3'534, _-)58/_3-'5 9! (-$3546\n0_\n! =0-_-)2(_41\n36+__\n)1.41_)0,945_34, '594./MISA7',\nCOMMENCING IN POSITION 54-35,7N 012-33,8E\nVESSEL WILL BE CROSSING TSS ON POSITIOBM_HY_HK_)_/,:_7_60*_6!__0_.+_096)!'!__.2:6!_.+_IKATIONS.\nBERTH OF 500 METERS REQUESTED.\nCANCEL GERMAN NAV WARN 188/26\n_ONNONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: Commencing in position 54-35,7n 012-33,8e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Commencing in position 54-35,7n 012-33,8e",
      "Berth of 500 meters requested",
      "Cancel german nav warn 188/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 69,
    "heading": "2026-04-08 00:16:42 AREA: J",
    "published_at": "2026-04-08 00:16:42",
    "area": "J",
    "message_id": "JA58",
    "text": "ZCZC JA58\n_0_1905 UTC APR\nCANCEL GERMAN NAV WARN 162/26\nNNNN",
    "clean_text": "ZCZC JA58\n_0_1905 UTC APR\nCANCEL GERMAN NAV WARN 162/26\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: Cancel german nav warn 162/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Cancel german nav warn 162/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 70,
    "heading": "2026-04-08 00:12:46 AREA: T",
    "published_at": "2026-04-08 00:12:46",
    "area": "T",
    "message_id": "",
    "text": "ZCZCNIU57\n\n__1__77_7\n_7_+:+: $_60\nFAROE ISLANDS\n072115UTC APR 26\nGALE WNG NO 313 FM FMO ISSUED 2045UTC\n\nYTRI: S 18 M/S\nMU_V__MGKM_FUGLOY: S _-\n_)-,$ 48$_3: S 18\n,_9,,9,((((==========================_ZCZC",
    "clean_text": "ZCZCNIU57\n\n__1__77_7\n_7_+:+: $_60\nFAROE ISLANDS\n072115UTC APR 26\nGALE WNG NO 313 FM FMO ISSUED 2045UTC\n\nYTRI: S 18 M/S\nMU_V__MGKM_FUGLOY: S _-\n_)-,$ 48$_3: S 18\n,_9,,9,((((==========================_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: Gale wng no 313 fm fmo issued 2045utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale wng no 313 fm fmo issued 2045utc",
      "Faroe islands"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 71,
    "heading": "2026-04-08 00:11:02 AREA: P",
    "published_at": "2026-04-08 00:11:02",
    "area": "P",
    "message_id": "PA03",
    "text": "ZCZC PA03\n072101 UTC APR 26\nTSS TERSCHELLING-GERMAN B_GHT\nSOUTHWEST BOUND LANE\nMV WILSON CAEN C/S 8PRM\nREPORTED NOT UNDER COMMAND\nNAVIGATE WITHM_CHFZONONNKKKKKKKKKKKKKKKKK_Y_TYXS_CIYE\nTC_P_UC_UJI_IJU___UU__QUKZCZC",
    "clean_text": "ZCZC PA03\n072101 UTC APR 26\nTSS TERSCHELLING-GERMAN B_GHT\nSOUTHWEST BOUND LANE\nMV WILSON CAEN C/S 8PRM\nREPORTED NOT UNDER COMMAND\nNAVIGATE WITHM_CHFZONONNKKKKKKKKKKKKKKKKK_Y_TYXS_CIYE\nTC_P_UC_UJI_IJU___UU__QUKZCZC",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TERSCHELLING"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. Readable text says: Navigate withm chfzononnkkkkkkkkkkkkkkkkk y tyxs ciye. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Navigate withm chfzononnkkkkkkkkkkkkkkkkk y tyxs ciye",
      "Tss terschelling-german b ght",
      "Southwest bound lane"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 72,
    "heading": "2026-04-08 00:07:51 AREA: G",
    "published_at": "2026-04-08 00:07:51",
    "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.8 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.8 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.8 off air",
      "Mrcc humber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 73,
    "heading": "2026-04-08 00:07:27 AREA: G",
    "published_at": "2026-04-08 00:07:27",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \n/.!94ROQNEB_,_\n3___'((70QBQG_BTOMYN 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\n/.!94ROQNEB_,_\n3___'((70QBQG_BTOMYN 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": 74,
    "heading": "2026-04-08 00:07:00 AREA: G",
    "published_at": "2026-04-08 00:07:00",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FAR_.\nTURBINE B10 55-06.8N 001-23.6_MCSFHMWM+_.*!_'.!+_06_!_0_9+!!!_ZCZC",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FAR_.\nTURBINE B10 55-06.8N 001-23.6_MCSFHMWM+_.*!_'.!+_06_!_0_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 b10 55-06.8n 001-23.6 mcsfhmwm . ! '.! 06 ! 0 9 !!! zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine b10 55-06.8n 001-23.6 mcsfhmwm . ! '.! 06 ! 0 9 !!! zczc",
      "Blyth offshore demonstrator wind far"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 75,
    "heading": "2026-04-08 00:06:28 AREA: G",
    "published_at": "2026-04-08 00:06:28",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBELG_ O GSP___QB__I_B_AED 53-03.6N 002-12_3_0\n._:'!_.2.''._!2*.!+_06(__,LB_M CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBELG_ O GSP___QB__I_B_AED 53-03.6N 002-12_3_0\n._:'!_.2.''._!2*.!+_06(__,LB_M CANCEL WZ 100/26 (GA52).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. 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": 76,
    "heading": "2026-04-08 00:05:26 AREA: G",
    "published_at": "2026-04-08 00:05:26",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53_1.9N 002-_7__ _0\n._+_.*!_'_!)-_C+_7_+_7+_:3) 2+ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53_1.9N 002-_7__ _0\n._+_.*!_'_!)-_C+_7_+_7+_:3) 2+ 104/26 (GA54).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Bessemer gas field. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bessemer gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 77,
    "heading": "2026-04-08 00:05:01 AREA: G",
    "published_at": "2026-04-08 00:05:01",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARVM__P_PN 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARVM__P_PN 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 southwarvm p pn 002-05.8e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform southwarvm p pn 002-05.8e unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 78,
    "heading": "2026-04-08 00:04:26 AREA: G",
    "published_at": "2026-04-08 00:04:26",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA\n_MT___M__IPIMQN 002-09.5E. \nB. E5 54-51.5N 002-20.7E. \n2. CANCEL WZ 95/26 (GA50). \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA\n_MT___M__IPIMQN 002-09.5E.\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (GA50).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOGGER",
      "SOFIA OFFSHORE WIND FARM"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. buoys unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. buoys unlit",
      "Sofia offshore wind farm",
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 79,
    "heading": "2026-04-08 00:03:50 AREA: G",
    "published_at": "2026-04-08 00:03:50",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nFORTH. \nNEART NA GAOITHE WINDFARM. \n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE. \n2. CANCEL WZ 130/26 (GA73). \nNNNN",
    "clean_text": "ZCZC GA18\nWZ 243/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 130/26 (GA73).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-14.3N 002-08.6W; 56-12.3N 002-09.8W.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "Neart na gaoithe windfarm",
      "2. cancel wz 130/26 (ga73)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 80,
    "heading": "2026-04-08 00:03:21 AREA: G",
    "published_at": "2026-04-08 00:03:21",
    "area": "G",
    "message_id": "GA25",
    "text": "ZCZC GA25\nWA \n_H_TWY \nXVIKING. \nBERYL OIL FIELD. \n1. BERYL SPM3 _):+3.__+_0_, 001-33.5E TEMPORARILY REMOVED.._ \n____//0'._-.\n_6_5_3.=__\n!7'_.9,_9,,8887_ZCZC",
    "clean_text": "ZCZC GA25\nWA\n_H_TWY\nXVIKING.\nBERYL OIL FIELD.\n1. BERYL SPM3 _):+3.__+_0_, 001-33.5E TEMPORARILY REMOVED.._\n____//0'._-.\n_6_5_3.=__\n!7'_.9,_9,,8887_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": [
      "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 oil field. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Beryl oil field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 81,
    "heading": "2026-04-08 00:00:16 AREA: G",
    "published_at": "2026-04-08 00:00:16",
    "area": "G",
    "message_id": "GE29",
    "text": "ZCZC GE29\nISSUED BY THE MET OFFICE AT 2100 ON TUE 07 APR\n\n\nGALE WARNINGS: NONE\n\nTHE GENERALMJFHCHFZMHM_FW__ONGSZUM_FHAYZEM\n _HM_P_RAFALGAR 1007 BY MIDDAY TOMORROW. HIGH GERMAN BIGHT 1030 DFJJF_HK_MLEMJ_PM_F_PONON_HR FORECASTS\n G\nF__ON_J_MPMGZYM_YMGHM_FYJHMIIIKMCHJFYP_MGZHDPY_FJPM_HMGHZM_C_G_PY__JMS_M_FMGSHRBHP_DBARB_UOK_B_31__5_/BHABW_FFKISE MOD OR ROUGH. RAIN LTR. GOOD, OCNL MOD LTR\n\n_ZYHFPJONG_YL__TO 4 AT FIRST IN S UTSIRE__MGZHDPY_FJPMJMZYMQNBEBH_YM SLT OR MOD IN S UTSIRE, MOD OR ROUGH IN FORTIES. SHWRS LTR. GZZWONONG_YZBY_B_AE_WODQOI_EE_R\nXRO_EBQNBEBH_YN BECMG VRB 2 TO 4 LTR EXCEPT IN DOGGER. SLT OR MOD, OCNL ROUGJOC__MFM_YZBYH_MWM_ZY_D_SHWRS LTR. GOOD\n\nHUMBER THAMESONGPMZYMJPBBH)28+3_0_*__:+_7)'_81_._$_0*\n_._!___99$\n9\n__3_1*__!(_*.+6.*_5 TO__,___06__*.'_._!._'_6.!._03_,0BHEAXEWBARBBEQBE_XRWL_H_N_R_LAUBAEBE_XEF_ IN J_M_FYMFJSP_OCCASIONAL RAIN. GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HZCYJ_SEV GALES EXP IN VIKING. RIJ_MZ.'(',1___-3_QBKUB_K3_1*,BHQDEEBKGUQB___7-006_8)$6_9! '54_ 28,$' 8, -)) 95$06.60(___9,,888__ZCZC",
    "clean_text": "ZCZC GE29\nISSUED BY THE MET OFFICE AT 2100 ON TUE 07 APR\n\nGALE WARNINGS: NONE\n\nTHE GENERALMJFHCHFZMHM_FW__ONGSZUM_FHAYZEM\n_HM_P_RAFALGAR 1007 BY MIDDAY TOMORROW. HIGH GERMAN BIGHT 1030 DFJJF_HK_MLEMJ_PM_F_PONON_HR FORECASTS\nG\nF__ON_J_MPMGZYM_YMGHM_FYJHMIIIKMCHJFYP_MGZHDPY_FJPM_HMGHZM_C_G_PY__JMS_M_FMGSHRBHP_DBARB_UOK_B_31__5_/BHABW_FFKISE MOD OR ROUGH. RAIN LTR. GOOD, OCNL MOD LTR\n\n_ZYHFPJONG_YL__TO 4 AT FIRST IN S UTSIRE__MGZHDPY_FJPMJMZYMQNBEBH_YM SLT OR MOD IN S UTSIRE, MOD OR ROUGH IN FORTIES. SHWRS LTR. GZZWONONG_YZBY_B_AE_WODQOI_EE_R\nXRO_EBQNBEBH_YN BECMG VRB 2 TO 4 LTR EXCEPT IN DOGGER. SLT OR MOD, OCNL ROUGJOC__MFM_YZBYH_MWM_ZY_D_SHWRS LTR. GOOD\n\nHUMBER THAMESONGPMZYMJPBBH)28+3_0_*__:+_7)'_81_._$_0*\n_._!___99$\n9\n__3_1*__!(_*.+6.*_5 TO__,___06__*.'_._!._'_6.!._03_,0BHEAXEWBARBBEQBE_XRWL_H_N_R_LAUBAEBE_XEF_ IN J_M_FYMFJSP_OCCASIONAL RAIN. GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HZCYJ_SEV GALES EXP IN VIKING. RIJ_MZ.'(',1___-3_QBKUB_K3_1*,BHQDEEBKGUQB___7-006_8)$6_9! '54_ 28,$' 8, -)) 95$06.60(___9,,888__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",
      "DOGGER"
    ],
    "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": [
      "Outlook flw 24 hzcyj sev gales exp in viking. rij mz.'(',1 -3 qbkub k3 1 ,bhqdeebkguqb 7-006 8)$6 9! '54 28,$' 8, -)) 95$06.60( 9,,888 zczc",
      "Gale warnings: none",
      "Issued by the met office at 2100 on tue 07 apr"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-04-07 23:55:15 AREA: F",
    "published_at": "2026-04-07 23:55:15",
    "area": "F",
    "message_id": "FA26",
    "text": "ZCZC FA26\n05(40_.___/._0)9,'__!.\n._6_.\n__TU_O\n CPHYSMLSHFX_VIAN WT1__.9,_2:0._+.!_0./+2!_!+*._3.)_+_, 285_$4-2,.\nNAVIGATE W_H_M_CHFZ_\nNNNN",
    "clean_text": "ZCZC FA26\n05(40_.___/._0)9,'__!.\n._6_.\n__TU_O\nCPHYSMLSHFX_VIAN WT1__.9,_2:0._+.!_0./+2!_!+*._3.)_+_, 285_$4-2,.\nNAVIGATE W_H_M_CHFZ_\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. 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": 6,
    "heading": "2026-04-07 23:53:43 AREA: F",
    "published_at": "2026-04-07 23:53:43",
    "area": "F",
    "message_id": "FA02",
    "text": "ZCZC FA02\n251838 _/._6_,$0_06*8.33_)(__(:3)_3__(1_*_06__(+! 9! !8,)-,$\n'_80' 3/34:8'3' 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING\n \nHZHP_YPGM\nD_ H_PHGPM_HZHP_YPGM\nAPOMYEE\n59-86.43N 027-09.63E 59-46.43N 027-05.35E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "clean_text": "ZCZC FA02\n251838 _/._6_,$0_06*8.33_)(__(:3)_3__(1_*_06__(+! 9! !8,)-,$\n'_80' 3/34:8'3' 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TEMPORARILY DANGEROUS TO SHIPPING\n\nHZHP_YPGM\nD_ H_PHGPM_HZHP_YPGM\nAPOMYEE\n59-86.43N 027-09.63E 59-46.43N 027-05.35E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. Readable text says: In area temporarily dangerous to shipping. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "In area temporarily dangerous to shipping",
      "Hzhp ypgm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 10,
    "heading": "2026-04-07 23:50:19 AREA: F",
    "published_at": "2026-04-07 23:50:19",
    "area": "F",
    "message_id": "FB07",
    "text": "ZCZC FB07\n071507 UTC APR\n_AHF_MJ_CB_OKKEGEQZZ_G_PLQ_P_VMLSHFX_NW-N 147:._S. TUESDAY EVENING DECR.\nNORTHERN BALTIC: N-NW 14-17 M/S. TUESDAY EVENING DECR.\nNNNN",
    "clean_text": "ZCZC FB07\n071507 UTC APR\n_AHF_MJ_CB_OKKEGEQZZ_G_PLQ_P_VMLSHFX_NW-N 147:._S. TUESDAY EVENING DECR.\nNORTHERN BALTIC: N-NW 14-17 M/S. TUESDAY EVENING DECR.\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code F. Readable text says: Northern baltic: n-nw 14-17 m/s. tuesday evening decr. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Northern baltic: n-nw 14-17 m/s. tuesday evening decr"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-07 23:46:54 AREA: E",
    "published_at": "2026-04-07 23:46:54",
    "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": 12,
    "heading": "2026-04-07 23:46:33 AREA: E",
    "published_at": "2026-04-07 23:46:33",
    "area": "E",
    "message_id": "EA22",
    "text": "ZCZC EA22\nWZ 185/26 \nWIGHT. \nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL_INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC EA22\nWZ 185/26\nWIGHT.\nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL_INOPERATIVE.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "NEEDLES"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Needles light 50-39.7n 001-35.5w fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-07 23:46:13 AREA: E",
    "published_at": "2026-04-07 23:46:13",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\nWZV_QOWXWY \nGSCWE_\nLAVERNOCK SPIT BUOY 51_1____\n_10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC EA27\nWZV_QOWXWY\nGSCWE_\nLAVERNOCK SPIT BUOY 51_1____\n_10.8W UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: Lavernock spit buoy 51 1. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lavernock spit buoy 51 1",
      "Wzv qowxwy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-07 23:45:48 AREA: E",
    "published_at": "2026-04-07 23:45:48",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E_ AIR. 9,_9,,888_ZCZC",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E_ AIR. 9,_9,,888_ZCZC",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e air. 9, 9,,888 zczc",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 15,
    "heading": "2026-04-07 23:45:24 AREA: E",
    "published_at": "2026-04-07 23:45:24",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTZ CARDINAL BUOY 50-01.2N 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTZ CARDINAL BUOY 50-01.2N 005-40.4W UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: Soutz cardinal buoy 50-01.2n 005-40.4w unlit.",
    "decoded_highlights": [
      "Soutz cardinal buoy 50-01.2n 005-40.4w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 16,
    "heading": "2026-04-07 23:44:55 AREA: E",
    "published_at": "2026-04-07 23:44:55",
    "area": "E",
    "message_id": "EA49",
    "text": "ZCZC EA49\n272048Z MAR 2026 \nEA49 \nWZ 240/26 \nFASTNET. \nBLACKBALL LEDGE SOUTHEASTWARDS. \nEAST CARDINAL BUOY 51-55.___.\n_48.5W UNLIT. \n\nNNNN",
    "clean_text": "ZCZC EA49\n272048Z MAR 2026\nEA49\nWZ 240/26\nFASTNET.\nBLACKBALL LEDGE SOUTHEASTWARDS.\nEAST CARDINAL BUOY 51-55.___.\n_48.5W UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: East cardinal buoy 51-55.",
    "decoded_highlights": [
      "East cardinal buoy 51-55",
      "Blackball ledge southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 17,
    "heading": "2026-04-07 23:44:31 AREA: E",
    "published_at": "2026-04-07 23:44:31",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EA_69,__-.\n7_ 5_3.9___*_80__!.*+:_$_6_*_\nCONINGBEG BUOY 52-03.2N 006-38.6W OFF STATION.\nNNNN",
    "clean_text": "ZCZC EA_69,__-.\n7_ 5_3.9___*_80__!.*+:_$_6_*_\nCONINGBEG BUOY 52-03.2N 006-38.6W OFF STATION.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code E. Readable text says: Coningbeg buoy 52-03.2n 006-38.6w off station. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coningbeg buoy 52-03.2n 006-38.6w off station"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-04-07 23:44:02 AREA: E",
    "published_at": "2026-04-07 23:44:02",
    "area": "E",
    "message_id": "EB80",
    "text": "ZCZC EB80\nNITONRADIO\nGALE WARNING_TUESDAY 07 APRIL 1546 UTC\n\nFITZROY\nSE_PY_M_S_M_Z_E 9 BACKING NORTHER_UBU_EKQ3_3(_,___35,___,$_9,,888__ZCZC",
    "clean_text": "ZCZC EB80\nNITONRADIO\nGALE WARNING_TUESDAY 07 APRIL 1546 UTC\n\nFITZROY\nSE_PY_M_S_M_Z_E 9 BACKING NORTHER_UBU_EKQ3_3(_,___35,___,$_9,,888__ZCZC",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NITON"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for United Kingdom - English Channel and western approaches. Readable text says: Gale warning tuesday 07 april 1546 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warning tuesday 07 april 1546 utc",
      "Nitonradio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-04-07 23:40:16 AREA: E",
    "published_at": "2026-04-07 23:40:16",
    "area": "E",
    "message_id": "EE10",
    "text": "ZCZC EE10\nFJJCPWML_MHDPM_PH_Z_!/0._._ +MVZMHCPM_APR\n\n\nGALE WARNINGS_NGIII_ GENEYSMJFHCHFZMHM_FW__ONGSZUM_FHAYZEM\n __9_,__-)_/9,..9__1_8__!=_.94492. HIGH GERMAN BIGHT 1030 DISSIPATING BY SAME TIME\n\n_AYGDYM_ZYP_JHONONGHD_PJONGPMZYMJPM_PMGHZM\nH_MG_IIKMZYM_ZWMFMDCLNEBHQAA_WBAEB_P____S__ I_D _ROZ_AEALG_FCLG_T PORTLAND PLYMOUTHONGIII_E TO , BECMG VYL__TO 6_._*_++_$.+6.*'_.!.2+_06\n._.+6._+2.!.(!__'2_.__+8_8(6.6+:32_)___1)-._'_8$ _4OZ__ZBKQ_QH_MZYMJPM_PM_HDO__E_NRO_EHOK_RM ROUGH, BECMG MOD LTR IN FAR E. SHWRS. GOOD\n\nS FITZROY\nCYCLONIC BECMG NE, 4 TO 6, BUT 7 TO SEV GALE 9 AT FIYJHMFM_Y__BECMG VRB 3 OR LESS IN E. ROUGH OR V_YEMY_CDN._-:$_2_32_($_(!=(\n_1_____(390(OH__EOR_XEWBJDEBH_UEQBQ_KRPBHR_ONONGM_FHAYZQM_AJZ_B_EBF_E, BACK SW LTR IN FAR NW FITZROY AND FAR W SOLE, 3 HZM_HMGZ_S__AT FIRST IN W. VERY ROUGH A\nM_FYJHMFM_OTHERWISE ROUGH._+_'._+2.'_6_9::-'89,-) 4-8,, FOG PATCHES. MOD OR GOOD, OCNL VERY POOR\n\nLUNDY FASTNET\nSE 4 OR 5 AT FIRST IN IRISH SEA, OTHERWISE VRB 2 TO 4. IN IRISH SEA, SMZZHDMZYMJSHMZ_SM_ZWMHMWFY_H_MGPSJP_DP_P_MG_ZWMZYMYZCD_MGLPX_LT OPM_ZWMSIII_M OCCASIONAL DRIZZLE AND FOG PATCHES LTR. MOD OR GOOD, OCNL VERY POOR\n\nOUTLOOK FLW 24 HOURS:\nSTRG WINDS EXP IN ALL AREAS EXCEPT IN THAMES AND DOVER WHERE THERE IS JUST A RIJ_MZ.*_6._ 8,$'\nNNNN",
    "clean_text": "ZCZC EE10\nFJJCPWML_MHDPM_PH_Z_!/0._._ +MVZMHCPM_APR\n\nGALE WARNINGS_NGIII_ GENEYSMJFHCHFZMHM_FW__ONGSZUM_FHAYZEM\n__9_,__-)_/9,..9__1_8__!=_.94492. HIGH GERMAN BIGHT 1030 DISSIPATING BY SAME TIME\n\n_AYGDYM_ZYP_JHONONGHD_PJONGPMZYMJPM_PMGHZM\nH_MG_IIKMZYM_ZWMFMDCLNEBHQAA_WBAEB_P____S__ I_D _ROZ_AEALG_FCLG_T PORTLAND PLYMOUTHONGIII_E TO , BECMG VYL__TO 6_._*_++_$.+6.*'_.!.2+_06\n._.+6._+2.!.(!__'2_.__+8_8(6.6+:32_)___1)-._'_8$ _4OZ__ZBKQ_QH_MZYMJPM_PM_HDO__E_NRO_EHOK_RM ROUGH, BECMG MOD LTR IN FAR E. SHWRS. GOOD\n\nS FITZROY\nCYCLONIC BECMG NE, 4 TO 6, BUT 7 TO SEV GALE 9 AT FIYJHMFM_Y__BECMG VRB 3 OR LESS IN E. ROUGH OR V_YEMY_CDN._-:$_2_32_($_(!=(\n_1_____(390(OH__EOR_XEWBJDEBH_UEQBQ_KRPBHR_ONONGM_FHAYZQM_AJZ_B_EBF_E, BACK SW LTR IN FAR NW FITZROY AND FAR W SOLE, 3 HZM_HMGZ_S__AT FIRST IN W. VERY ROUGH A\nM_FYJHMFM_OTHERWISE ROUGH._+_'._+2.'_6_9::-'89,-) 4-8,, FOG PATCHES. MOD OR GOOD, OCNL VERY POOR\n\nLUNDY FASTNET\nSE 4 OR 5 AT FIRST IN IRISH SEA, OTHERWISE VRB 2 TO 4. IN IRISH SEA, SMZZHDMZYMJSHMZ_SM_ZWMHMWFY_H_MGPSJP_DP_P_MG_ZWMZYMYZCD_MGLPX_LT OPM_ZWMSIII_M OCCASIONAL DRIZZLE AND FOG PATCHES LTR. MOD OR GOOD, OCNL VERY POOR\n\nOUTLOOK FLW 24 HOURS:\nSTRG WINDS EXP IN ALL AREAS EXCEPT IN THAMES AND DOVER WHERE THERE IS JUST A RIJ_MZ.*_6._ 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": [
      "LUNDY",
      "PORTLAND"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warnings ngiii geneysmjfhchfzmhm fw ongszum fhayzem",
      "Cyclonic becmg ne, 4 to 6, but 7 to sev gale 9 at fiyjhmfm y becmg vrb 3 or less in e. rough or v yemy cdn. -:$ 2 32 ($ (! (",
      "M fyjhmfm otherwise rough. '. 2.' 6 9::-'89,-) 4-8,, fog patches. mod or good, ocnl very poor"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 20,
    "heading": "2026-04-07 23:32:12 AREA: L",
    "published_at": "2026-04-07 23:32:12",
    "area": "L",
    "message_id": "LA20",
    "text": "ZCZC LA20\n_:7_TC APG 26\nNORWEGIAN NAV. WARNING 142/2026\n  CHART 28\n  AREA FROEYSJOEEN N. GULEN\nTERNOEYNA  PPPYMSPWF_MSF_DH_\n_TMPIN 005-08.36E IS UNLIT.\nNNNN",
    "clean_text": "ZCZC LA20\n_:7_TC APG 26\nNORWEGIAN NAV. WARNING 142/2026\nCHART 28\nAREA FROEYSJOEEN N. GULEN\nTERNOEYNA PPPYMSPWF_MSF_DH_\n_TMPIN 005-08.36E IS UNLIT.\nNNNN",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORWEGIAN NAV WARNING"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Norway - South-west Norwegian coast. Readable text says: Norwegian nav. warning 142/2026. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Norwegian nav. warning 142/2026",
      "Area froeysjoeen n. gulen",
      "Ternoeyna pppymspwf msf dh"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-04-07 23:25:47 AREA: T",
    "published_at": "2026-04-07 23:25:47",
    "area": "T",
    "message_id": "",
    "text": "ZCZO\n_U_J_$(4-:9_9213_:+-$9___'6/=\n___33+--__QFXLU_\nDF T_D_UU_____U\n__\n_ZCZC",
    "clean_text": "ZCZO\n_U_J_$(4-:9_9213_:+-$9___'6/=\n___33+--__QFXLU_\nDF T_D_UU_____U\n__\n_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 23,
    "heading": "2026-04-07 22:48:50 AREA: W",
    "published_at": "2026-04-07 22:48:50",
    "area": "W",
    "message_id": "WA01",
    "text": "ZCZC WA01\nAVURNAV TOULON 184/26\nLION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\n FROM 240000 U_C_ 26 TO 152359 UTC JUL 26\n SCNENTIFIC S_R\nP__L_ _VMLSCPM_ONMFMYPMLZCWPWMLEM_XONMYP B  G_\n_TYMYQ_TIMOUNC\nC__C_ CGPONMNJK_EPGRSLG_\nYXP_Y__9,(4.(_,_KHW_PD_I_T2(7'!6\n__6__0D-))_94_.0__)_0__\n_\n1_)__.)06_$.60_:0*_029,\n-9__//0'._$!*._*.\n7  MG_H_NNNN",
    "clean_text": "ZCZC WA01\nAVURNAV TOULON 184/26\nLION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\nFROM 240000 U_C_ 26 TO 152359 UTC JUL 26\nSCNENTIFIC S_R\nP__L_ _VMLSCPM_ONMFMYPMLZCWPWMLEM_XONMYP B G_\n_TYMYQ_TIMOUNC\nC__C_ CGPONMNJK_EPGRSLG_\nYXP_Y__9,(4.(_,_KHW_PD_I_T2(7'!6\n__6__0D-))_94_.0__)_0__\n_\n1_)__.)06_$.60_:0*_029,\n-9__//0'._$!*._*.\n7 MG_H_NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text points to a scientific survey area and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. scientific survey",
      "Avurnav toulon 184/26",
      "Special operations"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-07 22:46:50 AREA: W",
    "published_at": "2026-04-07 22:46:50",
    "area": "W",
    "message_id": "WA36",
    "text": "ZCZC WA36\nAVURNAV TOULON 220/26\nLION\nSPECIAL _PHFZJON\nC_M*_!0__!!.=*_6_0_9,._2\n!'.\n7_ _':83,58!8: !8''36.*_6\n0*\n__9$9._0:5.6060*._9,.!./0._+_+202.)3_ 43-10._ 003-56.70E\n 42-57.00NV\nF__ _EGPONM\n__MPPN 0:0:__\n __.00E\n (CHART FR768:_ _345_ 43173'53\n_\n-_CANCEL HDFJMBJ___ _MG_HXMBE_\nU__XZC_33\nAVURNAV TOULON 217/26\nLION - PROVENCE\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\n FROM 100000 UTC A_Q_\n_BY M/V EUROPE IN AERA BOUNDED BY :\n_6_ _9 !!_\n_02.00E\n 43-15.00N 004-40.00E\n 42-48.00N 004-40.00E\n 42-48.00N 004-02.00E\n (C_AYHM6\n__FSONMG_FWPMLPYHDMYP_CPJHPWON\n_CANCELMHDFJMBJ__UPHZMGVH__YM\n_NNN\n\nZCZC",
    "clean_text": "ZCZC WA36\nAVURNAV TOULON 220/26\nLION\nSPECIAL _PHFZJON\nC_M*_!0__!!.=*_6_0_9,._2\n!'.\n7_ _':83,58!8: !8''36.*_6\n0*\n__9$9._0:5.6060*._9,.!./0._+_+202.)3_ 43-10._ 003-56.70E\n42-57.00NV\nF__ _EGPONM\n__MPPN 0:0:__\n__.00E\n(CHART FR768:_ _345_ 43173'53\n_\n-_CANCEL HDFJMBJ___ _MG_HXMBE_\nU__XZC_33\nAVURNAV TOULON 217/26\nLION - PROVENCE\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\nFROM 100000 UTC A_Q_\n_BY M/V EUROPE IN AERA BOUNDED BY :\n_6_ _9 !!_\n_02.00E\n43-15.00N 004-40.00E\n42-48.00N 004-40.00E\n42-48.00N 004-02.00E\n(C_AYHM6\n__FSONMG_FWPMLPYHDMYP_CPJHPWON\n_CANCELMHDFJMBJ__UPHZMGVH__YM\n_NNN\n\nZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text points to a scientific survey area near 43-15.00N 004-40.00E; 42-48.00N 004-40.00E and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. scientific survey",
      "By m/v europe in aera bounded by",
      "Avurnav toulon 220/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 25,
    "heading": "2026-04-07 22:44:41 AREA: W",
    "published_at": "2026-04-07 22:44:41",
    "area": "W",
    "message_id": "WA38",
    "text": "ZCZC WA38\nAVURNAV TOUSZM\nUUUTUEONCE\nSPECIAL OPE_ATZJON\n_EA TRIALS\n FROM 050000 UTC APR 26 TO 052359 UTC_AFC_\nGYZNMG/V JASONVFNNFOLLOWING AERAS.\n AERA 42-43 BOUNDED BH_E___BNEKKRML)9,.:_(_,_(:3.)_)91:4_)_,_.06.___._)+:202_\n 42-40.00N KPPYA _B_GPONM\nYUU_B_ 006-15.00E\n 42-25._13__\n+3333\n_=1!6=+3_$-\n__0YPPYARPMPIE\n (CLA_WFCC\nZ_ES REQUESTED\n2. SEA TRIALS\n FROM 060/__._(___-_6 TO 072359 UTC APR 26\n ROV IMPLEMENTATION BY M/V JASON IN \n  AERA 42-43 TO_PWMTE__ONMYP\nBAD__M\n__UBGP_NM_YQ_URY___*8$)_N_LI__YE_LV_B__X_S_RWARUMPP_M\n__K_T_WPBNM_T_V\n_ YEMBGMD__BYQC__B\nBQC__OF 500 METRES REQESTED\n-. CANCEL THIS MSG 080059 UTCCLVR BWNNNN",
    "clean_text": "ZCZC WA38\nAVURNAV TOUSZM\nUUUTUEONCE\nSPECIAL OPE_ATZJON\n_EA TRIALS\nFROM 050000 UTC APR 26 TO 052359 UTC_AFC_\nGYZNMG/V JASONVFNNFOLLOWING AERAS.\nAERA 42-43 BOUNDED BH_E___BNEKKRML)9,.:_(_,_(:3.)_)91:4_)_,_.06.___._)+:202_\n42-40.00N KPPYA _B_GPONM\nYUU_B_ 006-15.00E\n42-25._13__\n+3333\n_=1!6=+3_$-\n__0YPPYARPMPIE\n(CLA_WFCC\nZ_ES REQUESTED\n2. SEA TRIALS\nFROM 060/__._(___-_6 TO 072359 UTC APR 26\nROV IMPLEMENTATION BY M/V JASON IN\nAERA 42-43 TO_PWMTE__ONMYP\nBAD__M\n__UBGP_NM_YQ_URY___*8$)_N_LI__YE_LV_B__X_S_RWARUMPP_M\n__K_T_WPBNM_T_V\n_ YEMBGMD__BYQC__B\nBQC__OF 500 METRES REQESTED\n-. CANCEL THIS MSG 080059 UTCCLVR BWNNNN",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code W. Readable text says: -. cancel this msg 080059 utcclvr bwnnnn. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "-. cancel this msg 080059 utcclvr bwnnnn",
      "Rov implementation by m/v jason in",
      "Avurnav touszm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 26,
    "heading": "2026-04-07 22:43:22 AREA: W",
    "published_at": "2026-04-07 22:43:22",
    "area": "W",
    "message_id": "WA42",
    "text": "ZCZC WA42\nAVURNAV TOULO_N 226/26\nCORSE - ELBE - LIGURE - LION - MADDALENA_WA PROVENCE - S_RDAIGNEN_XG_FBY_CPMIMG_L_PYONF_G__Y_PMLCSSPHFON\nALL AVURNAV TOULON WARNINGS IN FORCE ARE AVAILABLE ON THE WEB-SFHPONMDH__0945-8)_)4KGL_KLKX_/.,_R_NAV TOULON IN FORCEVA\nC_P PXBM_C APR 26:\n 184/26, 202/26, 20_/_6, _6_, 207/26, 215/26, 216/26, 217/26, 219/26, 220/26, 221/26, 222/26, 223/26, 224/26, 225/26 AND THIS \nSG\n2. CANCEL THIS MSG 101305 UOM YM\n_\nZCZC",
    "clean_text": "ZCZC WA42\nAVURNAV TOULO_N 226/26\nCORSE - ELBE - LIGURE - LION - MADDALENA_WA PROVENCE - S_RDAIGNEN_XG_FBY_CPMIMG_L_PYONF_G__Y_PMLCSSPHFON\nALL AVURNAV TOULON WARNINGS IN FORCE ARE AVAILABLE ON THE WEB-SFHPONMDH__0945-8)_)4KGL_KLKX_/.,_R_NAV TOULON IN FORCEVA\nC_P PXBM_C APR 26:\n184/26, 202/26, 20_/_6, _6_, 207/26, 215/26, 216/26, 217/26, 219/26, 220/26, 221/26, 222/26, 223/26, 224/26, 225/26 AND THIS\nSG\n2. CANCEL THIS MSG 101305 UOM YM\n_\nZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: All avurnav toulon warnings in force are available on the web-sfhponmdh 0945-8) )4kgl klkx /., r nav toulon in forceva. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "All avurnav toulon warnings in force are available on the web-sfhponmdh 0945-8) )4kgl klkx /., r nav toulon in forceva",
      "Corse - elbe - ligure - lion - maddalena wa provence - s rdaignen xg fby cpmimg l pyonf g y pmlcssphfon",
      "2. cancel this msg 101305 uom ym"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 29,
    "heading": "2026-04-07 22:20:17 AREA: U",
    "published_at": "2026-04-07 22:20:17",
    "area": "U",
    "message_id": "UE47",
    "text": "ZCZC UE47\n071920 UTC APR 26\nMONDOLFO RADIO_R FORECAST OVER MEDITERRANEAN AREAS ISSUED BY ROME METEOROLOGY CENTRE AT 18/UTC OF 07/04/2026\nAND VALID UP TO 06/UTC OF 08/04/20_6\n_WARNINGS:\nTHUNDERSTORMS UNDER COURSE: Z_PYMJ_UEKBQKBKUB_B_D__!.*_:HDWXUEQD_RECAST: OVER LEVANTINE BAJC SEA, AEGEAN SEA AND\nALBZYMJP_GALES UNDER COURSE: NIL\nGALES _ZH _J___ XNIL\n2. WPHDPYMJFHCHFZ_INSTABILITY AREA O.. 9__/1____O_B_B__!_!_BBH_32_(7__*($+_)$ 9! 1024 HPA ZVER CENTRAL MEDITERRANEAMJP_INSTABILIT_MYPMZ_ON\n _ YM_D_MZ_PYMJHYFHMZ._!)6'_6.!*._0=0__\n3. FORECAST TO 06/UTC OF 08/04/2026 AND _KAM_DZCYJMZCHSZZVS_ZYHDPYMWYFHF_MJ__VARIABLE 2 LOCALLY INCREASING FROM\nNORTHEASTERLY EAST SECTOR -FAIR WORSENING -GOOD VISIBFLRH__XQEZBVE_YZV_WY_UBWB_ZPU\nZL_IT\nIILFCQPQF_QP\nK:99_945945_3-'_06'3._3.:(3_*1+_*-.80_ENTRAL ADRIATIC SEA: WESTERLY 2 BECOMING NORTHWESTE_L_MWONFXYKQ3_C_K4_(_30GEBCR_VISIBILITY -RIPPLED SEA QUICKLY\nINCREASIN_MZ_*$+60._975)+9=_,945_23'534)6 3 -PARTLY CLOUDY.\nSOUTHERN ADRIATIC SEA:= VARIABLE 2 LOCALLY I_YPJXM__A_YHDMJP_HZ_M_G!_.__++_.\n!_!)!'!_3.___!_$ '3-\n8,:43-*,._+___ / ZCHSZZV_NORTHWESTERLY 4 -FAIR.\n4. WIND AND SEA OUTSOZ_MZ\nPYMFHSFMJPJM_YZBM_ FTGCH_MZ._+_+6_+__-__2EBKUE(___1,(_BHAE_W_KE10_)0)4 ____=4$ __09,_0__0*_06'3._0._*0.\n_975_3-'53__+,_6._*0.\n0__,___3(*_(73(_:  NORTHERLY 4 SEA 2/NORTHWESTERLY 2 SEA\n3/NORTHEASTERSSM_UMGJPM\n_ASTERLYM_HMGJPM MH_AB__QAULICP\nLLN ___I\nL MC_L_IQ_GV___\nRS7__,HAE_IV___GQP_L2)$_,945_23'534)6 5 SEA 3/EASHPYSEM_UMGJPM\nP__ ONGPWM_PH_Z_Y\n_ONGONN_ZCZXM\n_CH_N\nP_ HP MG_HXM_Y___JM_Z 242/26 \nTHAMES. \nGUNFLEET SANDS WIND FARM. \n1. TURBINE A06 51-45.0__\nS  __EG_M+_.*!_'.!+_06_!\n0___9_,(9_(5_BKBN_CPOPHK_BO9HJ_FFZ__\nAXAXM\n__EZ_OQYEI UTC MAR 2026\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF D___.*06\n!__.6-__':_!_'36 '853 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "clean_text": "ZCZC UE47\n071920 UTC APR 26\nMONDOLFO RADIO_R FORECAST OVER MEDITERRANEAN AREAS ISSUED BY ROME METEOROLOGY CENTRE AT 18/UTC OF 07/04/2026\nAND VALID UP TO 06/UTC OF 08/04/20_6\n_WARNINGS:\nTHUNDERSTORMS UNDER COURSE: Z_PYMJ_UEKBQKBKUB_B_D__!.*_:HDWXUEQD_RECAST: OVER LEVANTINE BAJC SEA, AEGEAN SEA AND\nALBZYMJP_GALES UNDER COURSE: NIL\nGALES _ZH _J___ XNIL\n2. WPHDPYMJFHCHFZ_INSTABILITY AREA O.. 9__/1____O_B_B__!_!_BBH_32_(7__*($+_)$ 9! 1024 HPA ZVER CENTRAL MEDITERRANEAMJP_INSTABILIT_MYPMZ_ON\n_ YM_D_MZ_PYMJHYFHMZ._!)6'_6.!*._0=0__\n3. FORECAST TO 06/UTC OF 08/04/2026 AND _KAM_DZCYJMZCHSZZVS_ZYHDPYMWYFHF_MJ__VARIABLE 2 LOCALLY INCREASING FROM\nNORTHEASTERLY EAST SECTOR -FAIR WORSENING -GOOD VISIBFLRH__XQEZBVE_YZV_WY_UBWB_ZPU\nZL_IT\nIILFCQPQF_QP\nK:99_945945_3-'_06'3._3.:(3_*1+_*-.80_ENTRAL ADRIATIC SEA: WESTERLY 2 BECOMING NORTHWESTE_L_MWONFXYKQ3_C_K4_(_30GEBCR_VISIBILITY -RIPPLED SEA QUICKLY\nINCREASIN_MZ_*$+60._975)+9=_,945_23'534)6 3 -PARTLY CLOUDY.\nSOUTHERN ADRIATIC SEA:= VARIABLE 2 LOCALLY I_YPJXM__A_YHDMJP_HZ_M_G!_.__++_.\n!_!)!'!_3.___!_$ '3-\n8,:43-*,._+___ / ZCHSZZV_NORTHWESTERLY 4 -FAIR.\n4. WIND AND SEA OUTSOZ_MZ\nPYMFHSFMJPJM_YZBM_ FTGCH_MZ._+_+6_+__-__2EBKUE(___1,(_BHAE_W_KE10_)0)4 ____=4$ __09,_0__0*_06'3._0._*0.\n_975_3-'53__+,_6._*0.\n0__,___3(*_(73(_: NORTHERLY 4 SEA 2/NORTHWESTERLY 2 SEA\n3/NORTHEASTERSSM_UMGJPM\n_ASTERLYM_HMGJPM MH_AB__QAULICP\nLLN ___I\nL MC_L_IQ_GV___\nRS7__,HAE_IV___GQP_L2)$_,945_23'534)6 5 SEA 3/EASHPYSEM_UMGJPM\nP__ ONGPWM_PH_Z_Y\n_ONGONN_ZCZXM\n_CH_N\nP_ HP MG_HXM_Y___JM_Z 242/26\nTHAMES.\nGUNFLEET SANDS WIND FARM.\n1. TURBINE A06 51-45.0__\nS __EG_M+_.*!_'.!+_06_!\n0___9_,(9_(5_BKBN_CPOPHK_BO9HJ_FFZ__\nAXAXM\n__EZ_OQYEI UTC MAR 2026\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF D___.*06\n!__.6-__':_!_'36 '853 51-59.6N 001-24.5E OFF AIR.\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": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Italy - Adriatic Sea and central Italian coast. This is a weather bulletin; readable sections mention thunderstorms, gales across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Thunderstorms under course: z pymj uekbqkbkub b d !. :hdwxueqd recast: over levantine bajc sea, aegean sea and",
      "Albzymjp gales under course: nil",
      "Gales zh j xnil"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 30,
    "heading": "2026-04-07 22:19:26 AREA: T",
    "published_at": "2026-04-07 22:19:26",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMH_AA_M_MJ*__*2*_,_++*_02062!+._*!_\n_7_57_9,_)0.00-9,_$__4-0_8:-) 8,'547.3,5 3*_)888_$02.!._+_.\n_ 7__\n:__)9,__:8:(),_1,9-_4_78=0__:_9 !8'_ ,94 59 -,:_94 8, 5_3 =8:8,856\nNNNN",
    "clean_text": "ZCZCMH_AA_M_MJ*__*2*_,_++*_02062!+._*!_\n_7_57_9,_)0.00-9,_$__4-0_8:-) 8,'547.3,5 3*_)888_$02.!._+_.\n_ 7__\n:__)9,__:8:(),_1,9-_4_78=0__:_9 !8'_ ,94 59 -,:_94 8, 5_3 =8:8,856\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 31,
    "heading": "2026-04-07 22:18:44 AREA: T",
    "published_at": "2026-04-07 22:18:44",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n05117_)_9',__+3__'_71!:/7_/\nXJ_ LOSTON THE LINE BETWEEN POSITIONS 51-20.04N 003-05.47E \nAND 51-20.990N 00_P_NF G_OGJDF_G IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\nNNNN",
    "clean_text": "ZCZC TA45\n05117_)_9',__+3__'_71!:/7_/\nXJ_ LOSTON THE LINE BETWEEN POSITIONS 51-20.04N 003-05.47E\nAND 51-20.990N 00_P_NF G_OGJDF_G IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text sets local operating restrictions near 51-20.04N 003-05.47E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "And 51-20.990n 00 p nf g ogjdf g is requested not to anchor nor to fish in the vicinity",
      "Xj loston the line between positions 51-20.04n 003-05.47e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-04-07 22:18:05 AREA: T",
    "published_at": "2026-04-07 22:18:05",
    "area": "T",
    "message_id": "TA79",
    "text": "ZCZC TA79\n _7:__MG_H_MJP_MMONGZZJ__WPYWFZM_JFM_PH_\nOOSTENDE-ZEEBRUGGE\nCHAIN ON THE SE_\nOF 51-20,05N _P_ENUTE\nSHIPPING IS REQUESTED NOT TO ANCHOR_\n_NOR TO KU_21__-__8,856\nNNNN",
    "clean_text": "ZCZC TA79\n_7:__MG_H_MJP_MMONGZZJ__WPYWFZM_JFM_PH_\nOOSTENDE-ZEEBRUGGE\nCHAIN ON THE SE_\nOF 51-20,05N _P_ENUTE\nSHIPPING IS REQUESTED NOT TO ANCHOR_\n_NOR TO KU_21__-__8,856\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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor",
      "Oostende-zeebrugge",
      "Chain on the se"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-04-07 22:16:57 AREA: T",
    "published_at": "2026-04-07 22:16:57",
    "area": "T",
    "message_id": "TA85",
    "text": "ZCZC TA85\n3008-!._:__.*0_._--1$UEKU__19_PKDOZSB_RJ W_\n_GN_IWIGL G___ZC_\nR__N POS 51-23.730N 002-29.791E AND \n51-23.557N 002-30.286E\nANCHORING AND FISHING ARE PROHIBITEWMONG_HDFMWFJH_PMZ.\n7_GBONGONN_I_U_ZCZC",
    "clean_text": "ZCZC TA85\n3008-!._:__.*0_._--1$UEKU__19_PKDOZSB_RJ W_\n_GN_IWIGL G___ZC_\nR__N POS 51-23.730N 002-29.791E AND\n51-23.557N 002-30.286E\nANCHORING AND FISHING ARE PROHIBITEWMONG_HDFMWFJH_PMZ.\n7_GBONGONN_I_U_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. Readable text says: Anchoring and fishing are prohibitewmong hdfmwfjh pmz. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Anchoring and fishing are prohibitewmong hdfmwfjh pmz",
      "R n pos 51-23.730n 002-29.791e and"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 37,
    "heading": "2026-04-07 22:13:41 AREA: T",
    "published_at": "2026-04-07 22:13:41",
    "area": "T",
    "message_id": "TA16",
    "text": "ZCZC TA16\n291850!02_71 __++*_02062!+._*!_4/26\n,__**__70*__!2069,___5_\n.*_)9.__)0_0*9,888_:_94 -,$ :_-8, )9'5 8, 09'.\n_ 7_56___\nFKNA_CGPONONGONNIII_ZCZC",
    "clean_text": "ZCZC TA16\n291850!02_71 __++*_02062!+._*!_4/26\n,__**__70*__!2069,___5_\n.*_)9.__)0_0*9,888_:_94 -,$ :_-8, )9'5 8, 09'.\n_ 7_56___\nFKNA_CGPONONGONNIII_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. Readable text says: Fkna cgponongonniii zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fkna cgponongonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 39,
    "heading": "2026-04-07 22:12:26 AREA: T",
    "published_at": "2026-04-07 22:12:26",
    "area": "T",
    "message_id": "TA22",
    "text": "ZCZC TA22\n1 \n  _H_MHO_GZZGZZJHPWPYWFZM_JF__XWY\nTSS-OFF NOORDHINWPYMMONGJP_F_M_CYZJ_IIOY OWFB, W. _!).1_S$ \n51-40.23N 002-48.34E EJHLSFJDPWMONG_XPSMHDFJM_PJ_P_XV__Y _I_ 26\nNNNN",
    "clean_text": "ZCZC TA22\n1\n_H_MHO_GZZGZZJHPWPYWFZM_JF__XWY\nTSS-OFF NOORDHINWPYMMONGJP_F_M_CYZJ_IIOY OWFB, W. _!).1_S$\n51-40.23N 002-48.34E EJHLSFJDPWMONG_XPSMHDFJM_PJ_P_XV__Y _I_ 26\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text says: Tss-off noordhinwpymmongjp f m cyzj iioy owfb, w. !).1 s$. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tss-off noordhinwpymmongjp f m cyzj iioy owfb, w. !).1 s$"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-04-07 22:11:44 AREA: T",
    "published_at": "2026-04-07 22:11:44",
    "area": "T",
    "message_id": "TA20",
    "text": "ZCZC TA20\n__++*_02062!+._*!__/26\nTSS-WESTHINDER\nCALIBRATION BEACON SZI_I_BY VESSEL GEOSURVEYOR 11\nIN THE VICINITY_Z._+*.\n__.76_0__.\nU_SHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH \nIN THE VICF_H_ONGONNIII__ZCZC",
    "clean_text": "ZCZC TA20\n__++*_02062!+._*!__/26\nTSS-WESTHINDER\nCALIBRATION BEACON SZI_I_BY VESSEL GEOSURVEYOR 11\nIN THE VICINITY_Z._+*.\n__.76_0__.\nU_SHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH\nIN THE VICF_H_ONGONNIII__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": "regional-context",
    "resolved_match_terms": [
      "WESTHINDER"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "U shipping is requested not to anchor nor to fish",
      "Calibration beacon szi i by vessel geosurveyor 11",
      "Tss-westhinder"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-04-07 22:06:16 AREA: S",
    "published_at": "2026-04-07 22:06:16",
    "area": "S",
    "message_id": "SA79",
    "text": "ZCZC SA79\n,/__-._74_1'N\nMG_P_B_AR 26\nNAV. WARN. NO. 187\nGERMAN BIGHT.\nOFFSHORE WINDPARK 'NORDSEE OST'.\n5 SM LPLEX_0_'_\n__/-S___HDPMPHFYPM_F_M_CRL_LRIUIIA_L\nOOOOOOOOOOOOOOOOOOOOOOOOOO_XACAC SA75\nNCC-HAMBURG\n270950 _7_/._6_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUISTM\n '_CF_H_G_JMMGSF_DHLCZ_MM\nHPYYGMM__EHHGPM_FJJF_NNNN",
    "clean_text": "ZCZC SA79\n,/__-._74_1'N\nMG_P_B_AR 26\nNAV. WARN. NO. 187\nGERMAN BIGHT.\nOFFSHORE WINDPARK 'NORDSEE OST'.\n5 SM LPLEX_0_'_\n__/-S___HDPMPHFYPM_F_M_CRL_LRIUIIA_L\nOOOOOOOOOOOOOOOOOOOOOOOOOO_XACAC SA75\nNCC-HAMBURG\n270950 _7_/._6_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUISTM\n'_CF_H_G_JMMGSF_DHLCZ_MM\nHPYYGMM__EHHGPM_FJJF_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": [
      "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: German bight. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "German bight",
      "Offshore windpark 'nordsee ost'",
      "Oooooooooooooooooooooooooo xacac sa75"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 44,
    "heading": "2026-04-07 22:05:40 AREA: S",
    "published_at": "2026-04-07 22:05:40",
    "area": "S",
    "message_id": "SA80",
    "text": "ZCZC SA80\nNCC-HAMBURG\n301330 UTCM_Y_\n_NAV. WARN. NO. 1!+9,_0!206.0*_:40_EIDER' LIGHTBUOY  54-16N 008-29E\nPOMPORARILY REPLACED BY UNLIT BUOE_NN\n\n_UUUZCZC",
    "clean_text": "ZCZC SA80\nNCC-HAMBURG\n301330 UTCM_Y_\n_NAV. WARN. NO. 1!+9,_0!206.0*_:40_EIDER' LIGHTBUOY 54-16N 008-29E\nPOMPORARILY REPLACED BY UNLIT BUOE_NN\n\n_UUUZCZC",
    "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: Nav. warn. no. 1! 9, 0!206.0 :40 eider' lightbuoy 54-16n 008-29e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nav. warn. no. 1! 9, 0!206.0 :40 eider' lightbuoy 54-16n 008-29e",
      "Pomporarily replaced by unlit buoe nn",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-04-07 22:03:47 AREA: T",
    "published_at": "2026-04-07 22:03:47",
    "area": "T",
    "message_id": "",
    "text": "ZFZC S\nF_ON_X_HAMBURG\n0106_.____\nYM\n_NAV. WARN. NO. 192\nGERMAN BIGHT. NORTHWPJ__ OWF 'BARD OFFSHORE 1'.\nSURVEY OPERATIONS IN _YZYPJJMLEM_\nM\n_GVZ_BWZYMZE_KQOE'MKFI8',\nAROUND POSFHFZM_NY__FHGM_AEPNIE.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 /,. 43170*_02_NNNN",
    "clean_text": "ZFZC S\nF_ON_X_HAMBURG\n0106_.____\nYM\n_NAV. WARN. NO. 192\nGERMAN BIGHT. NORTHWPJ__ OWF 'BARD OFFSHORE 1'.\nSURVEY OPERATIONS IN _YZYPJJMLEM_\nM\n_GVZ_BWZYMZE_KQOE'MKFI8',\nAROUND POSFHFZM_NY__FHGM_AEPNIE.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 /,. 43170*_02_NNNN",
    "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 reports survey operations and implies local caution around the work area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey operations in yzypjjmlem",
      "Restricted manoevrability during operations",
      "German bight. northwpj owf 'bard offshore 1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 47,
    "heading": "2026-04-07 22:01:22 AREA: S",
    "published_at": "2026-04-07 22:01:22",
    "area": "S",
    "message_id": "SA91",
    "text": "ZCZC SA91\nNCC-HAMBURG\n060_$____-04 26\nNAV._ \n_$1_!  0\n__ 1066=_HELGOLAND-O'  LIGHTBUOY  54-09N  007-53E TEMPORARIS_MYP_Z_NIN_ZCA_MJ_FHONGX_HAMBURG\n0203 MG_H_MYM\n_NAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BYON__\nM\nJGZ_PMYPJPY_DPY_J_GJM\nJGWSJ_JMGYZCWM_ZJFHFZON_H__PPGM\n_TRNWE\nNGYPJHYFWQUX\nH_ K_BILITY DCYF_MZ_YHFZJ_SAFE BERTH OF 1 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA91\nNCC-HAMBURG\n060_$____-04 26\nNAV._\n_$1_! 0\n__ 1066=_HELGOLAND-O' LIGHTBUOY 54-09N 007-53E TEMPORARIS_MYP_Z_NIN_ZCA_MJ_FHONGX_HAMBURG\n0203 MG_H_MYM\n_NAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BYON__\nM\nJGZ_PMYPJPY_DPY_J_GJM\nJGWSJ_JMGYZCWM_ZJFHFZON_H__PPGM\n_TRNWE\nNGYPJHYFWQUX\nH_ K_BILITY DCYF_MZ_YHFZJ_SAFE BERTH OF 1 NM REQUESTED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: 1066 helgoland-o' lightbuoy 54-09n 007-53e temporaris myp z nin zca mj fhongx hamburg. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1066 helgoland-o' lightbuoy 54-09n 007-53e temporaris myp z nin zca mj fhongx hamburg",
      "Uxo survey byon",
      "German bight. northwesterly owf 'bard offshore 1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 48,
    "heading": "2026-04-07 22:00:16 AREA: S",
    "published_at": "2026-04-07 22:00:16",
    "area": "S",
    "message_id": "SE93",
    "text": "ZCZC SE93\n071900 NAVTEX-HAMBURG (_X_\n\nWEATHERFORECAST FOA __YBMLF_DHONONGHCPJWE_WIND: LIGHT AND VARIABLE WINDS, SHIFTING EAST TO SOUTHEAST ABOUT 4.\nVISIBILITY/_23-5_34: GZZ_M_FJFLFSFH_SEA: WESTERN PA_T 1,5 METER.\n_WEDNESDY__O_G_F__SOUTHEAST 4 TO 5._'_06.'+_''3.\n3_9___!*!)!'!_3_5_70_$06_9_$ =8'8_!'!_3_SEA: 19____0_,6_ -__ZCZC",
    "clean_text": "ZCZC SE93\n071900 NAVTEX-HAMBURG (_X_\n\nWEATHERFORECAST FOA __YBMLF_DHONONGHCPJWE_WIND: LIGHT AND VARIABLE WINDS, SHIFTING EAST TO SOUTHEAST ABOUT 4.\nVISIBILITY/_23-5_34: GZZ_M_FJFLFSFH_SEA: WESTERN PA_T 1,5 METER.\n_WEDNESDY__O_G_F__SOUTHEAST 4 TO 5._'_06.'+_''3.\n3_9___!*!)!'!_3_5_70_$06_9_$ =8'8_!'!_3_SEA: 19____0_,6_ -__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": [
      "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 foa ybmlf dhononghcpjwe wind: light and variable winds, shifting east to southeast about 4. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Weatherforecast foa ybmlf dhononghcpjwe wind: light and variable winds, shifting east to southeast about 4",
      "Visibility/ 23-5 34: gzz m fjflfsfh sea: western pa t 1,5 meter",
      "071900 navtex-hamburg ( x"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-04-07 21:33:03 AREA: P",
    "published_at": "2026-04-07 21:33:03",
    "area": "P",
    "message_id": "PA28",
    "text": "ZCZC PA28\n070659 UTC APR 26\nMSI 109/26\nNORTHSEA\nSINKER PIPELINE UNCOVERED ON SELPWONLPH_PP_M_H_P _ 004-34_-,$ 52-31.6N 00_7E\nDANGEROUS TO FISHERY\nNNNN",
    "clean_text": "ZCZC PA28\n070659 UTC APR 26\nMSI 109/26\nNORTHSEA\nSINKER PIPELINE UNCOVERED ON SELPWONLPH_PP_M_H_P _ 004-34_-,$ 52-31.6N 00_7E\nDANGEROUS TO FISHERY\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "NORTHSEA"
    ],
    "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 reports a pipeline-related hazard with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sinker pipeline uncovered on selpwonlph pp m h p 004-34 -,$ 52-31.6n 00 7e",
      "Dangerous to fishery",
      "Northsea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 54,
    "heading": "2026-04-07 20:09:14 AREA: G",
    "published_at": "2026-04-07 20:09:14",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/26 \nNORTH SEA. \nTEAL AND GUILL_MO__OB_I__BHL_ Q_07_+/1_.1!$2_1=*-_0*_)'!*$02.!.__:_ __: $__',1!_9,_9,,888_ZFAF__\nZAO_G_AM\n C TUEMONG_C_LP__\nDUDGEON WIOYBM_GEON SOUTH BUZ_M_HP_N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/26\nNORTH SEA.\nTEAL AND GUILL_MO__OB_I__BHL_ Q_07_+/1_.1!$2_1=*-_0*_)'!*$02.!.__:_ __: $__',1!_9,_9,,888_ZFAF__\nZAO_G_AM\nC TUEMONG_C_LP__\nDUDGEON WIOYBM_GEON SOUTH BUZ_M_HP_N 001-25.6E UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Dudgeon wioybm geon south buz m hp n 001-25.6e unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Dudgeon wioybm geon south buz m hp n 001-25.6e unlit",
      "Navarea i 43/26",
      "North sea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 55,
    "heading": "2026-04-07 20:08:36 AREA: G",
    "published_at": "2026-04-07 20:08:36",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND _BVOM\nC_MGHCYLF\nM++.*!_'*.*_/_+___: \nA. _+1_53-20.1N 000-49.1E. \n_B_M S01, 53-15.7N 000-55.9E. \n2. FANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK WIND _BVOM\nC_MGHCYLF\nM++.*!_'*.*_/_+___:\nA. _+1_53-20.1N 000-49.1E.\n_B_M S01, 53-15.7N 000-55.9E.\n2. FANCEL 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: Race bank wind bvom. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Race bank wind bvom",
      "C mghcylf",
      "2. fancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 56,
    "heading": "2026-04-07 20:08:05 AREA: G",
    "published_at": "2026-04-07 20:08:05",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ\nX_EXW_\nZ_R.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET\n__MUN 002-59.1E UNLIT AND ALL NAVACZJMFZ_PY_K\n_B_M CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ\nX_EXW_\nZ_R.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET\n__MUN 002-59.1E UNLIT AND ALL NAVACZJMFZ_PY_K\n_B_M CANCEL WZ 82/26 (GA42).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "ORWELL GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Mun 002-59.1e unlit and all navaczjmfz py k. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mun 002-59.1e unlit and all navaczjmfz py k",
      "B m cancel wz 82/26 (ga42)",
      "Orwell gas field northwestwards"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-04-07 20:07:35 AREA: G",
    "published_at": "2026-04-07 20:07:35",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA7)\n :'-,\n__TU_M_ MDCLP \nRAVENSPURN NORTH G_MFPUW\nG_MO__ZSBM__YHDMIYPT__G_H_ TRAPEMWN 001-02.0E, UNLIT AND_AHH NAVAIDS INOPERATIVE. \n__9,,888_ZCZC",
    "clean_text": "ZCZC GA7)\n:'-,\n__TU_M_ MDCLP\nRAVENSPURN NORTH G_MFPUW\nG_MO__ZSBM__YHDMIYPT__G_H_ TRAPEMWN 001-02.0E, UNLIT AND_AHH NAVAIDS INOPERATIVE.\n__9,,888_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: G mo zsbm yhdmiypt g h trapemwn 001-02.0e, unlit and ahh navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "G mo zsbm yhdmiypt g h trapemwn 001-02.0e, unlit and ahh navaids inoperative",
      "Ravenspurn north g mfpuw"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 58,
    "heading": "2026-04-07 20:07:10 AREA: T",
    "published_at": "2026-04-07 20:07:10",
    "area": "T",
    "message_id": "",
    "text": "ZCZMVGA81\nWZ 21/_' \nGMDSS. \nM_C\nHUMBER. \nMF R/T SERVICE FROM CULLERCOAT__SITE 55-04.4N 001-7:___7.+_84. \nNZCZC",
    "clean_text": "ZCZMVGA81\nWZ 21/_'\nGMDSS.\nM_C\nHUMBER.\nMF R/T SERVICE FROM CULLERCOAT__SITE 55-04.4N 001-7:___7.+_84.\nNZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from cullercoat site 55-04.4n 001-7: 7. 84"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 59,
    "heading": "2026-04-07 20:06:46 AREA: G",
    "published_at": "2026-04-07 20:06:46",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GT_QTXWY \nGMDSS. \n3__!/._+\n06\n\nMF R_XM\n J_FROM BAWDSEY SITE 51-59.6N_ 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GT_QTXWY\nGMDSS.\n3__!/._+\n06\n\nMF R_XM\nJ_FROM BAWDSEY SITE 51-59.6N_ 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: J from bawdsey site 51-59.6n 001-24.5e off air. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "J from bawdsey site 51-59.6n 001-24.5e off air"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-04-07 20:06:18 AREA: G",
    "published_at": "2026-04-07 20:06:18",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA_.\nBLYTH OFJPMWP_ZJHYHZYM_F_M_Y__ 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA_.\nBLYTH OFJPMWP_ZJHYHZYM_F_M_Y__ 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text reports a fog signal outage. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Blyth ofjpmwp zjhyhzym f m y 001-23.6w unlit and fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 61,
    "heading": "2026-04-07 20:05:46 AREA: G",
    "published_at": "2026-04-07 20:05:46",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMA_ _A_ FIELD. \n1. PLATFOCM _UAED 53-03.6_002-12.6E, UNLIT AND ERATIVE. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMA_ _A_ FIELD.\n1. PLATFOCM _UAED 53-03.6_002-12.6E, UNLIT AND ERATIVE.\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: 1. platfocm uaed 53-03.6 002-12.6e, unlit and erative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platfocm uaed 53-03.6 002-12.6e, unlit and erative",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 62,
    "heading": "2026-04-07 20:05:15 AREA: G",
    "published_at": "2026-04-07 20:05:15",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\n_+\n=225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R\n AND DSC SERVICES FROM GREGNES_ JI_IIFHVM_L_FC_CG_PWAPEMWW OFF AIR_9_ CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\n_+\n=225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R\nAND DSC SERVICES FROM GREGNES_ JI_IIFHVM_L_FC_CG_PWAPEMWW OFF AIR_9_ CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "And dsc services from gregnes ji iifhvm l fc cg pwapemww off air 9 cancel wz 213/26 (ga80)",
      "Mrcc shetland"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 63,
    "heading": "2026-04-07 20:04:45 AREA: T",
    "published_at": "2026-04-07 20:04:45",
    "area": "T",
    "message_id": "",
    "text": "ZCZXM__C_Z 2235_3$:9,0_:_9_5)0**0)06_00/.!_.0'1. PLATFORM 49/23E, 53-11.9N 002-29.1_0\n._+_.*!_'.!+_0_(_9,LZM CANCEL WZ 104/26 (GA54).\nNNONNIIIKZCZC",
    "clean_text": "ZCZXM__C_Z 2235_3$:9,0_:_9_5)0**0)06_00/.!_.0'1. PLATFORM 49/23E, 53-11.9N 002-29.1_0\n._+_.*!_'.!+_0_(_9,LZM CANCEL WZ 104/26 (GA54).\nNNONNIIIKZCZC",
    "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: Nnonniiikzczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nnonniiikzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 64,
    "heading": "2026-04-07 20:03:45 AREA: G",
    "published_at": "2026-04-07 20:03:45",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGOER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. N1 55-08.1N 002-09.5E. 9,_)_5 54-51.5N 002-20.7E. \n2. CANCEL WZV\nZ\nXWY KGA50). \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGOER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA. N1 55-08.1N 002-09.5E. 9,_)_5 54-51.5N 002-20.7E.\n2. CANCEL WZV\nZ\nXWY KGA50).\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": [
      "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 wzv"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 65,
    "heading": "2026-04-07 20:03:09 AREA: G",
    "published_at": "2026-04-07 20:03:09",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nJOYTH. \n_06_.._+!_$0._!1__\n1. NNG E BUOY \n1-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.__7.!*.!+_06_!\n0__._. CANCEL WZ 130/26 (__-73). \nNNNN",
    "clean_text": "ZCZC GA18\nWZ 243/26\nJOYTH.\n_06_.._+!_$0._!1__\n1. NNG E BUOY\n1-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.__7.!*.!+_06_!\n0__._. CANCEL WZ 130/26 (__-73).\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-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09. 7.! .! 06 !. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09. 7.! .! 06 !",
      "1. nng e buoy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 66,
    "heading": "2026-04-07 20:00:17 AREA: G",
    "published_at": "2026-04-07 20:00:17",
    "area": "G",
    "message_id": "GA25",
    "text": "ZCZC GA25\nWZ 254/26 \nVIKING. \nBERYL OIL FIELD. \n_346) '0.3 _)_96 59-31.7N 001-3.5E TEMPORYFS_MYPBZ__W\n_M_M CANCEL WZ 143/26 (\nFUS_MONGONNII_U__AXAXM_\nU_O_TY_MFMFM__JTU__M NAVAREA I WARF_JMFM_ZYXPMHM_P _MG_H_MYM\nU_UQOONON_CGCP_ SERIES: 43, 61, 67, 68_\n\nNOTES:\nA_TS OF NAVAREA I AYF_JMFJJCPWMP_DMUPPVM_HMABFFXJ_HED INVW ___DITIONS OF THE ADMIRALTY NOTICES TO MARINERS BULIETIN (ANMB).\n\nB. NAVARPMFI_K_UYF_JM_Q_B_ 42 DAYS OLD (43/26 ON_W_RE PROMULGATED VIA ENHANCED GGOCM_SV__G\n__JKN_AND/ORVR_LEVANT NAVTEX TRANSMITTES__C. THE COMPLETE \nP\nTJ_Z_MSSMF_G+6/0.__60.!.__:: 3_41B_+*0._$!/$.60.+.'+_06.)0!')3_(7_(1_BKEB_G\nP_I_GCL_IL G\nW__B IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEHPLHPMH_.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS_\nALT_YHF_PSE_MHS_QNBLK_BXXXXP_UO_QBNK_AVAREA I C_GZYWFHZYMH__BLKBKKE41_CD_\nM_L_L_R_OHM_Z_NKOH_KT_BKBKEMV__GGYWXWY KEA47)(GA13)(OA74).\nNNNN",
    "clean_text": "ZCZC GA25\nWZ 254/26\nVIKING.\nBERYL OIL FIELD.\n_346) '0.3 _)_96 59-31.7N 001-3.5E TEMPORYFS_MYPBZ__W\n_M_M CANCEL WZ 143/26 (\nFUS_MONGONNII_U__AXAXM_\nU_O_TY_MFMFM__JTU__M NAVAREA I WARF_JMFM_ZYXPMHM_P _MG_H_MYM\nU_UQOONON_CGCP_ SERIES: 43, 61, 67, 68_\n\nNOTES:\nA_TS OF NAVAREA I AYF_JMFJJCPWMP_DMUPPVM_HMABFFXJ_HED INVW ___DITIONS OF THE ADMIRALTY NOTICES TO MARINERS BULIETIN (ANMB).\n\nB. NAVARPMFI_K_UYF_JM_Q_B_ 42 DAYS OLD (43/26 ON_W_RE PROMULGATED VIA ENHANCED GGOCM_SV__G\n__JKN_AND/ORVR_LEVANT NAVTEX TRANSMITTES__C. THE COMPLETE\nP\nTJ_Z_MSSMF_G+6/0.__60.!.__:: 3_41B_+*0._$!/$.60.+.'+_06.)0!')3_(7_(1_BKEB_G\nP_I_GCL_IL G\nW__B IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEHPLHPMH_.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS_\nALT_YHF_PSE_MHS_QNBLK_BXXXXP_UO_QBNK_AVAREA I C_GZYWFHZYMH__BLKBKKE41_CD_\nM_L_L_R_OHM_Z_NKOH_KT_BKBKEMV__GGYWXWY KEA47)(GA13)(OA74).\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. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A ts of navarea i ayf jmfjjcpwmp dmuppvm hmabffxj hed invw ditions of the admiralty notices to mariners bulietin (anmb)",
      "W b in weeks 1, 13, 26 and 39 and are also available from the ukho wehplhpmh .admiralty.co.uk/radionavigationalwarnings",
      "Jkn and/orvr levant navtex transmittes c. the complete"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 67,
    "heading": "2026-04-07 19:45:02 AREA: E",
    "published_at": "2026-04-07 19:45:02",
    "area": "E",
    "message_id": "EA21",
    "text": "ZCZC EA21\nWZ 182/26=_1 ,:_3_8.1/, 004-___20_72__ZCZC",
    "clean_text": "ZCZC EA21\nWZ 182/26=_1 ,:_3_8.1/, 004-___20_72__ZCZC",
    "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. 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": 68,
    "heading": "2026-04-07 19:44:21 AREA: E",
    "published_at": "2026-04-07 19:44:21",
    "area": "E",
    "message_id": "EAXWU",
    "text": "ZCZC EAXWU\nWZ 192/2_ \n_$)7,$6. \nLA_ERNOCK SPIT BUOY )8--\n9___=\n___-8_9__-_*27_ZCZC",
    "clean_text": "ZCZC EAXWU\nWZ 192/2_\n_$)7,$6.\nLA_ERNOCK SPIT BUOY )8--\n9___=\n___-8_9__-_*27_ZCZC",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: La ernock spit buoy )8--. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "La ernock spit buoy )8--"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 69,
    "heading": "2026-04-07 19:43:33 AREA: E",
    "published_at": "2026-04-07 19:43:33",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EA_6\nWZ 234/26.9__S_BZV_DGOM\nLNAS END SOUTHEA_TWARDS. \n*'+ _$._62!'.):+_.\n__ _UG_\n\n7:7_\n77!8ZCZ_V A40\nWZ 205/22 \n_ _+2_ \nMRCC DOVER. \nMF R/T SERVICE FROM_ ZHL_RQL_X_QMX_ZX\n_ 001-2_.55___5_7_ZCZC",
    "clean_text": "ZCZC EA_6\nWZ 234/26.9__S_BZV_DGOM\nLNAS END SOUTHEA_TWARDS.\n*'+ _$._62!'.):+_.\n__ _UG_\n\n7:7_\n77!8ZCZ_V A40\nWZ 205/22\n_ _+2_\nMRCC DOVER.\nMF R/T SERVICE FROM_ ZHL_RQL_X_QMX_ZX\n_ 001-2_.55___5_7_ZCZC",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code E. 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 zhl rql x qmx zx",
      "Lnas end southea twards",
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 71,
    "heading": "2026-04-07 18:30:56 AREA: V",
    "published_at": "2026-04-07 18:30:56",
    "area": "V",
    "message_id": "",
    "text": "ZCZC VA_EZ\n_ EP O_FBH_EOOC:0_+ 215/26\nGMDDSWM\n_DMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "clean_text": "ZCZC VA_EZ\n_ EP O_FBH_EOOC:0_+ 215/26\nGMDDSWM\n_DMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOVER"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Dmrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 72,
    "heading": "2026-04-07 18:30:22 AREA: V",
    "published_at": "2026-04-07 18:30:22",
    "area": "V",
    "message_id": "VA75",
    "text": "ZCZC VA75\n301531 UTC MQV\n_\nWZ 242/26 \n___$9='2. \n0:'00_.*2*._!_._6__\n1. TURBINE A06 51-45.0N 001-14.6E FOG SIGNAL INZ_PYHF\nP_BM_NC_CANCEL WZV773573.=_\n__!'_9,_9,888(ZCZC",
    "clean_text": "ZCZC VA75\n301531 UTC MQV\n_\nWZ 242/26\n___$9='2.\n0:'00_.*2*._!_._6__\n1. TURBINE A06 51-45.0N 001-14.6E FOG SIGNAL INZ_PYHF\nP_BM_NC_CANCEL WZV773573.=_\n__!'_9,_9,888(ZCZC",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. turbine a06 51-45.0n 001-14.6e fog signal inz pyhf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 73,
    "heading": "2026-04-07 18:18:08 AREA: T",
    "published_at": "2026-04-07 18:18:08",
    "area": "T",
    "message_id": "TA19",
    "text": "ZCZC TA19\n071438 UTC APO \n O_STENDERADIO MSI 189/23\nSEAAREA (COAST)\nUNDERWATERPCFPSFPIIKKVERSIJDE ESTABLISHED BETWEEN BEACH \nAND 51-13.294N 002-51.385E\nOY_PWM_FHW_ZYHDM_KEU(*__!_96 'JDN'\nUNDERWATERPIPELINE LOMBARDSIJDE ESTABLISHED BETWEEN BEACH \nAND POS 51-10.1:__._02-45.01E MARKED\nM_CGW\n_FHDMZYHDM_YWFSMLCZAMHJG_SHIPPING IS REQUESTED NO_I_CHOR NOR TO FISH ABOVE \nTHESE PIPELINUS_IVFN_F\nH\n_ZCZC",
    "clean_text": "ZCZC TA19\n071438 UTC APO\nO_STENDERADIO MSI 189/23\nSEAAREA (COAST)\nUNDERWATERPCFPSFPIIKKVERSIJDE ESTABLISHED BETWEEN BEACH\nAND 51-13.294N 002-51.385E\nOY_PWM_FHW_ZYHDM_KEU(*__!_96 'JDN'\nUNDERWATERPIPELINE LOMBARDSIJDE ESTABLISHED BETWEEN BEACH\nAND POS 51-10.1:__._02-45.01E MARKED\nM_CGW\n_FHDMZYHDM_YWFSMLCZAMHJG_SHIPPING IS REQUESTED NO_I_CHOR NOR TO FISH ABOVE\nTHESE PIPELINUS_IVFN_F\nH\n_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text reports a pipeline-related hazard near 51-13.294N 002-51.385E with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fhdmzyhdm ywfsmlczamhjg shipping is requested no i chor nor to fish above",
      "Underwaterpipeline lombardsijde established between beach",
      "And pos 51-10.1: . 02-45.01e marked"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 74,
    "heading": "2026-04-07 18:17:31 AREA: T",
    "published_at": "2026-04-07 18:17:31",
    "area": "T",
    "message_id": "TA53",
    "text": "ZCZC TA53\n(_ 0__._:__.20/._7_9,_++*_02062!+._*!._6:3_\nBE EEZ\nPOSSIBLE EXPLOSIVE ON C\nR_EABED\nIN POS 51-36.62:F 002-35.18E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\n\nNNNN",
    "clean_text": "ZCZC TA53\n(_ 0__._:__.20/._7_9,_++*_02062!+._*!._6:3_\nBE EEZ\nPOSSIBLE EXPLOSIVE ON C\nR_EABED\nIN POS 51-36.62:F 002-35.18E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\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": "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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor to fish in the vicinity",
      "Possible explosive on c"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 76,
    "heading": "2026-04-07 18:16:12 AREA: T",
    "published_at": "2026-04-07 18:16:12",
    "area": "T",
    "message_id": "",
    "text": "ZZZCZC",
    "clean_text": "ZZZCZC",
    "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": 77,
    "heading": "2026-04-07 18:16:12 AREA: T",
    "published_at": "2026-04-07 18:16:12",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n051111 _75: '30 25\nOOSTENDERADIO MS_M\nP  _UZ_NGLPMPPAONGP_SIVE LOSTONMT_J_LINE BETWEEN POSITFZJM\n_ U_PIN 003-05.47E \nAND 51-20.990N 003-03.58_45\n *'_8008,_ 8' 43173'53$ ,95 59 -,:_94 ,94 59 !8'_ 8, 5_3 =8:8,856.\nNNNN",
    "clean_text": "ZCZC TA45\n051111 _75: '30 25\nOOSTENDERADIO MS_M\nP _UZ_NGLPMPPAONGP_SIVE LOSTONMT_J_LINE BETWEEN POSITFZJM\n_ U_PIN 003-05.47E\nAND 51-20.990N 003-03.58_45\n*'_8008,_ 8' 43173'53$ ,95 59 -,:_94 ,94 59 !8'_ 8, 5_3 =8:8,856.\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: P uz nglpmppaongp sive lostonmt j line between positfzjm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "P uz nglpmppaongp sive lostonmt j line between positfzjm",
      "Oostenderadio ms m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 79,
    "heading": "2026-04-07 18:14:53 AREA: T",
    "published_at": "2026-04-07 18:14:53",
    "area": "T",
    "message_id": "TA85",
    "text": "ZCZC TA85\n300!_!._:__0 \nOOSTENDERADIO MSI 356/25 \nBE EEZ \nOBSTACLES ON THE SEA BED \n_IN POSM_WEMUEPN 002-29.791E AND \n51-23.557N 002-30.286E\nANCHORING ISHING ARE PROHIBITED \n _IN DISTANCE OF_\nNNNN",
    "clean_text": "ZCZC TA85\n300!_!._:__0\nOOSTENDERADIO MSI 356/25\nBE EEZ\nOBSTACLES ON THE SEA BED\n_IN POSM_WEMUEPN 002-29.791E AND\n51-23.557N 002-30.286E\nANCHORING ISHING ARE PROHIBITED\n_IN DISTANCE OF_\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: Obstacles on the sea bed. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Obstacles on the sea bed",
      "Anchoring ishing are prohibited",
      "In posm wemuepn 002-29.791e and"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 81,
    "heading": "2026-04-07 18:12:55 AREA: T",
    "published_at": "2026-04-07 18:12:55",
    "area": "T",
    "message_id": "TA16",
    "text": "ZCZC TA16\n291851 UTC MA_\nNGZZJHPWPYWFZM_JFX__PQT_TSS-_5_8,$34\nM/V ST. CLE_E_S\nANCHOR AND CHAIN LOST IN POS 51-24.40N 002-39.57E\n\nNNNN",
    "clean_text": "ZCZC TA16\n291851 UTC MA_\nNGZZJHPWPYWFZM_JFX__PQT_TSS-_5_8,$34\nM/V ST. CLE_E_S\nANCHOR AND CHAIN LOST IN POS 51-24.40N 002-39.57E\n\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: Anchor and chain lost in pos 51-24.40n 002-39.57e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Anchor and chain lost in pos 51-24.40n 002-39.57e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 82,
    "heading": "2026-04-07 18:12:18 AREA: T",
    "published_at": "2026-04-07 18:12:18",
    "area": "T",
    "message_id": "TA21",
    "text": "ZCZC TA21\n_17111 UTC APR\nOOSTENDERADIO MSI 142/26\nTSS-O_F _ZZ_WDERIER \nSPECIAL PURPOSE BUOY OWFA, W. FL 5S, \n51-41.69N _6.__4.67E PJHLSFJDPWMMONG_XPS\nHDFJM_PJ_P_XO_QQ UTC\nA_YM\n_NNNN",
    "clean_text": "ZCZC TA21\n_17111 UTC APR\nOOSTENDERADIO MSI 142/26\nTSS-O_F _ZZ_WDERIER\nSPECIAL PURPOSE BUOY OWFA, W. FL 5S,\n51-41.69N _6.__4.67E PJHLSFJDPWMMONG_XPS\nHDFJM_PJ_P_XO_QQ UTC\nA_YM\n_NNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Special purpose buoy owfa, w. fl 5s. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Special purpose buoy owfa, w. fl 5s",
      "51-41.69n 6. 4.67e pjhlsfjdpwmmong xps"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  }
]