[
  {
    "index": 1,
    "heading": "2026-03-26 23:50:09 AREA: T",
    "published_at": "2026-03-26 23:50:09",
    "area": "T",
    "message_id": "",
    "text": "ZCZC__BROM FRP_AY AFTERHOON_SOUTHWEST NEAR GAL__COR_ FA__NOEYOI__7, _!48$-0, F_OR MOD\nSOON MOD\nSOUTH VV_OIKOS\nS SW __ _OR 5 VERY SOON 5 OR 6 SOON 6 OR\n7. MOD SOO\n UP UGH\nKAFIREASFHONJ_JUM_HMGZYM_SOON 6__R 7. MOD OR _OUGH\n_M_T_A__U_PFONJMJ___HMGZXM_RMGJZZM_JM_ZYM\nC_VGBZBDZF_K TO\nNZ_C_DOFZS_G_CDN_E OF\n25.10 5 _R _YM\nSLGT_KTM._2_.+_.__.:+HD___ZCZC",
    "clean_text": "ZCZC__BROM FRP_AY AFTERHOON_SOUTHWEST NEAR GAL__COR_ FA__NOEYOI__7, _!48$-0, F_OR MOD\nSOON MOD\nSOUTH VV_OIKOS\nS SW __ _OR 5 VERY SOON 5 OR 6 SOON 6 OR\n7. MOD SOO\nUP UGH\nKAFIREASFHONJ_JUM_HMGZYM_SOON 6__R 7. MOD OR _OUGH\n_M_T_A__U_PFONJMJ___HMGZXM_RMGJZZM_JM_ZYM\nC_VGBZBDZF_K TO\nNZ_C_DOFZS_G_CDN_E OF\n25.10 5 _R _YM\nSLGT_KTM._2_.+_.__.:+HD___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: S sw or 5 very soon 5 or 6 soon 6 or. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "S sw or 5 very soon 5 or 6 soon 6 or",
      "South vv oikos"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-03-26 23:42:02 AREA: K",
    "published_at": "2026-03-26 23:42:02",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nAIS TRANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\nNAVIGATE _KUUFH_M_CHFZONGONNIKKKKKKKKKKKKKVL_QP_VUN_IVSYGI_GXL__PJON\n  M_Z_P_BPB_KXEXQBKUBEJK__,_0_2_32_-'5' 9! )8_6-\n0-45 3\nFCST UP TO 27 MARCH 22 UTC\nSOUTH ADRIATIC\nS SW 6 OR 7 SOON OVER N CYCLONIC LATER 5\nOR 6. MOD. LOC POOR. T_UNDERSTORM\nNORTH IONIO\nSW 5 OR 6 AND OVER W AND S PART 6 OR 7\nVERY SOON S OF 10 W SW 7 OR 8. MOD OR\nROUGH. LOC _OOR___\n_FAEADLOY_ONJZCHDMFZFZONJUM_EMGZYM_CMG_PYEMJZZM_CMGZYM\nF_MG_ZCZDMJZZONC_MH_M_PYEMY_CD_BMG_ZXM_ZZY__MG_D_PMZ_ONHDCWPYJHZY_ONHYFVZJONJUM__GAEB_IZ_S_FIDY__M CD_P_Z_ONHDCWPYJHZY_ONVZYFHDF_ZJ\n__MKLUO_BEOBPVU__OR 6.\nSLPTNOR MOD\nKITHIRA SEA\nW SW 6 OR 7. MOD OR ROUGH. HOM _OOR\nOUTLOOK JZYMHDPM_H_\n_HOURS\nPROBABLY LOC GALE__FWJMZ_PY_ITA AWONWYFHF_ONNIII_QU_ ONVDCAL _CLN___F\n\n\n_L\n_K_\n\n\n__W__ZCZC",
    "clean_text": "ZCZC KA26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nAIS TRANSMITTER OUT OF SERVICE - LIGHT UNLIT\nBOUEE BASSURELLE\n50-32.80N 000-57.80E\nNAVIGATE _KUUFH_M_CHFZONGONNIKKKKKKKKKKKKKVL_QP_VUN_IVSYGI_GXL__PJON\nM_Z_P_BPB_KXEXQBKUBEJK__,_0_2_32_-'5' 9! )8_6-\n0-45 3\nFCST UP TO 27 MARCH 22 UTC\nSOUTH ADRIATIC\nS SW 6 OR 7 SOON OVER N CYCLONIC LATER 5\nOR 6. MOD. LOC POOR. T_UNDERSTORM\nNORTH IONIO\nSW 5 OR 6 AND OVER W AND S PART 6 OR 7\nVERY SOON S OF 10 W SW 7 OR 8. MOD OR\nROUGH. LOC _OOR___\n_FAEADLOY_ONJZCHDMFZFZONJUM_EMGZYM_CMG_PYEMJZZM_CMGZYM\nF_MG_ZCZDMJZZONC_MH_M_PYEMY_CD_BMG_ZXM_ZZY__MG_D_PMZ_ONHDCWPYJHZY_ONHYFVZJONJUM__GAEB_IZ_S_FIDY__M CD_P_Z_ONHDCWPYJHZY_ONVZYFHDF_ZJ\n__MKLUO_BEOBPVU__OR 6.\nSLPTNOR MOD\nKITHIRA SEA\nW SW 6 OR 7. MOD OR ROUGH. HOM _OOR\nOUTLOOK JZYMHDPM_H_\n_HOURS\nPROBABLY LOC GALE__FWJMZ_PY_ITA AWONWYFHF_ONNIII_QU_ ONVDCAL _CLN___F\n\n_L\n_K_\n\n__W__ZCZC",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV CHERBOURG",
      "CHERBOURG"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text reports an aid-to-navigation fault near 50-32.80N 000-57.80E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ais transmitter out of service - light unlit",
      "Probably loc gale fwjmz py ita awonwyfhf onniii qu onvdcal cln f",
      "Or 6. mod. loc poor. t understorm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-03-26 23:40:49 AREA: K",
    "published_at": "2026-03-26 23:40:49",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED BY:\n50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-7 _UGP_N\nH HBF_GO G.:._)3/__E_C_QN 001-12.02E\n50-19.74N 001-04.77E\n50-20.11N 001-04.93E\n50-19.36N 001-12.46E\n50-15.97N 001-20.08E\n50-13.73N 001-21.92E\nNNNN",
    "clean_text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKS\nCABLE LAYING OPERATION\nFROM 050000 UTC MAR 26\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, ANCHORING AND DIVING WITHIN THIS AREA\nAREA BOUNDED BY:\n50-10.84N 001-29.44E\n50-10.44N 001-29.13E\n50-13.61N 001-7 _UGP_N\nH HBF_GO G.:._)3/__E_C_QN 001-12.02E\n50-19.74N 001-04.77E\n50-20.11N 001-04.93E\n50-19.36N 001-12.46E\n50-15.97N 001-20.08E\n50-13.73N 001-21.92E\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CAYEUX SUR MER",
      "WIGHT LARGE CAYEUX SUR MER"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text sets local operating restrictions near 50-10.84N 001-29.44E; 50-10.44N 001-29.13E, including anchoring, fishing, or towing limits.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoring and diving within this area",
      "Cable laying operation",
      "Until further notice"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 4,
    "heading": "2026-03-26 23:40:15 AREA: K",
    "published_at": "2026-03-26 23:40:15",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLI_KIDOY - I_HT UNLFHONGLEZEM_FY_MJCWON\nH _U BU_PPWAQUMEPE\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 029/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nLI_KIDOY - I_HT UNLFHONGLEZEM_FY_MJCWON\nH _U BU_PPWAQUMEPE\nNAVIGATE WITH CAUTION\nNNNN",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV CHERBOURG",
      "CHERBOURG"
    ],
    "display_region_heading": "United Kingdom / France - Channel Islands and north-east French coast",
    "display_region_label": "Niton (France relay), United Kingdom / France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom / France - Channel Islands and north-east French coast. Readable text says: Li kidoy - i ht unlfhonglezem fy mjcwon. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Li kidoy - i ht unlfhonglezem fy mjcwon",
      "Avurnav cherbourg 029/26",
      "Dover - dst manche est"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-03-26 23:29:35 AREA: T",
    "published_at": "2026-03-26 23:29:35",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_ JA7_\n,\n7_Z\n_MG_HXM__LONG_S_BY_M\nM__\n_7_5_2_-'534, _-)58:\n_HIPS E FEB _MRU_3721:*1_2_0_\n55-32N _PQ_MXE 55-32_4 0_9-50_3\n/55_:_$+6:_,7-9/_-_____+:+: *-31\n26_730 UTC FEB 22\nVARNA RADIO ON BEHALF OF RO_ZHIBV_\n_ZD_\nQFBKTM__SSMJZS_J_ O_GZI_TA_DJN___NUMFZZW_D_K______UUU_ZCZC",
    "clean_text": "ZCZ_ JA7_\n,\n7_Z\n_MG_HXM__LONG_S_BY_M\nM__\n_7_5_2_-'534, _-)58:\n_HIPS E FEB _MRU_3721:*1_2_0_\n55-32N _PQ_MXE 55-32_4 0_9-50_3\n/55_:_$+6:_,7-9/_-_____+:+: *-31\n26_730 UTC FEB 22\nVARNA RADIO ON BEHALF OF RO_ZHIBV_\n_ZD_\nQFBKTM__SSMJZS_J_ O_GZI_TA_DJN___NUMFZZW_D_K______UUU_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: Varna radio on behalf of ro zhibv. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Varna radio on behalf of ro zhibv"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-03-26 23:21:34 AREA: J",
    "published_at": "2026-03-26 23:21:34",
    "area": "J",
    "message_id": "JA26",
    "text": "ZCZC JA26\n25=809=_OXMM_TIC\nSHIPS EXERCISP_S $12_00 U_C AREA TEMPORARILY DANGERO DMHZMJDFF_F_MLY_YO__DPMPPN 02_-08.00E 55-20.00N 020-2_.00E\n55-07.60N _MYPN 020-08.00E\nCANCEL MESSAGE 3022:0 UTC APR\nNNNN",
    "clean_text": "ZCZC JA26\n25=809=_OXMM_TIC\nSHIPS EXERCISP_S $12_00 U_C AREA TEMPORARILY DANGERO DMHZMJDFF_F_MLY_YO__DPMPPN 02_-08.00E 55-20.00N 020-2_.00E\n55-07.60N _MYPN 020-08.00E\nCANCEL MESSAGE 3022:0 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 exercisp s $12 00 u c area temporarily dangero dmhzmjdff f mly yo dpmppn 02 -08.00e 55-20.00n 020-2 .00e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ships exercisp s $12 00 u c area temporarily dangero dmhzmjdff f mly yo dpmppn 02 -08.00e 55-20.00n 020-2 .00e",
      "Cancel message 3022:0 utc apr"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-03-26 23:19:22 AREA: J",
    "published_at": "2026-03-26 23:19:22",
    "area": "J",
    "message_id": "JA28",
    "text": "ZCZC JA28\n251815 UTC MARH\n\nKALING_AD NAV WARN 052/26\n5*_*_06__'((,:8'73' 312100 UTI MAT THRK E_WQG_\n_B_C_\nICTA_U_MHZMJEF__FMLY__ CR_P_N _PQOAPMPE 55-30.00N 020-15.00T\n55-04.00N_020-15.00E 54-57.50!, _0-3-_6.0=_54_-57.50N 019-55.00E 5:-5_6:_N 019-50.__,_\n_54-)0.0_*2_(_(-)8,_4-$ ,-= 2-4,,_051/26\n\nSOUTHEJHPYMLSHFXO\nTJ\nTT\nSXFJKATPMPPE\n55-03.00N 015-3=00$_:_6_646_+_3_)ZCZC",
    "clean_text": "ZCZC JA28\n251815 UTC MARH\n\nKALING_AD NAV WARN 052/26\n5*_*_06__'((,:8'73' 312100 UTI MAT THRK E_WQG_\n_B_C_\nICTA_U_MHZMJEF__FMLY__ CR_P_N _PQOAPMPE 55-30.00N 020-15.00T\n55-04.00N_020-15.00E 54-57.50!, _0-3-_6.0=_54_-57.50N 019-55.00E 5:-5_6:_N 019-50.__,_\n_54-)0.0_*2_(_(-)8,_4-$ ,-= 2-4,,_051/26\n\nSOUTHEJHPYMLSHFXO\nTJ\nTT\nSXFJKATPMPPE\n55-03.00N 015-3=00$_:_6_646_+_3_)ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Kaling ad nav warn 052/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Kaling ad nav warn 052/26",
      "Southejhpymlshfxo",
      "Sxfjkatpmppe"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-03-26 23:17:43 AREA: J",
    "published_at": "2026-03-26 23:17:43",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA3_\n_5-$Z_MG H_M_YONON__IX_UW_9_(:3)_XXGHKQZ__QAXOAJPELJ_PW\n_89$80__=_(2)__)_RM\nT_INGER'!!'_94_.!_._6__UNDERWATER OPERATIONS BY MV 'A_THRA'_\n__:'SVDM6'\nAROUND POSITION 54-52.7N 014-00,0E\nBERTH OF 500 METRES REQUESTED.\nNNNN",
    "clean_text": "ZCZC JA3_\n_5-$Z_MG H_M_YONON__IX_UW_9_(:3)_XXGHKQZ__QAXOAJPELJ_PW\n_89$80__=_(2)__)_RM\nT_INGER'!!'_94_.!_._6__UNDERWATER OPERATIONS BY MV 'A_THRA'_\n__:'SVDM6'\nAROUND POSITION 54-52.7N 014-00,0E\nBERTH OF 500 METRES REQUESTED.\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: Around position 54-52.7n 014-00,0e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Around position 54-52.7n 014-00,0e",
      "Berth of 500 metres requested"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-03-26 23:13:34 AREA: T",
    "published_at": "2026-03-26 23:13:34",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_FORECAST\nPADT _\nWARNING NR 2_7__:6*__=(\n:3:___0  6*=8*(_$___9._OR _T SOON_S__WP\nFNH_\nP_ SOH_TO ROSGH\nEAST_KRIO_K\n_XLZQV_P__FXQPP_\nQF_QP__F_ _ ZN__W OF *_______-___2_-__22*!=_/*_(./_.___-*9_3/26\nS_UTHERN BALTIC.3PM\nAUE TO_ MILITARY EXERCISES ZONE IS CLOSED FOR SHIPPINGVAN_ FISHENY:\nA-6 CENTERED 54-39.27N 016-36.59E\nFROM 2026-03-TO QW_E_____59 2026-04-04 05:00=- 12:0_5:\nCANCEL 041200 UTC APR\nNNDN\n\nWZCZC",
    "clean_text": "ZCZ_FORECAST\nPADT _\nWARNING NR 2_7__:6*__=(\n:3:___0 6*=8*(_$___9._OR _T SOON_S__WP\nFNH_\nP_ SOH_TO ROSGH\nEAST_KRIO_K\n_XLZQV_P__FXQPP_\nQF_QP__F_ _ ZN__W OF *_______-___2_-__22*!=_/*_(./_.___-*9_3/26\nS_UTHERN BALTIC.3PM\nAUE TO_ MILITARY EXERCISES ZONE IS CLOSED FOR SHIPPINGVAN_ FISHENY:\nA-6 CENTERED 54-39.27N 016-36.59E\nFROM 2026-03-TO QW_E_____59 2026-04-04 05:00=- 12:0_5:\nCANCEL 041200 UTC APR\nNNDN\n\nWZCZC",
    "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: Aue to military exercises zone is closed for shippingvan fisheny. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Aue to military exercises zone is closed for shippingvan fisheny",
      "A-6 centered 54-39.27n 016-36.59e",
      "Warning nr 2 7 :6 ("
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 16,
    "heading": "2026-03-26 23:10:02 AREA: G",
    "published_at": "2026-03-26 23:10:02",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART N GAOITHE WINDFARM.\n1. NNG E L_ZEM\nHE Y_PG_M\n_UFI_IKBEG_MWM_MJMLCZEM\nHE_ U_PG_M_APOMIW AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "clean_text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART N GAOITHE WINDFARM.\n1. NNG E L_ZEM\nHE Y_PG_M\n_UFI_IKBEG_MWM_MJMLCZEM\nHE_ U_PG_M_APOMIW AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "He u pg m apomiw ais inoperative",
      "Neart n gaoithe windfarm",
      "1. nng e l zem"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 17,
    "heading": "2026-03-26 23:09:37 AREA: G",
    "published_at": "2026-03-26 23:09:37",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 LKZEM_HZ_P_N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 LKZEM_HZ_P_N 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 lkzem hz p n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl spm3 lkzem hz p n 001-33.5e temporarily removed",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 18,
    "heading": "2026-03-26 23:09:15 AREA: G",
    "published_at": "2026-03-26 23:09:15",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT_M \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT_M\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon south buoy 53-12.5n 001-25.6e unlit m.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit m",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 19,
    "heading": "2026-03-26 23:08:37 AREA: G",
    "published_at": "2026-03-26 23:08:37",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WFW__A_B__M_M TURBINE FOG SIGNALS INOPERATIVE:=\n,__$01, 53-20.1N 000-49.1E. \nB. S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK WFW__A_B__M_M TURBINE FOG SIGNALS INOPERATIVE:=\n,__$01, 53-20.1N 000-49.1E.\nB. S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Race bank wfw a b m m turbine fog signals inoperative",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 20,
    "heading": "2026-03-26 23:08:05 AREA: G",
    "published_at": "2026-03-26 23:08:05",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "ORWELL GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative",
      "Orwell gas field northwestwards",
      "2. cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 21,
    "heading": "2026-03-26 23:07:36 AREA: G",
    "published_at": "2026-03-26 23:07:36",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\n_2-.\n__TU_MONGDC_LP__\nRAVENSPURN NORTH GAS FIELD. \nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\n_2-.\n__TU_MONGDC_LP__\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-03-26 23:07:11 AREA: G",
    "published_at": "2026-03-26 23:07:11",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55-04.4n 001-27.8w off air",
      "Mrcc humber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 23,
    "heading": "2026-03-26 23:06:19 AREA: G",
    "published_at": "2026-03-26 23:06:19",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FARM.\nTURBINE B10 5\n-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FARM.\nTURBINE B10 5\n-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage.",
    "decoded_highlights": [
      "-06.8n 001-23.6w unlit and fog signal inoperative",
      "Turbine b10 5",
      "Blyth offshore demonstrator wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 24,
    "heading": "2026-03-26 23:05:47 AREA: G",
    "published_at": "2026-03-26 23:05:47",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 5_.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM 49/27-ED 5_.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. platform 49/27-ed 5 .6n 002-12.6e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "1. platform 49/27-ed 5 .6n 002-12.6e, unlit and all navaids inoperative",
      "Leman gas field",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 25,
    "heading": "2026-03-26 23:04:52 AREA: G",
    "published_at": "2026-03-26 23:04:52",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHE\nLAND.\n1. MF R/T AND DSC SERVIMPJM_YZBM__PPJJMJIIIK 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHE\nLAND.\n1. MF R/T AND DSC SERVIMPJM_YZBM__PPJJMJIIIK 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 1. mf r/t and dsc servimpjm yzbm ppjjmjiiik 57-07.7n 002-03.2w off air.",
    "decoded_highlights": [
      "1. mf r/t and dsc servimpjm yzbm ppjjmjiiik 57-07.7n 002-03.2w off air",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 26,
    "heading": "2026-03-26 23:04:21 AREA: G",
    "published_at": "2026-03-26 23:04:21",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA54).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 53-11.9N 002-29.1E.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "Bessemer gas field",
      "2. cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 27,
    "heading": "2026-03-26 23:00:15 AREA: G",
    "published_at": "2026-03-26 23:00:15",
    "area": "G",
    "message_id": "GE92",
    "text": "ZCZC GE92\n,_!**:02.)_-5 - \nMGZMHDCM\n_MAR\n\nGALE WARNINGS: VIKING FAIR ISLE\n\nTHE GENERAL SITUATION AT MIDDAY\nHIGH 100 MILES W OF FITZROY 1033, DISSIPATING BY MIDDAY TOMORROW. ATLANTIC LOW EXP JUST S OF ICELAND 974 BY SAME TIME\n\n24-HR JORECASTS\nH\n_VIKINGO_\nNW 4 TO 6, BACKVJUM_EMGHZM_S_M\nF_MGYZC_DMZYM_IEQ_E_XEWL_H__JOAUOJ_EBHEK___24'. GOOD OCNL POOR\n\nE FORTFPJONG_BACK SW, 4 /\n_ _6.._6+:_$.+6._063.6_:$_._)0_.9$ )54. RAIN OR SHWRS. GOOD OCNL POOR\n\nW FORTIES CROMARTY FORTDONGJUM_YMGHZM\n_OD OR ROUGH. RAIN OR SHWRS. GOOD OCNL MOD\n\nTYNE W DOGGER\nVRB 4, BECMG SW 4 TO 6 FOR A TIME. ROUGH BECMG MOD. RAIN OR SHWRS. MOD OR GOOD\n\nE DOGGER\nNW, BACK SW, 4 TO 6. ROUGH OR VERY ROUGH, BECMUG MOD LTR. RAIN LTR. GOOD BECMG POOR LTR\n\nHUMBER THAMES\nNW, BACK SW, 4 TO 6. MOD, OCNL ROUGH AT FIRST. SHWRS, RAIN LTR. GOOD, BECMG POOR LTR\n\nFAIR ISLE\nS, VEE, 6 TO GALE _+:+: 0)14\n262102 UTC MAR 26\nWAVE HEIGHT WARNING  300CM TSS TERSCHELLIN_ GERMAN BIGHT ISSUED AT 261700_UOC _YONON_ZHFPYM_PJJPSJM_FHDMMSP_HD_Z.\n __UGBMYPMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINERS.\nNNNN",
    "clean_text": "ZCZC GE92\n,_!**:02.)_-5 -\nMGZMHDCM\n_MAR\n\nGALE WARNINGS: VIKING FAIR ISLE\n\nTHE GENERAL SITUATION AT MIDDAY\nHIGH 100 MILES W OF FITZROY 1033, DISSIPATING BY MIDDAY TOMORROW. ATLANTIC LOW EXP JUST S OF ICELAND 974 BY SAME TIME\n\n24-HR JORECASTS\nH\n_VIKINGO_\nNW 4 TO 6, BACKVJUM_EMGHZM_S_M\nF_MGYZC_DMZYM_IEQ_E_XEWL_H__JOAUOJ_EBHEK___24'. GOOD OCNL POOR\n\nE FORTFPJONG_BACK SW, 4 /\n_ _6.._6+:_$.+6._063.6_:$_._)0_.9$ )54. RAIN OR SHWRS. GOOD OCNL POOR\n\nW FORTIES CROMARTY FORTDONGJUM_YMGHZM\n_OD OR ROUGH. RAIN OR SHWRS. GOOD OCNL MOD\n\nTYNE W DOGGER\nVRB 4, BECMG SW 4 TO 6 FOR A TIME. ROUGH BECMG MOD. RAIN OR SHWRS. MOD OR GOOD\n\nE DOGGER\nNW, BACK SW, 4 TO 6. ROUGH OR VERY ROUGH, BECMUG MOD LTR. RAIN LTR. GOOD BECMG POOR LTR\n\nHUMBER THAMES\nNW, BACK SW, 4 TO 6. MOD, OCNL ROUGH AT FIRST. SHWRS, RAIN LTR. GOOD, BECMG POOR LTR\n\nFAIR ISLE\nS, VEE, 6 TO GALE _+:+: 0)14\n262102 UTC MAR 26\nWAVE HEIGHT WARNING 300CM TSS TERSCHELLIN_ GERMAN BIGHT ISSUED AT 261700_UOC _YONON_ZHFPYM_PJJPSJM_FHDMMSP_HD_Z.\n__UGBMYPMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINERS.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "DOGGER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "S, vee, 6 to gale : : 0)14",
      "Gale warnings: viking fair isle",
      "Od or rough. rain or shwrs. good ocnl mod"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-03-26 22:57:22 AREA: T",
    "published_at": "2026-03-26 22:57:22",
    "area": "T",
    "message_id": "TA13",
    "text": "ZCZC TA13\n262038 UTC MAR \nOOSTENDERADIO MSI 132/26\nVAARGEUL 1 \nLIGHTBUOY VG5, 51-24.73N 002-56.78E DRIFTING \nSHIPPING IS R_STED TO REPORT SIGHTIN__ONGHZMZJHPWM_Z_H_CYWONGOIII_\nKKKKKKKKKKKKKKKKF_R_TJ__KJ_Y__ J\nN_AXAXM__4___.\n_WQ_\n \nDX_XMQ_EZ_C SEA NA_VAZCHDPYLMGJZCHDIJHPYI_XL_BS\nHFPQ\n0(2_81\n_, AIS, RADAR AND D_(3K_KEEQBC_B1,-__3_,' 3_(1\n__KBKBBKKELO(,_:_)_+.2_____ZCZC",
    "clean_text": "ZCZC TA13\n262038 UTC MAR\nOOSTENDERADIO MSI 132/26\nVAARGEUL 1\nLIGHTBUOY VG5, 51-24.73N 002-56.78E DRIFTING\nSHIPPING IS R_STED TO REPORT SIGHTIN__ONGHZMZJHPWM_Z_H_CYWONGOIII_\nKKKKKKKKKKKKKKKKF_R_TJ__KJ_Y__ J\nN_AXAXM__4___.\n_WQ_\n\nDX_XMQ_EZ_C SEA NA_VAZCHDPYLMGJZCHDIJHPYI_XL_BS\nHFPQ\n0(2_81\n_, AIS, RADAR AND D_(3K_KEEQBC_B1,-__3_,' 3_(1\n__KBKBBKKELO(,_:_)_+.2_____ZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Lightbuoy vg5, 51-24.73n 002-56.78e drifting. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lightbuoy vg5, 51-24.73n 002-56.78e drifting",
      "Ais, radar and d (3k keeqbc b1,- 3 ,' 3 (1",
      "Shipping is r sted to report sightin onghzmzjhpwm z h cywongoiii"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 29,
    "heading": "2026-03-26 22:44:33 AREA: E",
    "published_at": "2026-03-26 22:44:33",
    "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": 30,
    "heading": "2026-03-26 22:44:12 AREA: E",
    "published_at": "2026-03-26 22:44:12",
    "area": "E",
    "message_id": "EA22",
    "text": "ZCZC EA22\nWZ 185/26 \nWIGHT. \nNEEDLES LGHT_\nH_P__CG_M\n_ _H_HGUM___MJF_SMFZ_PYHF\nP_BI \nNNNN",
    "clean_text": "ZCZC EA22\nWZ 185/26\nWIGHT.\nNEEDLES LGHT_\nH_P__CG_M\n_ _H_HGUM___MJF_SMFZ_PYHF\nP_BI\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "NEEDLES"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text says: Needles lght. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Needles lght"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 31,
    "heading": "2026-03-26 22:43:52 AREA: E",
    "published_at": "2026-03-26 22:43:52",
    "area": "E",
    "message_id": "EA27",
    "text": "ZCZC EA27\nWZ 192/26 \nLUNDY. \nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT. \n \nNNNN",
    "clean_text": "ZCZC EA27\nWZ 192/26\nLUNDY.\nLAVERNOCK SPIT BUOY 51-23.0N 003-10.8W UNLIT.\n\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "LUNDY"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text says: Lavernock spit buoy 51-23.0n 003-10.8w unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lavernock spit buoy 51-23.0n 003-10.8w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-03-26 22:43:27 AREA: E",
    "published_at": "2026-03-26 22:43:27",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FEO BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FEO BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service feo bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 33,
    "heading": "2026-03-26 22:43:04 AREA: E",
    "published_at": "2026-03-26 22:43:04",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
    "decoded_highlights": [
      "South cardinal buoy 50-01.2n 005-40.4w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 34,
    "heading": "2026-03-26 22:40:14 AREA: E",
    "published_at": "2026-03-26 22:40:14",
    "area": "E",
    "message_id": "EE73",
    "text": "ZCZC EE73\nISSUED BY THE MET OFFICE AT 1900 ON THU 26 MAR\n\nGALE WARNINGS: FITAPZ_ONONGHDIIIIENERAL SITUATION AT MIDDAY\nHIGH 100 MILES W OF FITZROY 1033!._2!**!____.)3._!2__._+_+6_+_88((\n_.__'_!_.'+_.05MQCJHMJMZ_M_KKFB__TY_E_ __XI.3\n\n24-HR FORECASTS\n\nTHAMES\nNW, BACK SW, 4 TO 6. MOD, OCNL ROUGH AT FIRST. SHWRS, RAIN LTR. GOOD, BECMG POOR LTR\n\nDOVER WIGHT PORTLAND PLYMOUTH\nNW 4, BACK SW 4 ___.\n_)5 94 .9$, OCNL ROUGH IN PLYMOUTH. RAIN LTR. GOOD, OCNL POOR LTR\n\nBISCAY\nN, BECMG VRB, 2_\nZ \nY_MGYZC_DM_P_MOD, OCML Z_\nLTR IN FAR NE. SHWRS. GOOD OCNL MOD\n\nS FITZROY\nNE 6 TO GALE 8. ROUGH OR VERY ROUGH, OCNL MOD LTR.__!-84. GOOD\n\nM FITZROY SOLE\nW, VEER NW LTR, 4 TO 6. MOD OR ROUGH, OCNL VERY RO_GH LTR. OCCASIONAL RAIN. GOOD OCNL MOD\n\nLUNDY FASTNET\nSW, VEER NW, 4 TO SLT OR MOD FMFYFJDMJP_MGZHDPY_FJ_M_ZWMZYMYZCD_M_Z_SM\nPYEMY_C_DMSHYMFMVB_CQ___H_SIONAL RAIN, SHWRS LTR. GOOD OCNL POOYONONGZCHSZZVM_SU__UYMGDZCYJ_GALES EXP IN FITZROY. STRG WINDS VTMFMSSMZHDPYMYPJONGONNIIIZCZC",
    "clean_text": "ZCZC EE73\nISSUED BY THE MET OFFICE AT 1900 ON THU 26 MAR\n\nGALE WARNINGS: FITAPZ_ONONGHDIIIIENERAL SITUATION AT MIDDAY\nHIGH 100 MILES W OF FITZROY 1033!._2!**!____.)3._!2__._+_+6_+_88((\n_.__'_!_.'+_.05MQCJHMJMZ_M_KKFB__TY_E_ __XI.3\n\n24-HR FORECASTS\n\nTHAMES\nNW, BACK SW, 4 TO 6. MOD, OCNL ROUGH AT FIRST. SHWRS, RAIN LTR. GOOD, BECMG POOR LTR\n\nDOVER WIGHT PORTLAND PLYMOUTH\nNW 4, BACK SW 4 ___.\n_)5 94 .9$, OCNL ROUGH IN PLYMOUTH. RAIN LTR. GOOD, OCNL POOR LTR\n\nBISCAY\nN, BECMG VRB, 2_\nZ\nY_MGYZC_DM_P_MOD, OCML Z_\nLTR IN FAR NE. SHWRS. GOOD OCNL MOD\n\nS FITZROY\nNE 6 TO GALE 8. ROUGH OR VERY ROUGH, OCNL MOD LTR.__!-84. GOOD\n\nM FITZROY SOLE\nW, VEER NW LTR, 4 TO 6. MOD OR ROUGH, OCNL VERY RO_GH LTR. OCCASIONAL RAIN. GOOD OCNL MOD\n\nLUNDY FASTNET\nSW, VEER NW, 4 TO SLT OR MOD FMFYFJDMJP_MGZHDPY_FJ_M_ZWMZYMYZCD_M_Z_SM\nPYEMY_C_DMSHYMFMVB_CQ___H_SIONAL RAIN, SHWRS LTR. GOOD OCNL POOYONONGZCHSZZVM_SU__UYMGDZCYJ_GALES EXP IN FITZROY. STRG WINDS VTMFMSSMZHDPYMYPJONGONNIIIZCZC",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "LUNDY",
      "PORTLAND"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention gales, ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warnings: fitapz ononghdiiiieneral situation at midday",
      "Ne 6 to gale 8. rough or very rough, ocnl mod ltr. !-84. good",
      "Pyemy c dmshymfmvb cq h sional rain, shwrs ltr. good ocnl pooyonongzchszzvm su uymgdzcyj gales exp in fitzroy. strg winds vtmfmssmzhdpymypjongonniiizczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 35,
    "heading": "2026-03-26 22:21:49 AREA: C",
    "published_at": "2026-03-26 22:21:49",
    "area": "C",
    "message_id": "",
    "text": "ZCZC CWARNI__U_VSIVE OBJECTS\nNAVIGATION PROHI_TED IN AREA BOUDED BY\n45-54.7N 030-34.573=\n:_!_-5(.)=/_1-_0-39.7E\n45-48.2__ 030-33.3E\nN_OMYE\n2. CANCEL NR 38/25\n',,,,\n\n_7_2_+-__)89717!6/=30 .-6 24\n__UKRAINE COATA_ _ZAARNING 44/24 _+28887_\n+75___-__131_13_4_\n_41__-_=/=_62_56___5_796\n_\n_1N  030-5!8_09,888__!**!+9,6_++.+:!!(+:+:./'80:_ *7, 23\nUKRAINE COASTAL WARNING 90/23 ODESA-NAVTEX\nDANUBE RIVER\nKILIYS_VQMBZCHDONYPMYICIKZBM\n__BC___MH_M_II_MU KM\n\nANCHZ\nF_Y_M_ZY\nSSMH_S OF VES_ELS IS\nPTO\nIBD BY PSN\n45-18-7__'3\n\n\n3_*_*_*_+:_685:_-._7_\n,_$_,\n_'0*!(!'.6_!+._88(___**!+9,2._$_888:( 9! 09''8_8)_56 59 '34=8:3 '9.3\n,2!._+._!8:1_-8$' 59 ,-=8_-589_, :-, _3 __8!53$=\n!49. '5-589, 94 .8''8__\n_796!,)___5' !_. ,95 9034753\n,,,9\n+:+:(7\n :)!_/=*6*_631_2-_\n72 _4_\nUKRA_NE COASTAL WARNING 118/22 ODESA-NAVTEX\nSEA OF AZOV\n\nPIRACY ATTACK DANGER FROM NAVAL SHIPS\nOF THE RUSSIAXM_PWIYI_CION SSMH_WPJ__C_ISEIXTRE_U_P__SY_P_AZ_ZCHG CI91\n\n3)0225*0 __5!__7\n0-98(8_TC_YFPMZJHSIL\nM\nY\n_TVZCZC",
    "clean_text": "ZCZC CWARNI__U_VSIVE OBJECTS\nNAVIGATION PROHI_TED IN AREA BOUDED BY\n45-54.7N 030-34.573=\n:_!_-5(.)=/_1-_0-39.7E\n45-48.2__ 030-33.3E\nN_OMYE\n2. CANCEL NR 38/25\n',,,,\n\n_7_2_+-__)89717!6/=30 .-6 24\n__UKRAINE COATA_ _ZAARNING 44/24 _+28887_\n+75___-__131_13_4_\n_41__-_=/=_62_56___5_796\n_\n_1N 030-5!8_09,888__!**!+9,6_++.+:!!(+:+:./'80:_ *7, 23\nUKRAINE COASTAL WARNING 90/23 ODESA-NAVTEX\nDANUBE RIVER\nKILIYS_VQMBZCHDONYPMYICIKZBM\n__BC___MH_M_II_MU KM\n\nANCHZ\nF_Y_M_ZY\nSSMH_S OF VES_ELS IS\nPTO\nIBD BY PSN\n45-18-7__'3\n\n3_*_*_*_+:_685:_-._7_\n,_$_,\n_'0*!(!'.6_!+._88(___**!+9,2._$_888:( 9! 09''8_8)_56 59 '34=8:3 '9.3\n,2!._+._!8:1_-8$' 59 ,-=8_-589_, :-, _3 __8!53$=\n!49. '5-589, 94 .8''8__\n_796!,)___5' !_. ,95 9034753\n,,,9\n+:+:(7\n:)!_/=*6*_631_2-_\n72 _4_\nUKRA_NE COASTAL WARNING 118/22 ODESA-NAVTEX\nSEA OF AZOV\n\nPIRACY ATTACK DANGER FROM NAVAL SHIPS\nOF THE RUSSIAXM_PWIYI_CION SSMH_WPJ__C_ISEIXTRE_U_P__SY_P_AZ_ZCHG CI91\n\n3)0225*0 __5!__7\n0-98(8_TC_YFPMZJHSIL\nM\nY\n_TVZCZC",
    "resolved_station_name": "Odesa",
    "resolved_country": "Ukraine",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North-west Black Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "UKRAINE",
      "UKRAINE COASTAL"
    ],
    "display_region_heading": "Ukraine - North-west Black Sea",
    "display_region_label": "Odesa, Ukraine",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Ukraine - North-west Black Sea. Readable text says: Ukra ne coastal warning 118/22 odesa-navtex. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ukra ne coastal warning 118/22 odesa-navtex",
      "Ukraine coastal warning 90/23 odesa-navtex",
      "Navigation prohi ted in area bouded by"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 36,
    "heading": "2026-03-26 21:45:55 AREA: W",
    "published_at": "2026-03-26 21:45:55",
    "area": "W",
    "message_id": "",
    "text": "ZCZC WA_6\n _-_:6__.__:9-)9X__(__*_)_KBH__:\n:_1$10.1_N 003-56.61E/42-58.97_,\n3_-45 !47008)\n '28$3 _345_ 43173'53$\n2. CA_CEL AVURNAV TOULON 108/26\n39\n*=.0'=_$!*.1__\n__2_4__'__\n____5_,488_____*/_6V__WQ_\nD_M_F__0__2,3 :9-!5-) 2-4,8,_ 5_/25 ZJ__IA__\nBLACK SEA\nNORT_WT_VUUFCI__AZHONN_\nIB\n__P_FI_I\nMISSURP\n_WM __V_PSMYM\nH_NN\n_FUF_U_U___ZCZ___KI_CJAUZCZC",
    "clean_text": "ZCZC WA_6\n_-_:6__.__:9-)9X__(__*_)_KBH__:\n:_1$10.1_N 003-56.61E/42-58.97_,\n3_-45 !47008)\n'28$3 _345_ 43173'53$\n2. CA_CEL AVURNAV TOULON 108/26\n39\n*=.0'=_$!*.1__\n__2_4__'__\n____5_,488_____*/_6V__WQ_\nD_M_F__0__2,3 :9-!5-) 2-4,8,_ 5_/25 ZJ__IA__\nBLACK SEA\nNORT_WT_VUUFCI__AZHONN_\nIB\n__P_FI_I\nMISSURP\n_WM __V_PSMYM\nH_NN\n_FUF_U_U___ZCZ___KI_CJAUZCZC",
    "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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: 2. ca cel avurnav toulon 108/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. ca cel avurnav toulon 108/26",
      "Black sea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 37,
    "heading": "2026-03-26 21:41:08 AREA: W",
    "published_at": "2026-03-26 21:41:08",
    "area": "W",
    "message_id": "WA19",
    "text": "ZCZC WA19\nAVURNAV TOFLON 203/26\nPROVENCE - LIGURE - LION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\n FROM 300000 UTC MAR 26 TO 012359 UTC APR 26\n SCIENTIFIC SURVEY AND GLIDER IMPLEMENTATION BY MV ATALANHPMFMPYMLZCWPWO_QBS\n_PUAROMPPE\n 43-20.00N 007-49.00E\n 43-20.00N 007-56.80E\n 43-27.00N 083,58!8: '74=36\n !49. 020000 UTC APR 26 TO 0423_+._:_.YM\nA_ONMGJ_FPHF!_.*_6\n0_.2._'!206.!_.3,5-589, _6 .= -5-)-,53 8, 09'8589, :\n,_67UB _PPRARQMWPE\n3. SCIENTIFIC SURVEY\n FROM 050000 UTC APR 26 TO 062359 UTC APR 26\n SCIENTIFIC SURVEY AND GLIDER IMPLEMENTATION BY MV ATALANTE IN AERA 30 BOUNDED BY :\n 43-10.0N 005-36.0E\n 43-10.0N 005-00.0E\n 43-00.0N 005-00.0E\n 43-00.0!, 0057_ ._E\n 43-07.0N 005-46.0E\n COASTLINE\n \n AND IN POSITION :\n 42-25.6N THWEEU_GP_N\nYBMTJXFPHF!_.*_6\n0_9,._6+_._C__MGVH_MYM\n__MGHM_FUPHZMGKHFM_M\n_CIENTIFIC SURVEY _D GLIDER IMPLEMENTATION BY MV ATALAN_E NN_AERAV6_52=_9_:_3-10.0N 0_5-36.0E\n 43-10.0__ 42-40.0N 005-00.0___\n 42-46.0N 005-10.0E\n 43-07.0N 005-46.0E\nCMD_\nZINE_\n \n AND LN POSITION PMG\n_Y\n\n_UU__\nA__ZC_CMK_I_AV TOULON 202/26\nLIGURE _ PROVENCE\nSPECIAL OPERATIONS\n7. HYDROGRAPHIC SURVEY ACTIVITY - SCIENTIFIC SURVEY\n FROM 300200 _TC \nZ_U_RC26\n BY MV T_THS_II IN AERA 23-24-2_-26-27-28-29 O\n_SI_ :\n 43-27.00_ 006-55.00/3/43-06.00NN006-55.00E\n REAPPMPPN 00007-31.60_3/43-\n______\n___77__GPO_B_CQ__HLO_B_CC _B__M\nUHM_C_ 007-24.40E\n COASTLINE\n (CHART FR75\n7)\n 32!20.)06_$.60_:0*_029,\n._3) 5_8__ 050059 UTC APR 26NNNN",
    "clean_text": "ZCZC WA19\nAVURNAV TOFLON 203/26\nPROVENCE - LIGURE - LION\nSPECIAL OPERATIONS\n1. SCIENTIFIC SURVEY\nFROM 300000 UTC MAR 26 TO 012359 UTC APR 26\nSCIENTIFIC SURVEY AND GLIDER IMPLEMENTATION BY MV ATALANHPMFMPYMLZCWPWO_QBS\n_PUAROMPPE\n43-20.00N 007-49.00E\n43-20.00N 007-56.80E\n43-27.00N 083,58!8: '74=36\n!49. 020000 UTC APR 26 TO 0423_+._:_.YM\nA_ONMGJ_FPHF!_.*_6\n0_.2._'!206.!_.3,5-589, _6 .= -5-)-,53 8, 09'8589, :\n,_67UB _PPRARQMWPE\n3. SCIENTIFIC SURVEY\nFROM 050000 UTC APR 26 TO 062359 UTC APR 26\nSCIENTIFIC SURVEY AND GLIDER IMPLEMENTATION BY MV ATALANTE IN AERA 30 BOUNDED BY :\n43-10.0N 005-36.0E\n43-10.0N 005-00.0E\n43-00.0N 005-00.0E\n43-00.0!, 0057_ ._E\n43-07.0N 005-46.0E\nCOASTLINE\n\nAND IN POSITION :\n42-25.6N THWEEU_GP_N\nYBMTJXFPHF!_.*_6\n0_9,._6+_._C__MGVH_MYM\n__MGHM_FUPHZMGKHFM_M\n_CIENTIFIC SURVEY _D GLIDER IMPLEMENTATION BY MV ATALAN_E NN_AERAV6_52=_9_:_3-10.0N 0_5-36.0E\n43-10.0__ 42-40.0N 005-00.0___\n42-46.0N 005-10.0E\n43-07.0N 005-46.0E\nCMD_\nZINE_\n\nAND LN POSITION PMG\n_Y\n\n_UU__\nA__ZC_CMK_I_AV TOULON 202/26\nLIGURE _ PROVENCE\nSPECIAL OPERATIONS\n7. HYDROGRAPHIC SURVEY ACTIVITY - SCIENTIFIC SURVEY\nFROM 300200 _TC\nZ_U_RC26\nBY MV T_THS_II IN AERA 23-24-2_-26-27-28-29 O\n_SI_ :\n43-27.00_ 006-55.00/3/43-06.00NN006-55.00E\nREAPPMPPN 00007-31.60_3/43-\n______\n___77__GPO_B_CQ__HLO_B_CC _B__M\nUHM_C_ 007-24.40E\nCOASTLINE\n(CHART FR75\n7)\n32!20.)06_$.60_:0*_029,\n._3) 5_8__ 050059 UTC APR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "PROVENCE",
      "LIGURE"
    ],
    "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-20.00N 007-49.00E; 43-20.00N 007-56.80E and requests a wide berth. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Scientific survey and glider implementation by mv atalanhpmfmpymlzcwpwo qbs",
      "Scientific survey and glider implementation by mv atalante in aera 30 bounded by",
      "Cientific survey d glider implementation by mv atalan e nn aerav6 52 9 : 3-10.0n 0 5-36.0e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 38,
    "heading": "2026-03-26 21:40:08 AREA: W",
    "published_at": "2026-03-26 21:40:08",
    "area": "W",
    "message_id": "WA09",
    "text": "ZCZC WA09\nAVURNA_ TOULON 192/26\nCORSE - ABORDS POINHPMWPMJPPHZJONFWJMHZMO_($____3'\n1. SECTOR LIGHT TEMPORARY CHANGE\n SENETOSA LIGHTHOUSE\n IN POJFHFZM_AEEMTWN 008-47.65E\n (CHART FR7162)\n LIGHT BOOK L1 : 65200)\n LEGEND LF: FL.WR.5S\n SECTOR OF THE LIGHTHOUSE UNCERTAIN\n HAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 231549 UTC APR 26NNNN",
    "clean_text": "ZCZC WA09\nAVURNA_ TOULON 192/26\nCORSE - ABORDS POINHPMWPMJPPHZJONFWJMHZMO_($____3'\n1. SECTOR LIGHT TEMPORARY CHANGE\nSENETOSA LIGHTHOUSE\nIN POJFHFZM_AEEMTWN 008-47.65E\n(CHART FR7162)\nLIGHT BOOK L1 : 65200)\nLEGEND LF: FL.WR.5S\nSECTOR OF THE LIGHTHOUSE UNCERTAIN\nHAZARDOUS TO NAVIGATION\n2. CANCEL THIS MSG 231549 UTC APR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CORSE"
    ],
    "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: 1. sector light temporary change.",
    "decoded_highlights": [
      "1. sector light temporary change",
      "Senetosa lighthouse",
      "Light book l1 : 65200)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 39,
    "heading": "2026-03-26 21:31:10 AREA: V",
    "published_at": "2026-03-26 21:31:10",
    "area": "V",
    "message_id": "VA63",
    "text": "ZCZC VA63\n081043 UTC M_Y \nWZ 183/26 \nTHAMES. \nEAST ANGLIA ONE WIND FARM. \nTURBINE G27, 52-09.8N 002-33.5E, FOG SIGNAL INOPERATIVE. \n/,___77\n_+:+: =-58\n161547 UTC FEB 26 \nWZ 126/26 \nTHAMES. \nGUNFLEET SANDS WIND FARM. \n1. TURBINE A_1-45.0N 001-14.6__._+__,-) 8,9034-58=3. \n2_ CANCEL WZ 8/26 (VA49).\nNNNN",
    "clean_text": "ZCZC VA63\n081043 UTC M_Y\nWZ 183/26\nTHAMES.\nEAST ANGLIA ONE WIND FARM.\nTURBINE G27, 52-09.8N 002-33.5E, FOG SIGNAL INOPERATIVE.\n/,___77\n_+:+: =-58\n161547 UTC FEB 26\nWZ 126/26\nTHAMES.\nGUNFLEET SANDS WIND FARM.\n1. TURBINE A_1-45.0N 001-14.6__._+__,-) 8,9034-58=3.\n2_ CANCEL WZ 8/26 (VA49).\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "THAMES"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium / United Kingdom - Thames approaches and Dover approaches. Readable text reports a fog signal outage near 52-09.8N 002-33.5E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine g27, 52-09.8n 002-33.5e, fog signal inoperative",
      "1. turbine a 1-45.0n 001-14.6 . ,-) 8,9034-58 3",
      "East anglia one wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-03-26 21:30:43 AREA: V",
    "published_at": "2026-03-26 21:30:43",
    "area": "V",
    "message_id": "VA69",
    "text": "ZCZC VA69\n1916-8UUTC YG\n1 __953_$'36 '853 51-59.6_ \n_ UY_HGPMZ_NIIIUZCZC",
    "clean_text": "ZCZC VA69\n1916-8UUTC YG\n1 __953_$'36 '853 51-59.6_\n_ UY_HGPMZ_NIIIUZCZC",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 42,
    "heading": "2026-03-26 21:20:14 AREA: U",
    "published_at": "2026-03-26 21:20:14",
    "area": "U",
    "message_id": "UE23",
    "text": "ZCZC UE23\n261920 UTC MAR 26\nMONDOLFO RADIOONON_PHDPYM_ZYP_JHMZ_PYM_PWFHPYYPMYPJMFJJCPWML_MYZ_PMBPHPZYZSZ_EMXPHYPMHM_ FTGCH__Z.\n735_TUUAONGWM_SFWMC_MH_M\n_TG_H__Z._7:5PTUUE_ WARNINGS:\nTHUNDERSTORMS UNDER COURSE: OVER LEVANTINE BASIN SEA, NORTHERN\nTYRRHENIAN SEA, SOUTHERN TYRRHENIAN SEA EAST SIDE, NORTHERN JONIAN\nSEA, ADRIATIC SEA AND CENTRAL TYRRHENIAN SEA.\nTHUNDERJHZY_JM+60_*__OVER NORTHERN JONIAN SEA, SOUTHERN TYRRHENIAN\nSEA EAST SIDE, SARDINIAN SEA, ADRIATIC SEA AND EASTERN MEDITERRANEAN\nSEA.\nGALES UNDER COURSE: - NORTHWESTERLY 7 IN THE CENTRAL TYRRHENIAN SEA WEST SIDE.\n- JZCHDPJHPYSEM_CMGFMHDPMZYHDPYM_ZFMJP_A SOUTHWESTERLY 7 IN THE SOUTHERN ADRIATIC SEA.\n- NORTHEASTERLY 8 IN THE NORTHERN ADRIHF_MJ__A NORTHWESTERLY 8 IN THE SOUTHERN TYRRHENIAN SEA WEST SIDE, SICILY\nSTRAIT, CENTRAL TYRRHENIAN SEA EAST SIDE, SARDINIAN SEA AND CHANNEL\nAND NORTH AND SOUTH BALEARI SEJ_A WESTERLY 8 IN THE SOUTHERN TYRRHENIAN SEA EAST SIDE.\n- NORTHERLY 7 IN THE LIGURIAN SEA.\n- NORTHWESTERLY 9 IN THE CORSICAN SEA.\nGALES FORECAST: NORTHERLY _CMGFMHDPMSF_CYFMJPMU_PYMH_YYDPFMJP_A NORTHWESTERLY 8 IN THE CORSICAN SEA, SICILY STRAIT, SARDINIAN SEA\nAND CHANNEL AND NORTH AND SOUTH BALEARI SEAS.\n- NORTHWESTERLY 7 IN THEMMPHYSMH_YYDPFMJPMPJHMJFWPMWM_PHYSONWYFHF_MJ__A WESTERLY 7 IN THE SOUTHERN TYRRHENIAN SEA.\n- SOUTHWESTEWSEM_CMGFMHDPMJZCHDPYM_ZFMJPMWMJZCHDPYMWYFHF_ONJP_WM WEATHER SITUATION:\nHIGH AND FLAT FIELD OF 1018 HPA OVER WESTERN MEDITERRANEAN SEA IS\nEXHPWF_MPJHPYS_FRONTAL SYSTEM OF 990 HPA OVER ALL ITALIAN SEAS\nIS SLOWLY MOVING EAST/SOUTHEAST. INSTABILITY AREA OVER LEVANTINE\nBASIN.\n3. FORECAST TO 06/UTC OF 27/03/2026 AND 12 HOURS OUTLOOK:\nNORTHERN ADRIATIC _VA_C NORTHERLY 6 -ISOLATED THUNDERSTORMS\n-MODERATE LOCALLY POOR VISIBILITY -ROUGH SEA SOUTH WEST SECTOR /\nOUTLOOK: NORTHERLY 6 -ISOLATED THUN_PYJHZYBJ_BO_G_PHYSMWYFHF_MJ__SOUTHWESTERLY 6 ROTATING AND BECOMING 7 FROM\nNORTHWESTERLY NORTH WEST SECTOR -THUNDERSTORMS -MODERATE LOCALLY BAD\nSOUTHERN ADRIATIC SEA: SOUTHERLY 7 BECOMING SOUTHWESTERLY AND\nWEAKENING -THUNDERSTORMS -MODERATE LOCALLY BAD VISIBILITY -ROUGH\nSEA NORTH EAST SECTOR / OUTLOOK: SOUTHERLY 4 -THUNDERSTORMS.\n4. WIND AND SEA OUTLOOK OVER ITALIAN SEAS FROM 18/UTC OF TOMORROW\nNORTHERN ADRIATIC SEA: NORTHERLY 5 SEA \nY_GZYHD_PJHPYSEM_YMGJPON\nP_GZYHDPYSEM_PMGJPM\n_GAYDW_ 3 SEA 3.\nCENTRAL ADRIATIC SEA:  VARIABLE 6 SEA 5/NORTHERLY 6 SEA 5/NORTHERLY\n6 SEA /_ZYHDPYSEM_HMGJPM\nY_ONGJZCH_EBKUE(___1,(_BHAE_WRJQBBHQKBNHAEDWK_QDRJQBEBHQKZXNORTHERLY 5 SEA 4/NORTHWESTERLY 4 SEA 4.\n\nEND METEOMAR.\nNNNN",
    "clean_text": "ZCZC UE23\n261920 UTC MAR 26\nMONDOLFO RADIOONON_PHDPYM_ZYP_JHMZ_PYM_PWFHPYYPMYPJMFJJCPWML_MYZ_PMBPHPZYZSZ_EMXPHYPMHM_ FTGCH__Z.\n735_TUUAONGWM_SFWMC_MH_M\n_TG_H__Z._7:5PTUUE_ WARNINGS:\nTHUNDERSTORMS UNDER COURSE: OVER LEVANTINE BASIN SEA, NORTHERN\nTYRRHENIAN SEA, SOUTHERN TYRRHENIAN SEA EAST SIDE, NORTHERN JONIAN\nSEA, ADRIATIC SEA AND CENTRAL TYRRHENIAN SEA.\nTHUNDERJHZY_JM+60_*__OVER NORTHERN JONIAN SEA, SOUTHERN TYRRHENIAN\nSEA EAST SIDE, SARDINIAN SEA, ADRIATIC SEA AND EASTERN MEDITERRANEAN\nSEA.\nGALES UNDER COURSE: - NORTHWESTERLY 7 IN THE CENTRAL TYRRHENIAN SEA WEST SIDE.\n- JZCHDPJHPYSEM_CMGFMHDPMZYHDPYM_ZFMJP_A SOUTHWESTERLY 7 IN THE SOUTHERN ADRIATIC SEA.\n- NORTHEASTERLY 8 IN THE NORTHERN ADRIHF_MJ__A NORTHWESTERLY 8 IN THE SOUTHERN TYRRHENIAN SEA WEST SIDE, SICILY\nSTRAIT, CENTRAL TYRRHENIAN SEA EAST SIDE, SARDINIAN SEA AND CHANNEL\nAND NORTH AND SOUTH BALEARI SEJ_A WESTERLY 8 IN THE SOUTHERN TYRRHENIAN SEA EAST SIDE.\n- NORTHERLY 7 IN THE LIGURIAN SEA.\n- NORTHWESTERLY 9 IN THE CORSICAN SEA.\nGALES FORECAST: NORTHERLY _CMGFMHDPMSF_CYFMJPMU_PYMH_YYDPFMJP_A NORTHWESTERLY 8 IN THE CORSICAN SEA, SICILY STRAIT, SARDINIAN SEA\nAND CHANNEL AND NORTH AND SOUTH BALEARI SEAS.\n- NORTHWESTERLY 7 IN THEMMPHYSMH_YYDPFMJPMPJHMJFWPMWM_PHYSONWYFHF_MJ__A WESTERLY 7 IN THE SOUTHERN TYRRHENIAN SEA.\n- SOUTHWESTEWSEM_CMGFMHDPMJZCHDPYM_ZFMJPMWMJZCHDPYMWYFHF_ONJP_WM WEATHER SITUATION:\nHIGH AND FLAT FIELD OF 1018 HPA OVER WESTERN MEDITERRANEAN SEA IS\nEXHPWF_MPJHPYS_FRONTAL SYSTEM OF 990 HPA OVER ALL ITALIAN SEAS\nIS SLOWLY MOVING EAST/SOUTHEAST. INSTABILITY AREA OVER LEVANTINE\nBASIN.\n3. FORECAST TO 06/UTC OF 27/03/2026 AND 12 HOURS OUTLOOK:\nNORTHERN ADRIATIC _VA_C NORTHERLY 6 -ISOLATED THUNDERSTORMS\n-MODERATE LOCALLY POOR VISIBILITY -ROUGH SEA SOUTH WEST SECTOR /\nOUTLOOK: NORTHERLY 6 -ISOLATED THUN_PYJHZYBJ_BO_G_PHYSMWYFHF_MJ__SOUTHWESTERLY 6 ROTATING AND BECOMING 7 FROM\nNORTHWESTERLY NORTH WEST SECTOR -THUNDERSTORMS -MODERATE LOCALLY BAD\nSOUTHERN ADRIATIC SEA: SOUTHERLY 7 BECOMING SOUTHWESTERLY AND\nWEAKENING -THUNDERSTORMS -MODERATE LOCALLY BAD VISIBILITY -ROUGH\nSEA NORTH EAST SECTOR / OUTLOOK: SOUTHERLY 4 -THUNDERSTORMS.\n4. WIND AND SEA OUTLOOK OVER ITALIAN SEAS FROM 18/UTC OF TOMORROW\nNORTHERN ADRIATIC SEA: NORTHERLY 5 SEA\nY_GZYHD_PJHPYSEM_YMGJPON\nP_GZYHDPYSEM_PMGJPM\n_GAYDW_ 3 SEA 3.\nCENTRAL ADRIATIC SEA: VARIABLE 6 SEA 5/NORTHERLY 6 SEA 5/NORTHERLY\n6 SEA /_ZYHDPYSEM_HMGJPM\nY_ONGJZCH_EBKUE(___1,(_BHAE_WRJQBBHQKBNHAEDWK_QDRJQBEBHQKZXNORTHERLY 5 SEA 4/NORTHWESTERLY 4 SEA 4.\n\nEND METEOMAR.\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: over levantine basin sea, northern",
      "Gales under course: - northwesterly 7 in the central tyrrhenian sea west side",
      "Gales forecast: northerly cmgfmhdpmsf cyfmjpmu pymh yydpfmjp a northwesterly 8 in the corsican sea, sicily strait, sardinian sea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-03-26 21:19:19 AREA: T",
    "published_at": "2026-03-26 21:19:19",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n1_1__6._:_/._9,_++______(_.'8 027/26\nBE EEZ\nSHYDROGRAPHICAL A_STRUMEN_QWUMEUTN 00222.306E \nUNMARKED\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE \nF_F_H_ONGONNIKKKKKKKKKKKKKKKBW_Z_P_ _XEB_\nZCZC",
    "clean_text": "ZCZC TA99\n1_1__6._:_/._9,_++______(_.'8 027/26\nBE EEZ\nSHYDROGRAPHICAL A_STRUMEN_QWUMEUTN 00222.306E\nUNMARKED\nSHIPPING IS REQUESTED NOT TO FISH NOR TO ANCHOR IN THE\nF_F_H_ONGONNIKKKKKKKKKKKKKKKBW_Z_P_ _XEB_\nZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BE EEZ"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Shipping is requested not to fish nor to anchor in the. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to fish nor to anchor in the",
      "Shydrographical a strumen qwumeutn 00222.306e",
      "Unmarked"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-03-26 21:17:31 AREA: T",
    "published_at": "2026-03-26 21:17:31",
    "area": "T",
    "message_id": "TA81",
    "text": "ZCZC TA81\n \n7 _6._:_/._69,_++*_02062!+._*!_\n  TUEONGHJJ_GUPJHDFWPYMONG_PJHDFWPYM_PJCYF_IIKK\n_ZSP_MH U_BP_G_\n_U_UEBUE_NGSF_DHMCYPSFLSPONGONNIII_ZCZC",
    "clean_text": "ZCZC TA81\n\n7 _6._:_/._69,_++*_02062!+._*!_\nTUEONGHJJ_GUPJHDFWPYMONG_PJHDFWPYM_PJCYF_IIKK\n_ZSP_MH U_BP_G_\n_U_UEBUE_NGSF_DHMCYPSFLSPONGONNIII_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: Tueonghjj gupjhdfwpymong pjhdfwpym pjcyf iikk. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tueonghjj gupjhdfwpymong pjhdfwpym pjcyf iikk"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 49,
    "heading": "2026-03-26 21:14:44 AREA: T",
    "published_at": "2026-03-26 21:14:44",
    "area": "T",
    "message_id": "",
    "text": "ZCZC T__O_\n_OQY UTC NO_ \nOO_TENDERADIO MSI _TR_XW_\n_O_MFM_Z_EPWMYPWE\n51( /_5_N  00302.007E\n5116.304N  00259.8,*_ \nSHIPPING IS REQUPJHPWMZHMHZM_R NOR TO FISH IN THE VICINITY\nNN_N\n\n_ZCZC",
    "clean_text": "ZCZC T__O_\n_OQY UTC NO_\nOO_TENDERADIO MSI _TR_XW_\n_O_MFM_Z_EPWMYPWE\n51( /_5_N 00302.007E\n5116.304N 00259.8,*_\nSHIPPING IS REQUPJHPWMZHMHZM_R NOR TO FISH IN THE VICINITY\nNN_N\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. Readable text says: Shipping is requpjhpwmzhmhzm r nor to fish in the vicinity. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requpjhpwmzhmhzm r nor to fish in the vicinity"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-03-26 21:13:17 AREA: T",
    "published_at": "2026-03-26 21:13:17",
    "area": "T",
    "message_id": "TU",
    "text": "ZCZC TU\n_261002 UTC MAR \nOOSTENDERADIO MSI 130/26\nOOSTENDE-ZEEBRUGGE\nHOBSTACLES ON THE SEBPWMFM_ZS_Z_FM_ZJFHFZJON\nH_M C_H_G_\nU_HEE _\n51 17,281N 002 56,553E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR FISNMIOMHDPM\nF_F_HAZ_ZZSA_B_UC_CZC OAGFW\nQPC_\nOBSTACLESVOO __MJPLPWB___9__8.482E\n5_15.943N  00258.4_ 43173'53$ ,95 _9 -,:_94 ,94 59 !8'__8.___.8:8,8_69_5,__ZCZC",
    "clean_text": "ZCZC TU\n_261002 UTC MAR\nOOSTENDERADIO MSI 130/26\nOOSTENDE-ZEEBRUGGE\nHOBSTACLES ON THE SEBPWMFM_ZS_Z_FM_ZJFHFZJON\nH_M C_H_G_\nU_HEE _\n51 17,281N 002 56,553E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR FISNMIOMHDPM\nF_F_HAZ_ZZSA_B_UC_CZC OAGFW\nQPC_\nOBSTACLESVOO __MJPLPWB___9__8.482E\n5_15.943N 00258.4_ 43173'53$ ,95 _9 -,:_94 ,94 59 !8'__8.___.8:8,8_69_5,__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": "U",
    "decoded_summary": "operational notice 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 fisnmiomhdpm",
      "Hobstacles on the sebpwmfm zs z fm zjfhfzjon",
      "Obstaclesvoo mjplpwb 9 8.482e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 51,
    "heading": "2026-03-26 21:11:03 AREA: T",
    "published_at": "2026-03-26 21:11:03",
    "area": "T",
    "message_id": "TE52",
    "text": "ZCZC TE52\n \n7_ _ M_ MAR\nOOSTENDERADIO WX 52/26\nTHAMES:\nNUM_HMGL_O WSW AND DECR TO 3 TONIGHT, THEN BACK TO SW AND INCR \nTO 5-6. (0-45)6 :)97$6 285_ '58)) 48'( 9! '9.3 (THUNDERY) SH, ACCOMPANIED BY GRAUPEL. __4-*.'0**.*$_+.__+!_$_._!_'_.263.__:)3-4 _43-('. TOMORROW MORNINM I_M_\nXSZCWFPJJ_GOOD VIS, MOD VIS DURING SH.\nBELGIAN COAST:\nNNW 4, BACK TO W AND DECR TO 2-3 TONIGHT, THEN BACK TO SW AND INCR \nTO 4-5. \nTHAMES AND BELGIAN COAST:\nPARTLY CLOUDY WITH STILL RISK OF SOME (THUNDERY) SH, ACCOMPANIED \nBY GRAUPEL. GRAD LESS SH. TONIGHT MINLY DRY WIT_M_SPYMLYPVJ_BMG_Z_ZY_ZUM_ZYF_MF_XOD VIS, MOD VIS DURING SH.\nDOVER:\nNNW 4, BACK TO W AND DECR TO 2 TONIGHT, THEN BACK TO SW AND INCR \nTO 4-5. FEW TO PARTLY CLOUDY. TOMORROW MORNING INCR CLOUDINESS. \nGOOD VIS.\n\nNNNN",
    "clean_text": "ZCZC TE52\n\n7_ _ M_ MAR\nOOSTENDERADIO WX 52/26\nTHAMES:\nNUM_HMGL_O WSW AND DECR TO 3 TONIGHT, THEN BACK TO SW AND INCR\nTO 5-6. (0-45)6 :)97$6 285_ '58)) 48'( 9! '9.3 (THUNDERY) SH, ACCOMPANIED BY GRAUPEL. __4-*.'0**.*$_+.__+!_$_._!_'_.263.__:)3-4 _43-('. TOMORROW MORNINM I_M_\nXSZCWFPJJ_GOOD VIS, MOD VIS DURING SH.\nBELGIAN COAST:\nNNW 4, BACK TO W AND DECR TO 2-3 TONIGHT, THEN BACK TO SW AND INCR\nTO 4-5.\nTHAMES AND BELGIAN COAST:\nPARTLY CLOUDY WITH STILL RISK OF SOME (THUNDERY) SH, ACCOMPANIED\nBY GRAUPEL. GRAD LESS SH. TONIGHT MINLY DRY WIT_M_SPYMLYPVJ_BMG_Z_ZY_ZUM_ZYF_MF_XOD VIS, MOD VIS DURING SH.\nDOVER:\nNNW 4, BACK TO W AND DECR TO 2 TONIGHT, THEN BACK TO SW AND INCR\nTO 4-5. FEW TO PARTLY CLOUDY. TOMORROW MORNING INCR CLOUDINESS.\nGOOD VIS.\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Belgium - Belgian coast and southern North Sea. Readable text says: Num hmgl o wsw and decr to 3 tonight, then back to sw and incr. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Num hmgl o wsw and decr to 3 tonight, then back to sw and incr",
      "Nnw 4, back to w and decr to 2-3 tonight, then back to sw and incr",
      "Partly cloudy with still risk of some (thundery) sh, accompanied"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 52,
    "heading": "2026-03-26 21:10:20 AREA: T",
    "published_at": "2026-03-26 21:10:20",
    "area": "T",
    "message_id": "TA12",
    "text": "ZCZC TA12\n261544 UTC MAR 26\nOOSTENDERADIO MSI 131/26\nTERRITORIAL SEAHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 51-21-663N 003-06,817E  UNMARKED\nSHIPPING IS REQUESTED TO PASS AT A SAFE DISTANCE AND NOT TO ANCHOR NOR FISH IN THE VICINITY\n\nNNNN",
    "clean_text": "ZCZC TA12\n261544 UTC MAR 26\nOOSTENDERADIO MSI 131/26\nTERRITORIAL SEAHYDROGRAPHICAL INSTRUMENT ESTABLISHED IN POS 51-21-663N 003-06,817E UNMARKED\nSHIPPING IS REQUESTED TO PASS AT A SAFE DISTANCE AND NOT TO ANCHOR NOR 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": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits.",
    "decoded_highlights": [
      "Shipping is requested to pass at a safe distance and not to anchor nor fish in the vicinity",
      "Territorial seahydrographical instrument established in pos 51-21-663n 003-06,817e unmarked"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 53,
    "heading": "2026-03-26 21:10:19 AREA: T",
    "published_at": "2026-03-26 21:10:19",
    "area": "T",
    "message_id": "",
    "text": "CZCZC",
    "clean_text": "CZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 56,
    "heading": "2026-03-26 21:03:14 AREA: S",
    "published_at": "2026-03-26 21:03:14",
    "area": "S",
    "message_id": "",
    "text": "ZCZC SA_2\nNCC-HAMBURG\n110800 UTC_Y\nNAV. WA_N. NO. 1_9_\n_-__\n_!_5\n_._5N 006-09,1E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\n_)06_$.+._7.=__1_'53$.9,_9,,(((((((((((((((((((((((((((((((((((((__ZCZC",
    "clean_text": "ZCZC SA_2\nNCC-HAMBURG\n110800 UTC_Y\nNAV. WA_N. NO. 1_9_\n_-__\n_!_5\n_._5N 006-09,1E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\n_)06_$.+._7.=__1_'53$.9,_9,,(((((((((((((((((((((((((((((((((((((__ZCZC",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Germany - German Bight and German North Sea. Readable text says: Restricted manoevrability during operations. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Restricted manoevrability during operations",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-03-26 21:01:32 AREA: S",
    "published_at": "2026-03-26 21:01:32",
    "area": "S",
    "message_id": "SA72",
    "text": "ZCZC SA72\nNCC-HAMBURG\n261300 UTC MAR _NAV. WARN. NO. 180\nTSS TERSCHELLIN__T_RMAN B_GHT\nX_ZS_Z_FM_ZHFPY_PJJPSJMYPMHMYFJ__Z\nOFPYJMWONGHZC_DF_MHDPMJPLPWMWCYF_MDP__MJPM_ZWFHFZJMWMDF_DMUOP_M_YZBMONIIIINORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nAT A WAVE HEIGHT ABOVE 4.0M CONTAINERVESSELS WITH A LENGTH ABOVE 200M\n\nARE RECOMMENDED TO FOLLOW ALTERNATIVE ROUTE VIA TSS EAST FRIESLAND\nAND GERMAN BIGHT WESTERN APPROACH.\nNNNN",
    "clean_text": "ZCZC SA72\nNCC-HAMBURG\n261300 UTC MAR _NAV. WARN. NO. 180\nTSS TERSCHELLIN__T_RMAN B_GHT\nX_ZS_Z_FM_ZHFPY_PJJPSJMYPMHMYFJ__Z\nOFPYJMWONGHZC_DF_MHDPMJPLPWMWCYF_MDP__MJPM_ZWFHFZJMWMDF_DMUOP_M_YZBMONIIIINORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nAT A WAVE HEIGHT ABOVE 4.0M CONTAINERVESSELS WITH A LENGTH ABOVE 200M\n\nARE RECOMMENDED TO FOLLOW ALTERNATIVE ROUTE VIA TSS EAST FRIESLAND\nAND GERMAN BIGHT WESTERN APPROACH.\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: Measures and alter course if necessary to avoid coming transverse to. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Measures and alter course if necessary to avoid coming transverse to",
      "Ofpyjmwonghzc df mhdpmjplpwmwcyf mdp mjpm zwfhfzjmwmdf dmuop m yzbmoniiiinorth to northwest direction",
      "At a wave height above 3.0m containervessels have to take appropriate"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 58,
    "heading": "2026-03-26 21:00:14 AREA: S",
    "published_at": "2026-03-26 21:00:14",
    "area": "S",
    "message_id": "SE21",
    "text": "ZCZC SE21\n261900 NAVTEX-HAMBURGV=__)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nWIND: NORTHWEST ABOUT 6, DECREASINGNSZ_US\n_YMGHZM\nH_ONG_FJFLFSFHE_TG_PHDPY_RAIN- OR SNOW SHOWERS WITNMFYTSEM_ZZYONG_FJFLFSFHE_SEA: 5 METER, LATE_M0.__0__6_\nFRIDAY:\nWIND: NORTHWEST 4 TO 5, FOR A TIME SHIFTING SOUTHWEST TO SOUTH AND\nINCREASING 6.\nVISIBILITY/WEATHER: LATER RAIN WITH POOR VISIBILITY.\nSEA: FIRST 3 METER.\nNNNN",
    "clean_text": "ZCZC SE21\n261900 NAVTEX-HAMBURGV=__)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nWIND: NORTHWEST ABOUT 6, DECREASINGNSZ_US\n_YMGHZM\nH_ONG_FJFLFSFHE_TG_PHDPY_RAIN- OR SNOW SHOWERS WITNMFYTSEM_ZZYONG_FJFLFSFHE_SEA: 5 METER, LATE_M0.__0__6_\nFRIDAY:\nWIND: NORTHWEST 4 TO 5, FOR A TIME SHIFTING SOUTHWEST TO SOUTH AND\nINCREASING 6.\nVISIBILITY/WEATHER: LATER RAIN WITH POOR VISIBILITY.\nSEA: FIRST 3 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: later rain with poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: later rain with poor visibility",
      "Weatherforecast for german bight",
      "Wind: northwest about 6, decreasingnsz us"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 59,
    "heading": "2026-03-26 20:41:05 AREA: Q",
    "published_at": "2026-03-26 20:41:05",
    "area": "Q",
    "message_id": "QE52",
    "text": "ZCZC QE52\n_\n7__(6MG_HXM_Y_\n_SPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 26/03/2026 AT 1700 UTC\n\n1. WARNING:\nON S-E_N_TGYHMZ._0_6'.26!_!_.'+/._:*_*.+_.*7_3 28,$ 35-40 KT, JHFSSMHM_FYJHMHZM\nH__GVH_BMGPSJP_DPYPM_CJHJMZ_M\n_G_M_PH_HMGVH_MGFM_PSPLFHJ_FMVSMHZM_FH_GVH_BMGJPMSZXM\nH_MG_Z_MJCWWPMJHZYBJ_BON_N_SYNOPSIS:\nDEEP LOW IS SHIFTING ACROSS THE ADRIATIC TO THE SE.\n\n3. FORECAS\nM_ZYMHDPMP_HM\n_YMGDZCYJM_SFWMCHFSM_UCTPTUUEMGHM_ UTC\n\nN-ERN ADRIATIC:\nN/NE 16-32 KT, SE OF ISTRA TO 38 KT, IN VELEBITSKI KANAL TO 46 KT.\nSEA 4-5.\nVIS 10-20 KM.\nMOSTLY CLOUDY, ON S-ERN PART LOC RAIN, ALONG THE CZJHJMJSF_DHM_ZJJMZ._!2.)'+_.*+7_\nCENTRAL ADRIATIC:\nON S-ERN PART SE/E, OFFSHORE SW 12-24 KT, TOMORROW AFTERNOON TURNING TO NE. ON N-ERN PART N/NE 16-32 KT.\nSEA 3-4, ON N-ERN PART LOC 5.\nVIS 5-15 KM.\nMOSTLY CLOUDY WITH RAIN, LOC T-SHWRS.\n\nS-ERN ADRIATIC:\nSE, OFFSHORE SW 14-28 KT, _YWCSS_MWP__O_Z\nNXGCK___\nSPM_PYMGJHFSSMHM_FYJHMZ_ORE POSS 5.\nVIS 5-15 KM.\nMOSTLY CLOUDY WITH RAIN, LOC T-SHWRS.NNONNIII_W_BWYA__AWW_P_ZZL_P_Z_WXMB_\nA_O\nUD_FY_G_HMP_AR 26\nIRAC__O_AGN19W_ULOAL_T_ZCZC",
    "clean_text": "ZCZC QE52\n_\n7__(6MG_HXM_Y_\n_SPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 26/03/2026 AT 1700 UTC\n\n1. WARNING:\nON S-E_N_TGYHMZ._0_6'.26!_!_.'+/._:*_*.+_.*7_3 28,$ 35-40 KT, JHFSSMHM_FYJHMHZM\nH__GVH_BMGPSJP_DPYPM_CJHJMZ_M\n_G_M_PH_HMGVH_MGFM_PSPLFHJ_FMVSMHZM_FH_GVH_BMGJPMSZXM\nH_MG_Z_MJCWWPMJHZYBJ_BON_N_SYNOPSIS:\nDEEP LOW IS SHIFTING ACROSS THE ADRIATIC TO THE SE.\n\n3. FORECAS\nM_ZYMHDPMP_HM\n_YMGDZCYJM_SFWMCHFSM_UCTPTUUEMGHM_ UTC\n\nN-ERN ADRIATIC:\nN/NE 16-32 KT, SE OF ISTRA TO 38 KT, IN VELEBITSKI KANAL TO 46 KT.\nSEA 4-5.\nVIS 10-20 KM.\nMOSTLY CLOUDY, ON S-ERN PART LOC RAIN, ALONG THE CZJHJMJSF_DHM_ZJJMZ._!2.)'+_.*+7_\nCENTRAL ADRIATIC:\nON S-ERN PART SE/E, OFFSHORE SW 12-24 KT, TOMORROW AFTERNOON TURNING TO NE. ON N-ERN PART N/NE 16-32 KT.\nSEA 3-4, ON N-ERN PART LOC 5.\nVIS 5-15 KM.\nMOSTLY CLOUDY WITH RAIN, LOC T-SHWRS.\n\nS-ERN ADRIATIC:\nSE, OFFSHORE SW 14-28 KT, _YWCSS_MWP__O_Z\nNXGCK___\nSPM_PYMGJHFSSMHM_FYJHMZ_ORE POSS 5.\nVIS 5-15 KM.\nMOSTLY CLOUDY WITH RAIN, LOC T-SHWRS.NNONNIII_W_BWYA__AWW_P_ZZL_P_Z_WXMB_\nA_O\nUD_FY_G_HMP_AR 26\nIRAC__O_AGN19W_ULOAL_T_ZCZC",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Croatia - Adriatic Sea. Readable text says: Mostly cloudy with rain, loc t-shwrs. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mostly cloudy with rain, loc t-shwrs",
      "Weather bulletin for adriatic issued by the marine meteorological center split on 26/03/2026 at 1700 utc",
      "Deep low is shifting across the adriatic to the se"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-03-26 20:40:17 AREA: Q",
    "published_at": "2026-03-26 20:40:17",
    "area": "Q",
    "message_id": "QA01",
    "text": "ZCZC QA01\n261840 UTC MAR 26\nSPLIT RADIO\n\nCOASTAL - NAVTEX\nNORTHERN ADRIATIC - LUKA PULA\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIVE DEVICE IN VICINITY 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "clean_text": "ZCZC QA01\n261840 UTC MAR 26\nSPLIT RADIO\n\nCOASTAL - NAVTEX\nNORTHERN ADRIATIC - LUKA PULA\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIVE DEVICE IN VICINITY 44-52,55 N 013-47,77 E. NAVIGATION, ANCHORING AND OTHER ACTIVITIES IN 150 METERS RADIUS FROM POSITION PROHIBITED.\nNNNN",
    "resolved_station_name": "Split",
    "resolved_country": "Croatia",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Adriatic Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "SPLIT RADIO"
    ],
    "display_region_heading": "Croatia - Adriatic Sea",
    "display_region_label": "Split, Croatia",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Croatia - Adriatic Sea. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Pula port, breakwater, explosive device in vicinity 44-52,55 n 013-47,77 e. navigation, anchoring and other activities in 150 meters radius from position prohibited",
      "Coastal - navtex",
      "Northern adriatic - luka pula"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 66,
    "heading": "2026-03-26 20:23:28 AREA: O",
    "published_at": "2026-03-26 20:23:28",
    "area": "O",
    "message_id": "OE90",
    "text": "ZCZC OE90\nWX FORECAST 26/1600 TO 27/ 040 UT_M_N_Y_GFSON_P\nJ_H_GMWP_YPJJFZMZ_PYMHDPMWYFHF_MJPMWMIHG__PGEM___\nQNL__HL_B_RDS THE CEN MED\nWX-PARTLY CLOKW_TH POSSIBLE ISOLATED SHOWERS\nVIS-GOOD, LOC MOD IN SHOWERS\nWIND-W NW F6 TO 7 LOC REACHING F8\nSEA-ROUGH BEC ME_MYZC_DMONJ_PSS_GUZIMUONONNKKKKKKKKKKKKV__ZCZC",
    "clean_text": "ZCZC OE90\nWX FORECAST 26/1600 TO 27/ 040 UT_M_N_Y_GFSON_P\nJ_H_GMWP_YPJJFZMZ_PYMHDPMWYFHF_MJPMWMIHG__PGEM___\nQNL__HL_B_RDS THE CEN MED\nWX-PARTLY CLOKW_TH POSSIBLE ISOLATED SHOWERS\nVIS-GOOD, LOC MOD IN SHOWERS\nWIND-W NW F6 TO 7 LOC REACHING F8\nSEA-ROUGH BEC ME_MYZC_DMONJ_PSS_GUZIMUONONNKKKKKKKKKKKKV__ZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Wx-partly clokw th possible isolated showers. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wx-partly clokw th possible isolated showers",
      "Wx forecast 26/1600 to 27/ 040 ut m n y gfson p",
      "Vis-good, loc mod in showers"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 67,
    "heading": "2026-03-26 20:22:26 AREA: O",
    "published_at": "2026-03-26 20:22:26",
    "area": "O",
    "message_id": "OE89",
    "text": "ZCZC OE89\nWX FORECAST 26/1000 TO 26/220_ _75: \n24,_-NIL\nGEN SIT-A DEPRESSION OVER THE ADRIATIC SRA AND ITALY IS EXTENDING TOWARDS THE DEN MED\nWX - PARTLY C\nOUDY BEC WIT SOLATED SHOWERS\nVIS-GOOD, LOC MOD TO POOR IN SHOWERS\nWIND-W NW F4$5 LOC F5-F6 BEC F6-7, LOC REACH_F8\nSEA-MOD BEC ROUGH. _VYE\nZB _RDS END OF PERIOD\nSWELL-NEG BEC LOW__AO NNNN",
    "clean_text": "ZCZC OE89\nWX FORECAST 26/1000 TO 26/220_ _75:\n24,_-NIL\nGEN SIT-A DEPRESSION OVER THE ADRIATIC SRA AND ITALY IS EXTENDING TOWARDS THE DEN MED\nWX - PARTLY C\nOUDY BEC WIT SOLATED SHOWERS\nVIS-GOOD, LOC MOD TO POOR IN SHOWERS\nWIND-W NW F4$5 LOC F5-F6 BEC F6-7, LOC REACH_F8\nSEA-MOD BEC ROUGH. _VYE\nZB _RDS END OF PERIOD\nSWELL-NEG BEC LOW__AO NNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Vis-good, loc mod to poor in showers.",
    "decoded_highlights": [
      "Vis-good, loc mod to poor in showers",
      "Wx forecast 26/1000 to 26/220 75",
      "Oudy bec wit solated showers"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 68,
    "heading": "2026-03-26 19:40:14 AREA: T",
    "published_at": "2026-03-26 19:40:14",
    "area": "T",
    "message_id": "",
    "text": "_CZCZ KA*9\n'-=7__-_ :034_\n4_ 029=_\n._ _796 - LCHZH IDLIT\nKO__CAUTION\nNNNN",
    "clean_text": "_CZCZ KA*9\n'-=7__-_ :034_\n4_ 029=_\n._ _796 - LCHZH IDLIT\nKO__CAUTION\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: 796 - lchzh idlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "796 - lchzh idlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 69,
    "heading": "2026-03-26 19:38:13 AREA: P",
    "published_at": "2026-03-26 19:38:13",
    "area": "P",
    "message_id": "PL13",
    "text": "ZCZC PL13\n261737 UTC MAR 26\nWAVE HEIGHT WARNING  300CM TSS TERSCHELLING - GERMAN BIGNH\nISSUED AT 261700 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE AT RISK OF LOSING CONTAINERS DURING HEAVY SEA CONDITIONS, IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING _ZHFZP_P_NNNN",
    "clean_text": "ZCZC PL13\n261737 UTC MAR 26\nWAVE HEIGHT WARNING 300CM TSS TERSCHELLING - GERMAN BIGNH\nISSUED AT 261700 UTC MAR\n\nCONTAINER VESSELS WITH A LENGTH OF 100-200M ARE AT RISK OF LOSING CONTAINERS DURING HEAVY SEA CONDITIONS, IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING _ZHFZP_P_NNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TERSCHELLING"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. Readable text says: Wave height warning 300cm tss terschelling - german bignh.",
    "decoded_highlights": [
      "Wave height warning 300cm tss terschelling - german bignh",
      "These vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriate measures to avoid losing zhfzp p nnnn",
      "Container vessels with a length of 100-200m are at risk of losing containers during heavy sea conditions, in particular from a west-northwest to northwest to northerly direction"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 70,
    "heading": "2026-03-26 19:37:44 AREA: P",
    "published_at": "2026-03-26 19:37:44",
    "area": "P",
    "message_id": "PB09",
    "text": "ZCZC PB09\n261628 UTC MAR 26\nGAL_WARNING, 26 MAR 16:24 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES. DOVER.\nNO WARNING.\n\nEND OF GALEWARNING\n\nNNNN",
    "clean_text": "ZCZC PB09\n261628 UTC MAR 26\nGAL_WARNING, 26 MAR 16:24 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES. DOVER.\nNO WARNING.\n\nEND OF GALEWARNING\n\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "THAMES"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Belgium / United Kingdom - Thames approaches and Dover approaches. Readable text says: Gal warning, 26 mar 16:24 utc.",
    "decoded_highlights": [
      "Gal warning, 26 mar 16:24 utc",
      "Dogger. german bight. humber. thames. dover",
      "No warning"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 71,
    "heading": "2026-03-26 19:10:40 AREA: G",
    "published_at": "2026-03-26 19:10:40",
    "area": "G",
    "message_id": "GA73",
    "text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\n(_\n\n_$8_E_DV_ZCZC",
    "clean_text": "ZCZC GA73\nWZ 130/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 10/26 (GA91).\n(_\n\n_$8_E_DV_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says 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 10/26 (ga91)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 72,
    "heading": "2026-03-26 19:10:16 AREA: G",
    "published_at": "2026-03-26 19:10:16",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5,3 53.094-48)6 43.9= $_:\nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5,3 53.094-48)6 43.9= $_:\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5,3 53.094-48)6 43.9 $.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5,3 53.094-48)6 43.9 $",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 73,
    "heading": "2026-03-26 19:09:45 AREA: G",
    "published_at": "2026-03-26 19:09:45",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\n/_49.-456.\nHYWFF._'+_!._!_._6__1. TURBINE HS2, 57-29.4N 001-21.1W, FOPMJF_SMFZ_PYHF\nP_BO_\n_CANCEL WZ 39/26 (GA12).\nNNNN",
    "clean_text": "ZCZC GA89\nWZ 161/26\n/_49.-456.\nHYWFF._'+_!._!_._6__1. TURBINE HS2, 57-29.4N 001-21.1W, FOPMJF_SMFZ_PYHF\nP_BO_\n_CANCEL WZ 39/26 (GA12).\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: Hywff. ' !. ! . 6 1. turbine hs2, 57-29.4n 001-21.1w, fopmjf smfz pyhf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Hywff. ' !. ! . 6 1. turbine hs2, 57-29.4n 001-21.1w, fopmjf smfz pyhf",
      "Cancel wz 39/26 (ga12)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 74,
    "heading": "2026-03-26 19:09:22 AREA: G",
    "published_at": "2026-03-26 19:09:22",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon south buoy 53-12.5n 001-25.6e unlit.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 75,
    "heading": "2026-03-26 19:08:50 AREA: G",
    "published_at": "2026-03-26 19:08:50",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/26 \nNORTH SEA. \nTEAL AND GUILLEMOT OIL FIELDS. \nCHART GB 278. \nSAFETY ZONE, RADIUS 500 _PHYPJBHQDK_J12UB__XCMQR))9_:41__ONNIIIUZCZC",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/26\nNORTH SEA.\nTEAL AND GUILLEMOT OIL FIELDS.\nCHART GB 278.\nSAFETY ZONE, RADIUS 500 _PHYPJBHQDK_J12UB__XCMQR))9_:41__ONNIIIUZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Safety zone, radius 500 phypjbhqdk j12ub xcmqr))9 :41 onniiiuzczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Safety zone, radius 500 phypjbhqdk j12ub xcmqr))9 :41 onniiiuzczc",
      "Navarea i 43/26",
      "North sea"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 76,
    "heading": "2026-03-26 19:08:13 AREA: G",
    "published_at": "2026-03-26 19:08:13",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND FARB_\n1. TURBINE FOG SIGNALS INOPERATIVE: \nA. D01, 53-20.1N 000-49.1E. \nB. S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK WIND FARB_\n1. TURBINE FOG SIGNALS INOPERATIVE:\nA. D01, 53-20.1N 000-49.1E.\nB. S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention fog across the covered waters.",
    "decoded_highlights": [
      "1. turbine fog signals inoperative",
      "Race bank wind farb",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 77,
    "heading": "2026-03-26 19:07:41 AREA: G",
    "published_at": "2026-03-26 19:07:41",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELWMZYHD_PJ_KKEIQ_N_IZRSGW\n__53-10.7N 002-59.1E UNLIHMWMSSMBK81_)__C_9,L_ONNIII_ZCZC",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELWMZYHD_PJ_KKEIQ_N_IZRSGW\n__53-10.7N 002-59.1E UNLIHMWMSSMBK81_)__C_9,L_ONNIII_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Orwell gas fielwmzyhd pj kkeiq n izrsgw. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Orwell gas fielwmzyhd pj kkeiq n izrsgw"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 78,
    "heading": "2026-03-26 19:07:11 AREA: G",
    "published_at": "2026-03-26 19:07:11",
    "area": "G",
    "message_id": "GAUR",
    "text": "ZCZC GAUR\nWZ 207/26 \nHUMBER. \nRAV_NSPURN NORTH GAS FIELD. \nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS FZ_PYHF\nP_Z\n_ONNIII_ZCZC",
    "clean_text": "ZCZC GAUR\nWZ 207/26\nHUMBER.\nRAV_NSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS FZ_PYHF\nP_Z\n_ONNIII_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids fz pyhf.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids fz pyhf",
      "Rav nspurn north gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 79,
    "heading": "2026-03-26 19:06:46 AREA: G",
    "published_at": "2026-03-26 19:06:46",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC_ZUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC_ZUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55-04.4n 001-27.8w off air",
      "Mrcc zumber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 80,
    "heading": "2026-03-26 19:06:22 AREA: G",
    "published_at": "2026-03-26 19:06:22",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 81,
    "heading": "2026-03-26 19:03:32 AREA: G",
    "published_at": "2026-03-26 19:03:32",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ TUUTUEON_H_P\n_ONGLS_HD_Z_ORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "clean_text": "ZCZC GA94\nWZ TUUTUEON_H_P\n_ONGLS_HD_Z_ORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text reports a fog signal outage near 55-06.8N 001-23.6W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine b10 55-06.8n 001-23.6w unlit and fog signal inoperative",
      "Ongls hd z ore demonstrator wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 82,
    "heading": "2026-03-26 19:03:00 AREA: G",
    "published_at": "2026-03-26 19:03:00",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 53-03____=_-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. _XPSM_AM\n TUEMVG\nHUS_ONGONNIIIUZCZC",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM 49/27-ED 53-03____=_-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. _XPSM_AM\nTUEMVG\nHUS_ONGONNIIIUZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. platform 49/27-ed 53-03 -12.6e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03 -12.6e, unlit and all navaids inoperative",
      "Leman gas field",
      "Hus ongonniiiuzczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 84,
    "heading": "2026-03-26 19:02:04 AREA: G",
    "published_at": "2026-03-26 19:02:04",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2w off air",
      "Mrcc shetland",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 85,
    "heading": "2026-03-26 19:01:34 AREA: G",
    "published_at": "2026-03-26 19:01:34",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.+__.\n_UWOMQE,=FZ_ JF_SMFZ_PYHF\nP_BO_\n_CANCEL WZ 104/26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.+__.\n_UWOMQE,=FZ_ JF_SMFZ_PYHF\nP_BO_\n_CANCEL WZ 104/26 (GA54).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Bessemer gas field. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Bessemer gas field",
      "1. platform 49/23e, 53-11",
      "Cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 86,
    "heading": "2026-03-26 19:01:11 AREA: G",
    "published_at": "2026-03-26 19:01:11",
    "area": "G",
    "message_id": "GA10",
    "text": "ZCZC GA10\nWZ 230/26 \nFAIR ISLE. \nROVA HEAD LIGHTHOUSE 60-11.5N 001-08.6W SECTOR LIGHTS UNRELIABLE. \nNNNN",
    "clean_text": "ZCZC GA10\nWZ 230/26\nFAIR ISLE.\nROVA HEAD LIGHTHOUSE 60-11.5N 001-08.6W SECTOR LIGHTS UNRELIABLE.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text reports an aid-to-navigation fault near 60-11.5N 001-08.6W.",
    "decoded_highlights": [
      "Rova head lighthouse 60-11.5n 001-08.6w sector lights unreliable",
      "Fair isle"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 87,
    "heading": "2026-03-26 19:00:45 AREA: G",
    "published_at": "2026-03-26 19:00:45",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBERLMMONGFPYMLV__MO__*($_ '975_2-4( 53-11.0N 002H_FGPMCIII_MWM_AVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBERLMMONGFPYMLV__MO__*($_ '975_2-4( 53-11.0N 002H_FGPMCIII_MWM_AVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Humberlmmongfpymlv mo ($ '975 2-4( 53-11.0n 002h fgpmciii mwm avaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Humberlmmongfpymlv mo ($ '975 2-4( 53-11.0n 002h fgpmciii mwm avaids inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 88,
    "heading": "2026-03-26 19:00:14 AREA: G",
    "published_at": "2026-03-26 19:00:14",
    "area": "G",
    "message_id": "GB10",
    "text": "ZCZC GB10\nGALE WARNING THURSDAY 26 MARCH 1546 UTC\n\nVIKING\nGSPMZUM_PJPWMLCHMJZCHD_PJHIII_Y GALE FORCEM\nFM_P_PXHPWMJZZONONG_ZYHFPJMWZ_\nGALE NOW CEASED\nNNNN",
    "clean_text": "ZCZC GB10\nGALE WARNING THURSDAY 26 MARCH 1546 UTC\n\nVIKING\nGSPMZUM_PJPWMLCHMJZCHD_PJHIII_Y GALE FORCEM\nFM_P_PXHPWMJZZONONG_ZYHFPJMWZ_\nGALE NOW CEASED\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code G. Readable text says: Gspmzum pjpwmlchmjzchd pjhiii y gale forcem. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gspmzum pjpwmlchmjzchd pjhiii y gale forcem",
      "Gale warning thursday 26 march 1546 utc",
      "Gale now ceased"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 89,
    "heading": "2026-03-26 18:45:34 AREA: T",
    "published_at": "2026-03-26 18:45:34",
    "area": "T",
    "message_id": "",
    "text": "ZCZI_EA22\n_2+_18\n/2_ \nWF_MN_\n_JMSFSDHM\nHDPZBCG_\n__ATIVE_MI_ \n_NN_N\n\n_\nJ_IJ___K_ZCZVIDAL BUZ_M_U_ZCZC",
    "clean_text": "ZCZI_EA22\n_2+_18\n/2_\nWF_MN_\n_JMSFSDHM\nHDPZBCG_\n__ATIVE_MI_\n_NN_N\n\n_\nJ_IJ___K_ZCZVIDAL BUZ_M_U_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: Jmsfsdhm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Jmsfsdhm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 90,
    "heading": "2026-03-26 18:42:27 AREA: E",
    "published_at": "2026-03-26 18:42:27",
    "area": "E",
    "message_id": "EA43",
    "text": "ZCZC EA43\n0NAKZIZQAQFXW_JWV_FJC\nC\nYKZ_WQUQA_N\nN_S IN FO_CE A_ Q_PJ_KE_LW\nUQ _U_ZBN_ SJRIES 43, 51_ 52, 54, 57.\n\n OTEI_A0 TEXTS OF NAVAREA I WARNINGS ISSUED EACH\n_J_OF TLE ADM_Z_ED VIA ENHANCED GROEP C_LL_(BGC) AIDX_IN-FORCE_NAVAREA _QN QE_ WY AN_ 39 '-,$_-_3 -)'9 -=-_)8_)3 !49. 57) 7(_9 23_873__3- 8 49/26 (EA29)(GA7) _9__ _.9 _,*.9,,:8_7___*--ZER. \nMF R_4=8:3 !49. _-2$'36 '853 51-59.___W PPQAAY_HGPMZW_M_Y__X_NGZBZBNN_AUZ_Z_N\nWW_\n_WA_K_BQ\n_CO SC_QE__LAVENH__K_H_MT\n \n_NNNN",
    "clean_text": "ZCZC EA43\n0NAKZIZQAQFXW_JWV_FJC\nC\nYKZ_WQUQA_N\nN_S IN FO_CE A_ Q_PJ_KE_LW\nUQ _U_ZBN_ SJRIES 43, 51_ 52, 54, 57.\n\nOTEI_A0 TEXTS OF NAVAREA I WARNINGS ISSUED EACH\n_J_OF TLE ADM_Z_ED VIA ENHANCED GROEP C_LL_(BGC) AIDX_IN-FORCE_NAVAREA _QN QE_ WY AN_ 39 '-,$_-_3 -)'9 -=-_)8_)3 !49. 57) 7(_9 23_873__3- 8 49/26 (EA29)(GA7) _9__ _.9 _,*.9,,:8_7___*--ZER.\nMF R_4=8:3 !49. _-2$'36 '853 51-59.___W PPQAAY_HGPMZW_M_Y__X_NGZBZBNN_AUZ_Z_N\nWW_\n_WA_K_BQ\n_CO SC_QE__LAVENH__K_H_MT\n\n_NNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: Otei a0 texts of navarea i warnings issued each. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Otei a0 texts of navarea i warnings issued each",
      "0nakzizqaqfxw jwv fjc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 91,
    "heading": "2026-03-26 18:42:03 AREA: E",
    "published_at": "2026-03-26 18:42:03",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ\n__RBWY \nPLYMOUTH. LANDS END SOU_H_ 005-400!P UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ\n__RBWY\nPLYMOUTH. LANDS END SOU_H_ 005-400!P 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: Plymouth. lands end sou h 005-400!p unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Plymouth. lands end sou h 005-400!p unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 92,
    "heading": "2026-03-26 18:40:38 AREA: E",
    "published_at": "2026-03-26 18:40:38",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EL17_\nSKBS AND GUSMP FTT_ACTS AND GUNFACTS WARNING _KALL TIM_S A\nIF__ ___1. LIVE GUNN_R\nKAVC__BS _N PROGRESSC \nPLYMOUTH APPROACHES - LIZARD POINT TO STARL POINT. \nBETWEEN 261700 AND 6_,_0 MAR. \n_0945)-,$ -0049-:_3' - START POINT TO SHMHLJMDPWS_ONGLPH__NLOKXGG__:_89CXMP9)(3,_ $35-8)' 8, _. :9-'5_7--$ 4_':73 :3,5__' =_! -,$ .! _49-$:-'5' 94 :9,5-:5 ,-=-) 9034-589,' 0_9,3 (44) (0)1752 557550.\n72. CANCEL SUBS AND GUNS 184/+_ ((\n_3'_.9\n__++-1_ZCZC",
    "clean_text": "ZCZC EL17_\nSKBS AND GUSMP FTT_ACTS AND GUNFACTS WARNING _KALL TIM_S A\nIF__ ___1. LIVE GUNN_R\nKAVC__BS _N PROGRESSC\nPLYMOUTH APPROACHES - LIZARD POINT TO STARL POINT.\nBETWEEN 261700 AND 6_,_0 MAR.\n_0945)-,$ -0049-:_3' - START POINT TO SHMHLJMDPWS_ONGLPH__NLOKXGG__:_89CXMP9)(3,_ $35-8)' 8, _. :9-'5_7--$ 4_':73 :3,5__' =_! -,$ .! _49-$:-'5' 94 :9,5-:5 ,-=-) 9034-589,' 0_9,3 (44) (0)1752 557550.\n72. CANCEL SUBS AND GUNS 184/+_ ((\n_3'_.9\n__++-1_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. Readable text says: Skbs and gusmp ftt acts and gunfacts warning kall tim s a. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Skbs and gusmp ftt acts and gunfacts warning kall tim s a",
      "Plymouth approaches - lizard point to starl point",
      "Between 261700 and 6 , 0 mar"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 93,
    "heading": "2026-03-26 17:56:22 AREA: T",
    "published_at": "2026-03-26 17:56:22",
    "area": "T",
    "message_id": "",
    "text": "Z_ZCZC",
    "clean_text": "Z_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": 94,
    "heading": "2026-03-26 17:56:22 AREA: G",
    "published_at": "2026-03-26 17:56:22",
    "area": "G",
    "message_id": "GB10",
    "text": "ZCZC GB10\nGALE WARNING THURSDAY 26 MARCH 1546 UTC\n\nVIKING\nGALE NOW CEAIED BUT SOUTHWESTERLY GALE FORCE ! _0_PXHPWMJZZONONG_OW CEASED\nNNNN",
    "clean_text": "ZCZC GB10\nGALE WARNING THURSDAY 26 MARCH 1546 UTC\n\nVIKING\nGALE NOW CEAIED BUT SOUTHWESTERLY GALE FORCE ! _0_PXHPWMJZZONONG_OW CEASED\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code G. Readable text says: Gale now ceaied but southwesterly gale force ! 0 pxhpwmjzzonong ow ceased.",
    "decoded_highlights": [
      "Gale now ceaied but southwesterly gale force ! 0 pxhpwmjzzonong ow ceased",
      "Gale warning thursday 26 march 1546 utc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 97,
    "heading": "2026-03-26 17:18:10 AREA: T",
    "published_at": "2026-03-26 17:18:10",
    "area": "T",
    "message_id": "TA19",
    "text": "ZCZC TA19\n__438 UTC APR \nOOSTENDERADIO MSI 189/23\nSEAAYPM_VGXZ_H_SONGCWPY_H_YF__SFPIII_VERSIJDE ESTABLISHED BETWEEN BEACH \nAND 51-13.294N 002-51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDNVJONGCWPY_H_YF__S+!_7-_)62*!_20\n_1$(_*12UBSN_KLB_K_WB_KUB_19__/:____$'5____-45.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABOVE \nTHESE PIPELINES\nNNNN",
    "clean_text": "ZCZC TA19\n__438 UTC APR\nOOSTENDERADIO MSI 189/23\nSEAAYPM_VGXZ_H_SONGCWPY_H_YF__SFPIII_VERSIJDE ESTABLISHED BETWEEN BEACH\nAND 51-13.294N 002-51.385E\nMARKED WITH NORTH CARDINAL BUOY 'JDNVJONGCWPY_H_YF__S+!_7-_)62*!_20\n_1$(_*12UBSN_KLB_K_WB_KUB_19__/:____$'5____-45.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TO FISH ABOVE\nTHESE PIPELINES\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text reports a pipeline-related hazard near 51-13.294N 002-51.385E with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor to fish above",
      "Marked with north cardinal buoy 'jdnvjongcwpy h yf s ! 7- )62 ! 20",
      "Marked with north cardinal buoy 'dc1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 100,
    "heading": "2026-03-26 17:16:13 AREA: T",
    "published_at": "2026-03-26 17:16:13",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n051_UTC SEP 25\nOOSTENDERADIO MSI 311/25\nBE EEZ\nEXPLOSIVE LOSTON THE LINE BETWEEN POSIT_ 51-20_, 003-05.47E \nAND 51-20.990N 003-03.586E\nSHIPPING IS REQUESTED NOT TO AOM_NOR TO FISH IN THE VICINITY.\nNNNN",
    "clean_text": "ZCZC TA45\n051_UTC SEP 25\nOOSTENDERADIO MSI 311/25\nBE EEZ\nEXPLOSIVE LOSTON THE LINE BETWEEN POSIT_ 51-20_, 003-05.47E\nAND 51-20.990N 003-03.586E\nSHIPPING IS REQUESTED NOT TO AOM_NOR TO FISH IN THE VICINITY.\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Shipping is requested not to aom nor to fish in the vicinity.",
    "decoded_highlights": [
      "Shipping is requested not to aom nor to fish in the vicinity",
      "Explosive loston the line between posit 51-20 , 003-05.47e"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 102,
    "heading": "2026-03-26 17:15:06 AREA: T",
    "published_at": "2026-03-26 17:15:06",
    "area": "T",
    "message_id": "TA81",
    "text": "ZCZC TA81\n132: .-4\nOOSTENDERADIO MSI 101/26\nTSS-WESTHINDER O\nG_PJHDFWPYM_PJCYF_II_OLE, 51-_3.31_ ___U_UEBUEGPMONGSF_DHMC___('*ZZ_FFKZCZC",
    "clean_text": "ZCZC TA81\n132: .-4\nOOSTENDERADIO MSI 101/26\nTSS-WESTHINDER O\nG_PJHDFWPYM_PJCYF_II_OLE, 51-_3.31_ ___U_UEBUEGPMONGSF_DHMC___('*ZZ_FFKZCZC",
    "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: Tss-westhinder o. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tss-westhinder o"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 108,
    "heading": "2026-03-26 17:10:20 AREA: T",
    "published_at": "2026-03-26 17:10:20",
    "area": "T",
    "message_id": "TA11",
    "text": "ZCZC TA11\n261002 UTC MAR \nOOSTENDERADIO MSI 130/26\n__9_5*_$3-ZEEBRUGGE\nOBSTACLES ON THEMJPLPWMFM_ZS_Z_FM_ZJFHFZJON\nHCIBXMN_KLO:89_0)0._,_DXIBXMC/_9GGCIODPWPONGJDFE__IF_ IS REQUESTED NOT TO ANCHOR NOR FISH IN THE VICINITY\n\n\nNNNN",
    "clean_text": "ZCZC TA11\n261002 UTC MAR\nOOSTENDERADIO MSI 130/26\n__9_5*_$3-ZEEBRUGGE\nOBSTACLES ON THEMJPLPWMFM_ZS_Z_FM_ZJFHFZJON\nHCIBXMN_KLO:89_0)0._,_DXIBXMC/_9GGCIODPWPONGJDFE__IF_ IS REQUESTED NOT TO ANCHOR NOR 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": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Hcibxmn klo:89 0)0. , dxibxmc/ 9ggciodpwpongjdfe if is requested not to anchor nor fish in the vicinity",
      "Obstacles on themjplpwmfm zs z fm zjfhfzjon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 109,
    "heading": "2026-03-26 17:04:57 AREA: S",
    "published_at": "2026-03-26 17:04:57",
    "area": "S",
    "message_id": "SE20",
    "text": "ZCZC SE20\n261500 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nNORTHWEST ABOUT 6, DECREASIG__SZUSEM_YMGHZM_\nRAIN- OR SNOW SHOWERS WITH PARTLY POOR VISIBILITY.\nSEA: 5 _0__6_._'_0._0.__0__6_\nFRIDAY:\nNORTHWEST 4 TO 5, FOR A TIME SHCFTING SOUTHWEST TO SOUTH AND\nINCREASIM\nE_ONGSHPYMYFM_FH_M_ZZ_M_FJFLFSFHE_SEA: FIRST 3 METER.\nNNNN",
    "clean_text": "ZCZC SE20\n261500 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nTHURSDAY:\nNORTHWEST ABOUT 6, DECREASIG__SZUSEM_YMGHZM_\nRAIN- OR SNOW SHOWERS WITH PARTLY POOR VISIBILITY.\nSEA: 5 _0__6_._'_0._0.__0__6_\nFRIDAY:\nNORTHWEST 4 TO 5, FOR A TIME SHCFTING SOUTHWEST TO SOUTH AND\nINCREASIM\nE_ONGSHPYMYFM_FH_M_ZZ_M_FJFLFSFHE_SEA: FIRST 3 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Rain- or snow showers with partly poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Rain- or snow showers with partly poor visibility",
      "Weatherforecast for german bight",
      "Northwest about 6, decreasig szusem ymghzm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 114,
    "heading": "2026-03-26 17:00:14 AREA: S",
    "published_at": "2026-03-26 17:00:14",
    "area": "S",
    "message_id": "SA72",
    "text": "ZCZC SA72\n_CC-HAMBURG\n261300 UTC MAR 26\nNAV. WARN. NO. 180\nTSS TERSCHELLING-GERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISK OF LOSING CONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AND HIGH WAVES FROM A\n\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M\nCONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nAT A WAVE HEIGHT ABOVE 4.0M CONTAINERVESSELS WITH A LENGTH ABOVE _00M\n\nARE RECOMMENDED TO FOLLOW ALTE_HF_PMYZCHPM_FMHJJMPJHM_YF_JKKBZXGWM_PYBMLF_DHM_PJH_YROACH.\nNNNN",
    "clean_text": "ZCZC SA72\n_CC-HAMBURG\n261300 UTC MAR 26\nNAV. WARN. NO. 180\nTSS TERSCHELLING-GERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISK OF LOSING CONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AND HIGH WAVES FROM A\n\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M\nCONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nAT A WAVE HEIGHT ABOVE 4.0M CONTAINERVESSELS WITH A LENGTH ABOVE _00M\n\nARE RECOMMENDED TO FOLLOW ALTE_HF_PMYZCHPM_FMHJJMPJHM_YF_JKKBZXGWM_PYBMLF_DHM_PJH_YROACH.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Measures and alter course if necessary to avoid coming transverse to.",
    "decoded_highlights": [
      "Measures and alter course if necessary to avoid coming transverse to",
      "Following containervessels are at risk of losing containers and",
      "Touching the seabed during heavy sea conditions and high waves from a"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 119,
    "heading": "2026-03-26 16:30:04 AREA: P",
    "published_at": "2026-03-26 16:30:04",
    "area": "P",
    "message_id": "PE65",
    "text": "ZCZC PE65\n261316 UTC MAR 26\nFORECAST DUTCH EEZ ISSUED AT 13:11 UTC 260326\nTHERE ARE NO WARNINGS.\n\nSYNZFXZNSONSZ_UN OVER THE NORTH OF FINLAND IS SLOWLY MOVING \nNORTHEAKT__MGYFW_PMZ_PYMP_PSWMFJMBZ__MHDPM_YZJJMHDPMONZYHDMJPMFMHDPMP_P__IN THE MORNING FOLLOWED BY A \nTROUGH.\n\nFORECAST VALID THURSDAY 15:00 __!''._6!_3._PX_\nG_H_ONONHD_PJMONZYHD_PJHM_YHMGWP_YPJFM_PYMGSHPYML_G WEST TO \nSOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\n\nHUMBER \nNORTHWEST 5-6, DECREASING 3-4, LATER BACKING SOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVED_F_DHM\nP__B_MOB_H_Y_MGWP_YPJFM\nU__UBH_G_PH_Y_\n\nGERMAN BIGHT \nNORHTWEST 5-6, DECREASING 4-5, LATER BACKING WEST TOMONJZCHD_PJ_M_PY_ONGCHFSMSHPYMZ_ONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPFHHFZM_ZWPYHP__G_Z_LY POOR__O_GU_PD_F_DHM\nY__B_MGBPH_Y_MGWP_YPJFM\nU__ METER.\n\n\nDOGGER \nNORTHWEST 5-6, DPCYPJF_M___SHPYML_G SOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVEHEIGHT 4.5-5.5 METER, DECREASING 2.0-3.0 METER.\n\n\nFORECAST VALID FRIDAY 03:00 TILL FRIDAY 15:00 UTC\n\nTHAMES \nWEST TO SOUTHWEST 3-4, INCREASING 4-5, LATER 5-6.\nLATER RAIN OR DRIZZLE.\nGOOD, IN PRE_I_ITATION MODERATE.\nWAVEHEIGHT 1.5-2.0 METER.\n\n\nHUMBER \nSOUTHWEST 3-4, /__60*!._6_._'_06.__3_9,_'_06.6!.+6.26!--'0_GOOD, IN PRECIPITATION MODERATE.\nWAVEHQF_DH_\nU__UBH_G_PH_Y_MGWP_YPJFM\n __P METER.\n\n\nGERMAN BIGHT \nWEST TO SOUTHWEST 3-4, INCREASING SOUTHWEST 4-5, LATER 5-6.\nLATER IN THE WESTERN PART RISK RAIN OR DRIZZLE.\nGOOD, IN PRECIPITATION MODERATE.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\n\nDOGGER \nSOUTHWEST 3-4, SOON INCREASING 4-5.9,_'_06.6!.+6.26!--'0_GOOD, IN PRECIPITATION MODERATE.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\n\n\n\nNNNN",
    "clean_text": "ZCZC PE65\n261316 UTC MAR 26\nFORECAST DUTCH EEZ ISSUED AT 13:11 UTC 260326\nTHERE ARE NO WARNINGS.\n\nSYNZFXZNSONSZ_UN OVER THE NORTH OF FINLAND IS SLOWLY MOVING\nNORTHEAKT__MGYFW_PMZ_PYMP_PSWMFJMBZ__MHDPM_YZJJMHDPMONZYHDMJPMFMHDPMP_P__IN THE MORNING FOLLOWED BY A\nTROUGH.\n\nFORECAST VALID THURSDAY 15:00 __!''._6!_3._PX_\nG_H_ONONHD_PJMONZYHD_PJHM_YHMGWP_YPJFM_PYMGSHPYML_G WEST TO\nSOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\nHUMBER\nNORTHWEST 5-6, DECREASING 3-4, LATER BACKING SOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVED_F_DHM\nP__B_MOB_H_Y_MGWP_YPJFM\nU__UBH_G_PH_Y_\n\nGERMAN BIGHT\nNORHTWEST 5-6, DECREASING 4-5, LATER BACKING WEST TOMONJZCHD_PJ_M_PY_ONGCHFSMSHPYMZ_ONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPFHHFZM_ZWPYHP__G_Z_LY POOR__O_GU_PD_F_DHM\nY__B_MGBPH_Y_MGWP_YPJFM\nU__ METER.\n\nDOGGER\nNORTHWEST 5-6, DPCYPJF_M___SHPYML_G SOUTHWEST.\nMAINLY FIRST OCCASIONAL SHOWERS, RISK WINTRY.\nGOOD, IN PRECIPITATION MODERATE, POSSIBLY POOR.\nWAVEHEIGHT 4.5-5.5 METER, DECREASING 2.0-3.0 METER.\n\nFORECAST VALID FRIDAY 03:00 TILL FRIDAY 15:00 UTC\n\nTHAMES\nWEST TO SOUTHWEST 3-4, INCREASING 4-5, LATER 5-6.\nLATER RAIN OR DRIZZLE.\nGOOD, IN PRE_I_ITATION MODERATE.\nWAVEHEIGHT 1.5-2.0 METER.\n\nHUMBER\nSOUTHWEST 3-4, /__60*!._6_._'_06.__3_9,_'_06.6!.+6.26!--'0_GOOD, IN PRECIPITATION MODERATE.\nWAVEHQF_DH_\nU__UBH_G_PH_Y_MGWP_YPJFM\n__P METER.\n\nGERMAN BIGHT\nWEST TO SOUTHWEST 3-4, INCREASING SOUTHWEST 4-5, LATER 5-6.\nLATER IN THE WESTERN PART RISK RAIN OR DRIZZLE.\nGOOD, IN PRECIPITATION MODERATE.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\nDOGGER\nSOUTHWEST 3-4, SOON INCREASING 4-5.9,_'_06.6!.+6.26!--'0_GOOD, IN PRECIPITATION MODERATE.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "DUTCH EEZ"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Netherlands - Dutch EEZ and southern North Sea. Readable text says there are currently no active warnings for this forecast area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "There are no warnings",
      "Mainly first occasional showers, risk wintry",
      "Norhtwest 5-6, decreasing 4-5, later backing west tomonjzchd pj m py ongchfsmshpymz onal showers, risk wintry"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 120,
    "heading": "2026-03-26 15:40:15 AREA: T",
    "published_at": "2026-03-26 15:40:15",
    "area": "T",
    "message_id": "",
    "text": "ZCWC KAWWO\nAVURNLV CHEROZKYLX\nNU5_1_1.7),$.:_.:84'_9__/=__2_2__2_+2_22__-Z_ZC KA28\n_I_HT W__FLARGE CAQ7)__*:6__.___\n_!-+=_9 __)_..,9 !8__\n:_9_7_U_PI_GCZRMU_IAQPMIRN 001-_9.44E\n50-1_\n50-19.01_, 001-12.02EV_\nB_F\n_YRZCZC",
    "clean_text": "ZCWC KAWWO\nAVURNLV CHEROZKYLX\nNU5_1_1.7),$.:_.:84'_9__/=__2_2__2_+2_22__-Z_ZC KA28\n_I_HT W__FLARGE CAQ7)__*:6__.___\n_!-+=_9 __)_..,9 !8__\n:_9_7_U_PI_GCZRMU_IAQPMIRN 001-_9.44E\n50-1_\n50-19.01_, 001-12.02EV_\nB_F\n_YRZCZC",
    "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: Zcwc kawwo. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Zcwc kawwo",
      "Avurnlv cherozkylx"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 121,
    "heading": "2026-03-26 15:22:35 AREA: S",
    "published_at": "2026-03-26 15:22:35",
    "area": "S",
    "message_id": "SA72",
    "text": "ZCZC SA72\nNAVTEX_G__LCYM_V_T_J__NCMN___._-4 26\n_,\n_2-4,. NO.8180\nTSS TERSCHELLINGTAKGERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISV\nOX\nSZK_MHV_ONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AMD HIGH WAVES FROM A\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO _WCP\nUNNROPRIATE\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING H DSVERSE TO\nTHE WAVE DIRECTION.\nAT A WAVE HEI_DHMLZ_P\nNRGLO\nU__BQP_PB_MMSP_HDMLZ_PM\nU_GBON_II_MMENDED TZMZS_Z_MSHPYHF_PMYZCHP_ TSS EAST FRIESLAND\nAND GERMAN IMN\n___JHPYM_H.\nNNNN",
    "clean_text": "ZCZC SA72\nNAVTEX_G__LCYM_V_T_J__NCMN___._-4 26\n_,\n_2-4,. NO.8180\nTSS TERSCHELLINGTAKGERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISV\nOX\nSZK_MHV_ONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AMD HIGH WAVES FROM A\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO _WCP\nUNNROPRIATE\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING H DSVERSE TO\nTHE WAVE DIRECTION.\nAT A WAVE HEI_DHMLZ_P\nNRGLO\nU__BQP_PB_MMSP_HDMLZ_PM\nU_GBON_II_MMENDED TZMZS_Z_MSHPYHF_PMYZCHP_ TSS EAST FRIESLAND\nAND GERMAN IMN\n___JHPYM_H.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT",
      "EAST FRIESLAND"
    ],
    "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: Measures and alter course if necessary to avoid coming h dsverse to. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Measures and alter course if necessary to avoid coming h dsverse to",
      "Touching the seabed during heavy sea conditions amd high waves from a",
      "At a wave height above 3.0m containervessels have to wcp"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 122,
    "heading": "2026-03-26 15:08:04 AREA: G",
    "published_at": "2026-03-26 15:08:04",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA(3\n_-.__.T_EO_TWZY_\nNEART N_ GAOITHE WINDARM.\n1. NNG E BUOY 56-14.3/,=\n_U_FI_KKBEGUMWM_MJMLCZRM __CMK\n___09.8W A_S INOPERATIVE.5_\n_:-,:_) 0+ 10/26 (GA91)!\n_,,,,\n\nZCZC",
    "clean_text": "ZCZC GA(3\n_-.__.T_EO_TWZY_\nNEART N_ GAOITHE WINDARM.\n1. NNG E BUOY 56-14.3/,=\n_U_FI_KKBEGUMWM_MJMLCZRM __CMK\n___09.8W A_S INOPERATIVE.5_\n_:-,:_) 0+ 10/26 (GA91)!\n_,,,,\n\nZCZC",
    "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: 09.8w a s inoperative.5. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "09.8w a s inoperative.5",
      "1. nng e buoy 56-14.3/",
      "Neart n gaoithe windarm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 123,
    "heading": "2026-03-26 15:07:40 AREA: T",
    "published_at": "2026-03-26 15:07:40",
    "area": "T",
    "message_id": "",
    "text": "ZGZCZC",
    "clean_text": "ZGZCZC",
    "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": 124,
    "heading": "2026-03-26 15:07:40 AREA: G",
    "published_at": "2026-03-26 15:07:40",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 B\nO__\nO_\nMUN 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 B\nO__\nO_\nMUN 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl oil field.",
    "decoded_highlights": [
      "Beryl oil field",
      "Beryl spm3 b",
      "Mun 001-33.5e temporarily removed"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 125,
    "heading": "2026-03-26 15:06:08 AREA: G",
    "published_at": "2026-03-26 15:06:08",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA7+:+: 0)12\n261302 UTC MAR _*_-=3 _38__5 2-4,8,_  300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 261300 UTC MAR\n\nCONTAINER VESSELS WITH A LE_HD_Z.\n __UGBM_PMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIAH\nV_PJCYPJMHZ__MSZJFM_ZHFPYJ\n_NNNN",
    "clean_text": "ZCZC GA7+:+: 0)12\n261302 UTC MAR _*_-=3 _38__5 2-4,8,_ 300CM TSS TERSCHELLING - GERMAN BIGHT ISSUED AT 261300 UTC MAR\n\nCONTAINER VESSELS WITH A LE_HD_Z.\n__UGBM_PMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWEST TO NORTHWEST TO NORTHERLY DIRECTION.\nTHESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIAH\nV_PJCYPJMHZ__MSZJFM_ZHFPYJ\n_NNNN",
    "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: These vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriah. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "These vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriah",
      "Container vessels with a le hd z"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 126,
    "heading": "2026-03-26 15:05:38 AREA: T",
    "published_at": "2026-03-26 15:05:38",
    "area": "T",
    "message_id": "",
    "text": "ZCZCM_CYONG__M\n__TU_MONGDC_LP \nRAVENSPURN NORTH GAS FIELD. \nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPELATIVE. \nNNNN",
    "clean_text": "ZCZCM_CYONG__M\n__TU_MONGDC_LP\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPELATIVE.\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inopelative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Platform north 43/26-st2, 54-03.2n 001-02.0e, unlit and all navaids inopelative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-03-26 15:05:13 AREA: G",
    "published_at": "2026-03-26 15:05:13",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR..9,_9,,8887ZCZC",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR..9,_9,,8887ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55-04.4n 001-27.8w off air..9, 9,,8887zczc",
      "Mrcc humber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 128,
    "heading": "2026-03-26 15:03:44 AREA: P",
    "published_at": "2026-03-26 15:03:44",
    "area": "P",
    "message_id": "PL12",
    "text": "ZCZC PL12\n261302 UTC MAR 26\nWAVE HEIGHT WARNING  3_GXBMHJJMHPYJ_DPSSFM_MG_PYBMLF_DHMFJJCPWMHMHU_ _MG_HXM_YONON_ZHFPYM_PJJPSJM_FHDMMSP_HD_Z.\n __UGBMYPMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWPJHMHZMZYHD_PJHMHZMZYHDPYS_MWFYP_HF__THESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINER_\n_NNNN",
    "clean_text": "ZCZC PL12\n261302 UTC MAR 26\nWAVE HEIGHT WARNING 3_GXBMHJJMHPYJ_DPSSFM_MG_PYBMLF_DHMFJJCPWMHMHU_ _MG_HXM_YONON_ZHFPYM_PJJPSJM_FHDMMSP_HD_Z.\n__UGBMYPMHMYFJ_MZ.'+*!._+_!06*.2:6!_.$__3- :9,$8589,', IN PARTICULAR FROM A WEST-NORTHWPJHMHZMZYHD_PJHMHZMZYHDPYS_MWFYP_HF__THESE VESSELS SHOULD ALTER COURSE IF NECESSARY TO AVOID COMING ABEAM TO THE WAVES AND TAKE OTHER APPROPRIATE MEASURES TO AVOID LOSING CONTAINER_\n_NNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: Wave height warning 3 gxbmhjjmhpyj dpssfm mg pybmlf dhmfjjcpwmhmhu mg hxm yonon zhfpym pjjpsjm fhdmmsp hd z. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wave height warning 3 gxbmhjjmhpyj dpssfm mg pybmlf dhmfjjcpwmhmhu mg hxm yonon zhfpym pjjpsjm fhdmmsp hd z",
      "Ugbmypmhmyfj mz.' !. !06 .2:6! .$ 3- :9,$8589,', in particular from a west-northwpjhmhzmzyhd pjhmhzmzyhdpys mwfyp hf these vessels should alter course if necessary to avoid coming abeam to the waves and take other appropriate measures to avoid losing container"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 129,
    "heading": "2026-03-26 15:02:54 AREA: G",
    "published_at": "2026-03-26 15:02:54",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\n_(+ 225/269__6.$''.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES YZBM__PPJJMJIIIK_\nB_BCC_CG_M\n_U__UGU_Z_._6_2. CANCEL W_M\n_ _TUEMVG\nFS_ONGONNIII_ZXAXM__PO_G_AM\n_U_TUJO_DSS. MRCC SHETLAND.\nVHF DSC SERVICES FR_ZCZC",
    "clean_text": "ZCZC GA04\n_(+ 225/269__6.$''.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES YZBM__PPJJMJIIIK_\nB_BCC_CG_M\n_U__UGU_Z_._6_2. CANCEL W_M\n_ _TUEMVG\nFS_ONGONNIII_ZXAXM__PO_G_AM\n_U_TUJO_DSS. MRCC SHETLAND.\nVHF DSC SERVICES FR_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. mf r/t and dsc services yzbm ppjjmjiiik",
      "Vhf dsc services fr zczc",
      "Mrcc shetland"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 130,
    "heading": "2026-03-26 15:02:24 AREA: G",
    "published_at": "2026-03-26 15:02:24",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/2_9,_$:_)0__BESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. _:_0'._-.8_=26 (GA54).\nNNNN",
    "clean_text": "ZCZC GA07\nWZ 226/2_9,_$:_)0__BESSEMER GAS FIELD.\n1. PLATFORM 49/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. _:_0'._-.8_=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": [
      "BESSEMER GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 53-11.9N 002-29.1E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/23e, 53-11.9n 002-29.1e, fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 131,
    "heading": "2026-03-26 15:02:01 AREA: G",
    "published_at": "2026-03-26 15:02:01",
    "area": "G",
    "message_id": "GA10",
    "text": "ZCZC GA10\nWZ 230/26 \nFAIR ISLE. \nRZ_MDPWMSF_DHDZCJPM\n__  _HG_M\n_ __EGUMJP_HZMS__ZHJIIIKYPSFLSP_\nNNNN",
    "clean_text": "ZCZC GA10\nWZ 230/26\nFAIR ISLE.\nRZ_MDPWMSF_DHDZCJPM\n__ _HG_M\n_ __EGUMJP_HZMS__ZHJIIIKYPSFLSP_\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: Fair isle. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fair isle",
      "Rz mdpwmsf dhdzcjpm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 132,
    "heading": "2026-03-26 15:01:35 AREA: G",
    "published_at": "2026-03-26 15:01:35",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVT.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVT.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform southwark 53-11.0n 002-05.8e unlit and all navaids inoperativt.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e unlit and all navaids inoperativt",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 133,
    "heading": "2026-03-26 15:00:15 AREA: G",
    "published_at": "2026-03-26 15:00:15",
    "area": "G",
    "message_id": "GB09",
    "text": "ZCZC GB09\nCULLERCOATSRADIO\nGALE WARNING THURSDAY 26 MARCH 0946 UTC\n\nFORTIES\nNORTHWESTERLY GALE FORCE 8 CONTINUING\n\nCROMARTY\nGALE NOUM_PJPWONONGWZ_\nNORTHWESTERLY GALE FORCE 8 CONTINUING\n\nFAIR IJSPONG_SPMZUM_PJPWMLCHMJZCHDPYSEM_S_M_E 8 EXPECTED SOON, VEERING SOUTHWESTERLY LATER\n\n\nIMMINENT: EXPECTED WITHIN SIX HOURS OF TIME OF ISSUE\n\nSOON: EXPECTED WITHIN SIX TO 12 HOURS OF TIME OF ISJCPONONGSHPY_EXPECTED MORE THAN 12 HOURS FROM TIME OF ISSUE\nNNNN",
    "clean_text": "ZCZC GB09\nCULLERCOATSRADIO\nGALE WARNING THURSDAY 26 MARCH 0946 UTC\n\nFORTIES\nNORTHWESTERLY GALE FORCE 8 CONTINUING\n\nCROMARTY\nGALE NOUM_PJPWONONGWZ_\nNORTHWESTERLY GALE FORCE 8 CONTINUING\n\nFAIR IJSPONG_SPMZUM_PJPWMLCHMJZCHDPYSEM_S_M_E 8 EXPECTED SOON, VEERING SOUTHWESTERLY LATER\n\nIMMINENT: EXPECTED WITHIN SIX HOURS OF TIME OF ISSUE\n\nSOON: EXPECTED WITHIN SIX TO 12 HOURS OF TIME OF ISJCPONONGSHPY_EXPECTED MORE THAN 12 HOURS FROM TIME OF ISSUE\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS",
      "CULLERCOATSRADIO"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Gale warning thursday 26 march 0946 utc.",
    "decoded_highlights": [
      "Gale warning thursday 26 march 0946 utc",
      "Northwesterly gale force 8 continuing",
      "Gale noum pjpwonongwz"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 134,
    "heading": "2026-03-26 14:58:01 AREA: S",
    "published_at": "2026-03-26 14:58:01",
    "area": "S",
    "message_id": "SB40",
    "text": "ZCZC SB40\n261256 NAVTEX-HAMBURG (NCC)\nWARNING NO. 108  261255UTC MAR\nFOR GERMAN BIGHT:\nNO WARNING.\nNNNN",
    "clean_text": "ZCZC SB40\n261256 NAVTEX-HAMBURG (NCC)\nWARNING NO. 108 261255UTC MAR\nFOR GERMAN BIGHT:\nNO WARNING.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Germany - German Bight and German North Sea. Readable text says: Warning no. 108 261255utc mar.",
    "decoded_highlights": [
      "Warning no. 108 261255utc mar",
      "No warning",
      "261256 navtex-hamburg (ncc)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 135,
    "heading": "2026-03-26 14:22:22 AREA: S",
    "published_at": "2026-03-26 14:22:22",
    "area": "S",
    "message_id": "SA71",
    "text": "ZCZC SA71\nNAVTEX-HAMBURG (NCC)\n261215 UTC MAR 26\nNAV. WRF_OM+__. :+9,_\n_\n___76 CANCELLED.\nNNNN",
    "clean_text": "ZCZC SA71\nNAVTEX-HAMBURG (NCC)\n261215 UTC MAR 26\nNAV. WRF_OM+__. :+9,_\n_\n___76 CANCELLED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Navtex-hamburg (ncc). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Navtex-hamburg (ncc)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 136,
    "heading": "2026-03-26 14:05:35 AREA: P",
    "published_at": "2026-03-26 14:05:35",
    "area": "P",
    "message_id": "PL11",
    "text": "ZCZC PL11\n261204=UTC MAR 26\nSEASTATE WARNING CANCELED 261200 UTC MAR\nNNNN",
    "clean_text": "ZCZC PL11\n261204=UTC MAR 26\nSEASTATE WARNING CANCELED 261200 UTC MAR\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "L",
    "decoded_summary": "navigational warning for Unresolved B1 code P. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 140,
    "heading": "2026-03-26 13:18:15 AREA: T",
    "published_at": "2026-03-26 13:18:15",
    "area": "T",
    "message_id": "TA53",
    "text": "ZCZC TA53\n131305 UTC _EC 25\nOOSTENDERADIO MSI 476/25\nBE EEZ\nPOFDI__XPLOSIVE ON THE S__TQAEYMPWPN 002-35.18!(9__*$!_8' 43173'53_ ,95 59 -,_.+6._+._!*$.!._$0._!8__7._,856.\n_\nNNNN",
    "clean_text": "ZCZC TA53\n131305 UTC _EC 25\nOOSTENDERADIO MSI 476/25\nBE EEZ\nPOFDI__XPLOSIVE ON THE S__TQAEYMPWPN 002-35.18!(9__*$!_8' 43173'53_ ,95 59 -,_.+6._+._!*$.!._$0._!8__7._,856.\n_\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. 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": 142,
    "heading": "2026-03-26 13:16:55 AREA: T",
    "published_at": "2026-03-26 13:16:55",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n051111 UTCCS\n_NGZZJHPWPYWFZM_JFM\n__ _UL_E EEZ\nEXPLOSIVE LOSTON GHE LINE BETWEEN POSITIONS 51-20.04M _PPEAPTMFUE \nAND 51-20.990N 003-03.586E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TOM_FJDMFMHDPM\nF_FFHE__\n_TFF_N__ZCZC",
    "clean_text": "ZCZC TA45\n051111 UTCCS\n_NGZZJHPWPYWFZM_JFM\n__ _UL_E EEZ\nEXPLOSIVE LOSTON GHE LINE BETWEEN POSITIONS 51-20.04M _PPEAPTMFUE\nAND 51-20.990N 003-03.586E\nSHIPPING IS REQUESTED NOT TO ANCHOR NOR TOM_FJDMFMHDPM\nF_FFHE__\n_TFF_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 sets local operating restrictions near 51-20.990N 003-03.586E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor tom fjdmfmhdpm",
      "Explosive loston ghe line between positions 51-20.04m ppeaptmfue",
      "Ngzzjhpwpywfzm jfm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 145,
    "heading": "2026-03-26 13:13:48 AREA: T",
    "published_at": "2026-03-26 13:13:48",
    "area": "T",
    "message_id": "TA87",
    "text": "ZCZC TA87\n17_73_ /75: .-4\nOOSTENDERADIO MSI 107/26\n_9+*_020___00)6:_\nCABLE OPERATIONS BY M/V MANU PEKKA AND M/V DUCE\nB_TWEEN FOLLOWINTORDINATES : \n51-31.75N 002-31.1_J\n51-20.82N 002-52.76E \n5_7=++0_.\n_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 ENTIRE CORRIDOR\nSHIPPING REQUESTED TO_PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OU_ ON VHF CH 16 AND 65\nNNNN",
    "clean_text": "ZCZC TA87\n17_73_ /75: .-4\nOOSTENDERADIO MSI 107/26\n_9+*_020___00)6:_\nCABLE OPERATIONS BY M/V MANU PEKKA AND M/V DUCE\nB_TWEEN FOLLOWINTORDINATES :\n51-31.75N 002-31.1_J\n51-20.82N 002-52.76E\n5_7=++0_.\n_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 ENTIRE CORRIDOR\nSHIPPING REQUESTED TO_PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OU_ 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": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: A ban on achoring and fishing in the entire corridor. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A ban on achoring and fishing in the entire corridor",
      "Cable operations by m/v manu pekka and m/v duce",
      "Shipping requested to pass at a safe distance"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 147,
    "heading": "2026-03-26 13:11:46 AREA: T",
    "published_at": "2026-03-26 13:11:46",
    "area": "T",
    "message_id": "TA04",
    "text": "ZCZC TA04\n4'!06._:_/._69,_++*_02062!+._*!_= _57_.9___+*_'.6+/_,_K___NB()K_AQDUB_\nSPECIAL PURPOSE BUOY KYCN, Y. FL 5S, 51-09.88N 002-43.00E ESTALSFJDPWMONONGONNIII_ZCZC",
    "clean_text": "ZCZC TA04\n4'!06._:_/._69,_++*_02062!+._*!_= _57_.9___+*_'.6+/_,_K___NB()K_AQDUB_\nSPECIAL PURPOSE BUOY KYCN, Y. FL 5S, 51-09.88N 002-43.00E ESTALSFJDPWMONONGONNIII_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: Special purpose buoy kycn, y. fl 5s, 51-09.88n 002-43.00e estalsfjdpwmonongonniii zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Special purpose buoy kycn, y. fl 5s, 51-09.88n 002-43.00e estalsfjdpwmonongonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 148,
    "heading": "2026-03-26 13:11:04 AREA: T",
    "published_at": "2026-03-26 13:11:04",
    "area": "T",
    "message_id": "TA10",
    "text": "ZCZC TA10\n__0708 UTC MAR 26\nOOSTENDERADIO MSI 12__*9,_20_398KAAQD_EQEQOH_'3' 8, 5_3 .8$$)3 '3:594 9! )9._-4$'8*$39,__+23._73._MU_E_G6+_.__MGCHFSM_RY SECTOR IS LISTENING ON CHAN 16 AND 74 \n\nF_N_\n\nZCZC",
    "clean_text": "ZCZC TA10\n__0708 UTC MAR 26\nOOSTENDERADIO MSI 12__*9,_20_398KAAQD_EQEQOH_'3' 8, 5_3 .8$$)3 '3:594 9! )9._-4$'8*$39,__+23._73._MU_E_G6+_.__MGCHFSM_RY SECTOR IS LISTENING ON CHAN 16 AND 74\n\nF_N_\n\nZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. 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": 153,
    "heading": "2026-03-26 13:01:22 AREA: S",
    "published_at": "2026-03-26 13:01:22",
    "area": "S",
    "message_id": "SA70",
    "text": "ZCZC SA70\nNCC-HAMBURG\n260430 UTC MAR 26\nNAV. WARN. NO. 176\nTSS TERSCHELLING-GERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISK OF LOSING CONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AND HIGH WAVES FROM A\n\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nATVA U\nPMDPF_DHMLZ_PM\nY_GBM_ZHFPY_PJW_M_FHDMMSP_HDMLZ_PM\nU_GBON_IIU_YPMYPXZ_BPWPWMHZM_ZS_Z_MSHPYHF_PMYZCHPM_FMHJJMPJHM_YFPJSWONGWM_PYZMLF_DHM_PJHPYM__Y_XD_BONGONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK_K_\nKZCZC",
    "clean_text": "ZCZC SA70\nNCC-HAMBURG\n260430 UTC MAR 26\nNAV. WARN. NO. 176\nTSS TERSCHELLING-GERMAN BIGHT\nFOLLOWING CONTAINERVESSELS ARE AT RISK OF LOSING CONTAINERS AND\nTOUCHING THE SEABED DURING HEAVY SEA CONDITIONS AND HIGH WAVES FROM A\n\nNORTH TO NORTHWEST DIRECTION:\nAT A WAVE HEIGHT ABOVE 3.0M CONTAINERVESSELS HAVE TO TAKE APPROPRIATE\n\nMEASURES AND ALTER COURSE IF NECESSARY TO AVOID COMING TRANSVERSE TO\n\nTHE WAVE DIRECTION.\nATVA U\nPMDPF_DHMLZ_PM\nY_GBM_ZHFPY_PJW_M_FHDMMSP_HDMLZ_PM\nU_GBON_IIU_YPMYPXZ_BPWPWMHZM_ZS_Z_MSHPYHF_PMYZCHPM_FMHJJMPJHM_YFPJSWONGWM_PYZMLF_DHM_PJHPYM__Y_XD_BONGONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK_K_\nKZCZC",
    "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: Measures and alter course if necessary to avoid coming transverse to. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Measures and alter course if necessary to avoid coming transverse to",
      "Following containervessels are at risk of losing containers and",
      "Touching the seabed during heavy sea conditions and high waves from a"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 154,
    "heading": "2026-03-26 13:00:50 AREA: S",
    "published_at": "2026-03-26 13:00:50",
    "area": "S",
    "message_id": "SB39",
    "text": "ZCZC SB39\n261100 NAVTEX-HAMBURG (NCC)\nWARNING NO. 107  260905UTC MAR\nFOR GERMAN BIGH\n:98OZYHDPYM_YHMUM_C_G_PJF_MFB_FPH_NNNN",
    "clean_text": "ZCZC SB39\n261100 NAVTEX-HAMBURG (NCC)\nWARNING NO. 107 260905UTC MAR\nFOR GERMAN BIGH\n:98OZYHDPYM_YHMUM_C_G_PJF_MFB_FPH_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Germany - German Bight and German North Sea. Readable text says: Warning no. 107 260905utc mar. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Warning no. 107 260905utc mar",
      "261100 navtex-hamburg (ncc)",
      "For german bigh"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 156,
    "heading": "2026-03-26 12:31:38 AREA: P",
    "published_at": "2026-03-26 12:31:38",
    "area": "P",
    "message_id": "PA55",
    "text": "ZCZC PA55\n1!__TC MAR 26\nMJFM_FCTWY\nSLIJKGAT\nBUOY SG 6A 51-50.8N 003-55.5E MISSING\nCANCEL MSI 84/26\nNNNN",
    "clean_text": "ZCZC PA55\n1!__TC MAR 26\nMJFM_FCTWY\nSLIJKGAT\nBUOY SG 6A 51-50.8N 003-55.5E MISSING\nCANCEL MSI 84/26\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: Buoy sg 6a 51-50.8n 003-55.5e missing.",
    "decoded_highlights": [
      "Buoy sg 6a 51-50.8n 003-55.5e missing",
      "Mjfm fctwy",
      "Slijkgat"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 158,
    "heading": "2026-03-26 12:15:47 AREA: T",
    "published_at": "2026-03-26 12:15:47",
    "area": "T",
    "message_id": "TA11",
    "text": "ZCZC TA11\n261002 UTC MAR_\nOOSTENDERADIO MSI 130/26\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POSITIONS\n51 17,352N 002 56,610E\n51 17,281N 0:\n$5_3_398_!9(!_!_8(_.!*.60_:0*_02.+_._+._$+_.!._$0.\n!_!___9,9,9,_9,,8==(===========_*_\n___+:+: 0-61\n201647 UTC MAR 26\nMSI 94/26\n\nAMELAND INSHORPMHY_!/.-+09,_$0._+'_+_!.)_+_*.60._06_0_'3._!_$26_9__53-28.52N 005-50.48E\nA2  53-28.42N 005-50.49E\nA3  53-28.20N 005-50.52E\n\nB0  53-28.77N 005-51.16E\nB1  53-28.56N 005-51.19E\nB2  53-28.45N 005-51.21E\nB3  53-28.24N 005-51.24E\n\nC0  53-28.59N 005-51.72E\nC1  53-28.67N 005-51.18E\nC2  53-28.48N 005-51.74E\nC3  53-28.27N 005-51.77E \nNNNN",
    "clean_text": "ZCZC TA11\n261002 UTC MAR_\nOOSTENDERADIO MSI 130/26\nOOSTENDE-ZEEBRUGGE\nOBSTACLES ON THE SEABED IN FOLLOWING POSITIONS\n51 17,352N 002 56,610E\n51 17,281N 0:\n$5_3_398_!9(!_!_8(_.!*.60_:0*_02.+_._+._$+_.!._$0.\n!_!___9,9,9,_9,,8==(===========_*_\n___+:+: 0-61\n201647 UTC MAR 26\nMSI 94/26\n\nAMELAND INSHORPMHY_!/.-+09,_$0._+'_+_!.)_+_*.60._06_0_'3._!_$26_9__53-28.52N 005-50.48E\nA2 53-28.42N 005-50.49E\nA3 53-28.20N 005-50.52E\n\nB0 53-28.77N 005-51.16E\nB1 53-28.56N 005-51.19E\nB2 53-28.45N 005-51.21E\nB3 53-28.24N 005-51.24E\n\nC0 53-28.59N 005-51.72E\nC1 53-28.67N 005-51.18E\nC2 53-28.48N 005-51.74E\nC3 53-28.27N 005-51.77E\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text reports seabed obstacles near 53-28.42N 005-50.49E; 53-28.20N 005-50.52E and warns against anchoring or fishing nearby. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Obstacles on the seabed in following positions",
      "Oostende-zeebrugge"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 159,
    "heading": "2026-03-26 11:13:25 AREA: S",
    "published_at": "2026-03-26 11:13:25",
    "area": "S",
    "message_id": "SB39",
    "text": "ZCZC SB39\n260912 NAVTEX-HAMBURG (NCC)\nWARNING NO. 107  260905UTC MAR\nFOR GERMAN BIGHT:\nNORTHERN PART NW 7, CEASING IMMINENT.\nNNNN",
    "clean_text": "ZCZC SB39\n260912 NAVTEX-HAMBURG (NCC)\nWARNING NO. 107 260905UTC MAR\nFOR GERMAN BIGHT:\nNORTHERN PART NW 7, CEASING IMMINENT.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Germany - German Bight and German North Sea. Readable text says: Warning no. 107 260905utc mar.",
    "decoded_highlights": [
      "Warning no. 107 260905utc mar",
      "Northern part nw 7, ceasing imminent",
      "260912 navtex-hamburg (ncc)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 160,
    "heading": "2026-03-26 11:09:30 AREA: G",
    "published_at": "2026-03-26 11:09:30",
    "area": "G",
    "message_id": "GPUE",
    "text": "ZCZC GPUE\nWZ 130/26\nFORTH__ _D_AYOMM_Z__WNBK7_:3)_NG E\nBUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPEZY_A_WM CANCEL WZ 10/26 (GA91).\nNNNN",
    "clean_text": "ZCZC GPUE\nWZ 130/26\nFORTH__ _D_AYOMM_Z__WNBK7_:3)_NG E\nBUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPEZY_A_WM CANCEL WZ 10/26 (GA91).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "P",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: Buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inopezy a wm cancel wz 10/26 (ga91). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inopezy a wm cancel wz 10/26 (ga91)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 161,
    "heading": "2026-03-26 11:09:05 AREA: G",
    "published_at": "2026-03-26 11:09:05",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIEL_\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIEL_\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed",
      "Beryl oil fiel"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  }
]