[
  {
    "index": 1,
    "heading": "2026-04-03 06:10:20 AREA: T",
    "published_at": "2026-04-03 06:10:20",
    "area": "T",
    "message_id": "TA23",
    "text": "ZCZC TA23\n011244 UT_ APR\nOOSTENDERADIO MSI 1_4_26\nTSS-WESTHI_\nCALIBRAT_BEACON LOST BY VESSEL GEOSURVEYOR 11\nIO__N_CINITY OF POS 51 24.3N 002 51.4E\nSHIPPING IS REQUEST_ED NOT TO ANCHOR NOR TO FISH \nIN THE VICINITY\nNNNN",
    "clean_text": "ZCZC TA23\n011244 UT_ APR\nOOSTENDERADIO MSI 1_4_26\nTSS-WESTHI_\nCALIBRAT_BEACON LOST BY VESSEL GEOSURVEYOR 11\nIO__N_CINITY OF POS 51 24.3N 002 51.4E\nSHIPPING IS REQUEST_ED NOT TO ANCHOR NOR TO FISH\nIN THE VICINITY\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is request ed not to anchor nor to fish",
      "Calibrat beacon lost by vessel geosurveyor 11",
      "Io n cinity of pos 51 24.3n 002 51.4e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-04-03 06:06:23 AREA: S",
    "published_at": "2026-04-03 06:06:23",
    "area": "S",
    "message_id": "SE65",
    "text": "ZCZC SE65\n030300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nG_YF_E_WIND: WEST TO NORTHWEST ABOUT 4, FOR A TIME SHIFTING SOUTH 6.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, SHIFTING SOUTH, INCREASING ABOUT 7.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METER, WESTERN PART LATER 4 METER.\nNNNN",
    "clean_text": "ZCZC SE65\n030300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nG_YF_E_WIND: WEST TO NORTHWEST ABOUT 4, FOR A TIME SHIFTING SOUTH 6.\nVISIBILITY/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, SHIFTING SOUTH, INCREASING ABOUT 7.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METER, WESTERN PART LATER 4 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: rain or shower with partly poor visibility.",
    "decoded_highlights": [
      "Visibility/weather: rain or shower with partly poor visibility",
      "Visibility/weather: locally shower with poor visibility",
      "Weatherforecast for german bight"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 3,
    "heading": "2026-04-03 06:05:46 AREA: S",
    "published_at": "2026-04-03 06:05:46",
    "area": "S",
    "message_id": "SA34",
    "text": "ZCZC SA34\nNCCTA___LCY_ON\nH_PMG_HXM_Y_\n_NAV. WARN. NO. 129\nTSS GERMAN BIGHT WESTERN APPROACH\n'GW/EMS' LIGHT-VESSEL 54-10N 006-21E TEMPORARILYMYPBZ__W\n_ONGONNKKKKKKKVVVVVVVVVVVVVVVVVVVVVVVVVVVVVXZCZC",
    "clean_text": "ZCZC SA34\nNCCTA___LCY_ON\nH_PMG_HXM_Y_\n_NAV. WARN. NO. 129\nTSS GERMAN BIGHT WESTERN APPROACH\n'GW/EMS' LIGHT-VESSEL 54-10N 006-21E TEMPORARILYMYPBZ__W\n_ONGONNKKKKKKKVVVVVVVVVVVVVVVVVVVVVVVVVVVVVXZCZC",
    "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",
      "GW EMS"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: 'gw/ems' light-vessel 54-10n 006-21e temporarilymypbz w. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'gw/ems' light-vessel 54-10n 006-21e temporarilymypbz w",
      "Ongonnkkkkkkkvvvvvvvvvvvvvvvvvvvvvvvvvvvvvxzczc",
      "Tss german bight western approach"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-04-03 06:05:11 AREA: S",
    "published_at": "2026-04-03 06:05:11",
    "area": "S",
    "message_id": "SA75",
    "text": "ZCZC SA75\nNCC-HAMBURG\n_70950 UTC MAR 26\nNAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUFSH_ 'JUIFT_GMO__2__-2_',_C_EEOON0:$ .8''8,_.\nNNNN",
    "clean_text": "ZCZC SA75\nNCC-HAMBURG\n_70950 UTC MAR 26\nNAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUFSH_ 'JUIFT_GMO__2__-2_',_C_EEOON0:$ .8''8,_.\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: Nav. warn. no. 183. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nav. warn. no. 183",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 6,
    "heading": "2026-04-03 06:03:57 AREA: S",
    "published_at": "2026-04-03 06:03:57",
    "area": "S",
    "message_id": "SA80",
    "text": "ZCZC SA80\nNCC-HAMBURG\n3_ _0MG_HXM_Y_\n_NAV. WARN. NO. 189\nEIDER ESTUA_E__\n 'EIDER' LIGHTBUOY  54-16N 008-29E\nTEMPORARILY REPLACED BY UNLIT BUOY.\nNNNN",
    "clean_text": "ZCZC SA80\nNCC-HAMBURG\n3_ _0MG_HXM_Y_\n_NAV. WARN. NO. 189\nEIDER ESTUA_E__\n'EIDER' LIGHTBUOY 54-16N 008-29E\nTEMPORARILY REPLACED BY UNLIT BUOY.\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: 'eider' lightbuoy 54-16n 008-29e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'eider' lightbuoy 54-16n 008-29e",
      "Temporarily replaced by unlit buoy",
      "Nav. warn. no. 189"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-04-03 06:02:03 AREA: S",
    "published_at": "2026-04-03 06:02:03",
    "area": "S",
    "message_id": "SA82",
    "text": "ZCZC SA82\nNCC-HAMBURHON\n EPMG_H_MYM\n_NAV. WAGB_RMAF_DM\nFM\nL_EBWA_Z_EJQBAC__O\n_B_B_KE_HORE 1'.\nSURVEY OPERATIONS IN PROGRESS BY MV 'KOMMANDOR ORCA', CS 'MKFI8',\nAROUND POSITION 54-28,5N 005-30,8E.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 NM GEKU_JHPW_NNNN",
    "clean_text": "ZCZC SA82\nNCC-HAMBURHON\nEPMG_H_MYM\n_NAV. WAGB_RMAF_DM\nFM\nL_EBWA_Z_EJQBAC__O\n_B_B_KE_HORE 1'.\nSURVEY OPERATIONS IN PROGRESS BY MV 'KOMMANDOR ORCA', CS 'MKFI8',\nAROUND POSITION 54-28,5N 005-30,8E.\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 1 NM GEKU_JHPW_NNNN",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code S. Readable text reports survey operations near 54-28.5N 005-30.8E and implies local caution around the work area. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey operations in progress by mv 'kommandor orca', cs 'mkfi8'",
      "Around position 54-28,5n 005-30,8e",
      "Restricted manoevrability during operations"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 10,
    "heading": "2026-04-03 06:00:14 AREA: S",
    "published_at": "2026-04-03 06:00:14",
    "area": "S",
    "message_id": "SA85",
    "text": "ZCZC SA85\nNCC-'/4___1_BXGC APR 26\nNAV. WARN..__+__. __-, _8__5.+6_+6_$_0*_06'_! 'BARD OFFSHORE 1'.\nC_ZMQMEBQOS__HOBNPA', CS 'GDLS' '1__\n_5,!2$$-___VILRSLG_\nWX_TED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF 1 NM REQUESTED.\nON_ZCZC",
    "clean_text": "ZCZC SA85\nNCC-'/4___1_BXGC APR 26\nNAV. WARN..__+__. __-, _8__5.+6_+6_$_0*_06'_! 'BARD OFFSHORE 1'.\nC_ZMQMEBQOS__HOBNPA', CS 'GDLS' '1__\n_5,!2$$-___VILRSLG_\nWX_TED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF 1 NM REQUESTED.\nON_ZCZC",
    "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": [
      "BARD OFFSHORE"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Safe berth of 1 nm requested. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Safe berth of 1 nm requested",
      "Wx ted manoeuvrability during operations"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-03 05:58:07 AREA: R",
    "published_at": "2026-04-03 05:58:07",
    "area": "R",
    "message_id": "RA92",
    "text": "ZCZC RA92\n9-_9-_7-/____29,_'._22'_+_3(77--7__7\n,7\nRELAW'9,_*(37'_\n'__$85344-,3-.*BK_OLLO_FM_)-+___+6__9__3_*0__ 58.977E\nFROM 10_.-4 2_2__!'.'/___)_7___/___'_2_.-848, WILL CARRY OUTNZ__D\nA__JMI_T__PN_HON_ZS_P_D_)_.3_1,1_B_ST BE CONSIZ_WBQPBBPUJHYF_HPWMFMDPYMLFSFH_MH_M_ANXBRN_SHING - A_DZ__PMKUOBEQBQME_K_NMLUE_KWG_Z_NA\nA_C_EE_SMHYX\nG_B __T_U_O LESS THAN\n0.5NM.\n\nNNNOIN_IF_R_V_U_ZCZC",
    "clean_text": "ZCZC RA92\n9-_9-_7-/____29,_'._22'_+_3(77--7__7\n,7\nRELAW'9,_*(37'_\n'__$85344-,3-.*BK_OLLO_FM_)-+___+6__9__3_*0__ 58.977E\nFROM 10_.-4 2_2__!'.'/___)_7___/___'_2_.-848, WILL CARRY OUTNZ__D\nA__JMI_T__PN_HON_ZS_P_D_)_.3_1,1_B_ST BE CONSIZ_WBQPBBPUJHYF_HPWMFMDPYMLFSFH_MH_M_ANXBRN_SHING - A_DZ__PMKUOBEQBQME_K_NMLUE_KWG_Z_NA\nA_C_EE_SMHYX\nG_B __T_U_O LESS THAN\n0.5NM.\n\nNNNOIN_IF_R_V_U_ZCZC",
    "display_region_heading": "Unresolved B1 code R",
    "display_region_label": "B1 code R",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code R. 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": 12,
    "heading": "2026-04-03 05:57:28 AREA: R",
    "published_at": "2026-04-03 05:57:28",
    "area": "R",
    "message_id": "RA91",
    "text": "ZCZC RA91\n030250 UTC APR 26\nLA MADDALENA RADIO_\n\nCOSTAL WA_NING N QIIXWY APR 02\n,___66$0!.*0__KOH-3_-_:\n- 42 47.7_- 010 06.6E\nLI_ZCJPMY_BMU_MV__\nHNXERR_BWKQBEPXUOREX_CEZRATION\n\n\n\nNNNN",
    "clean_text": "ZCZC RA91\n030250 UTC APR 26\nLA MADDALENA RADIO_\n\nCOSTAL WA_NING N QIIXWY APR 02\n,___66$0!.*0__KOH-3_-_:\n- 42 47.7_- 010 06.6E\nLI_ZCJPMY_BMU_MV__\nHNXERR_BWKQBEPXUOREX_CEZRATION\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Costal wa ning n qiixwy apr 02. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Costal wa ning n qiixwy apr 02",
      "Hnxerr bwkqbepxuorex cezration",
      "La maddalena radio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-03 05:55:29 AREA: R",
    "published_at": "2026-04-03 05:55:29",
    "area": "R",
    "message_id": "RA89",
    "text": "ZCZC RA89\n030250 UTC IPR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 M___0\n,___66$0(_1KBBBJK___8(11_,/X)//,/3.__7_8/_8//8/_8/_8/\n)4=8:___8) 2026\nFROM LOCAL TIME 07.30 TO 18.00 AND ON 2,9,16,AND 30 APRIL 2026,\nFROM LOCAL TIME 07.30 TO 23.00, WILL BE CARRIED OUT A FIRING\nMILITARY ACTIVITY IN THE SEA AREA 'ECHO 3_2__32'=5_!6__.6_0_96*-_(*__0_5__,7_EIQOWPWML_MHDPM_ZS_Z_ZM_ZF__FO __\n_\nK WUSQY N   012 40'55 E,\n_W_MY M_UJM_M_M\n_U_PEJ_M_P_O_G_RQ QRSTP N   012 37'52 E,\nD. 41 06'48 N   012 51'46 E,\nE. 41 16'00 N   012 55'00 E,\nF. 41 20'30 N   012 55'50 E,\nG. 41 24$_7 N   012 48'37 =0__. 41 27'16..._.7_\nJH\nMGJHHM_TRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\nNNNN",
    "clean_text": "ZCZC RA89\n030250 UTC IPR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 M___0\n,___66$0(_1KBBBJK___8(11_,/X)//,/3.__7_8/_8//8/_8/_8/\n)4=8:___8) 2026\nFROM LOCAL TIME 07.30 TO 18.00 AND ON 2,9,16,AND 30 APRIL 2026,\nFROM LOCAL TIME 07.30 TO 23.00, WILL BE CARRIED OUT A FIRING\nMILITARY ACTIVITY IN THE SEA AREA 'ECHO 3_2__32'=5_!6__.6_0_96*-_(*__0_5__,7_EIQOWPWML_MHDPM_ZS_Z_ZM_ZF__FO __\n_\nK WUSQY N 012 40'55 E,\n_W_MY M_UJM_M_M\n_U_PEJ_M_P_O_G_RQ QRSTP N 012 37'52 E,\nD. 41 06'48 N 012 51'46 E,\nE. 41 16'00 N 012 55'00 E,\nF. 41 20'30 N 012 55'50 E,\nG. 41 24$_7 N 012 48'37 =0__. 41 27'16..._.7_\nJH\nMGJHHM_TRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Mgjhhm transit, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mgjhhm transit, anchorage and fishing are prohibited",
      "Military activity in the sea area 'echo 3 2 32' 5 !6 .6 0 96 - ( 0 5 ,7 eiqowpwml mhdpm zs z zm zf fo",
      "Coastal warning 018/26 m 0"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-03 05:53:53 AREA: R",
    "published_at": "2026-04-03 05:53:53",
    "area": "R",
    "message_id": "RA88",
    "text": "ZCZC RA88\n30250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 017/26 MAR 38_\nTYRRHENIAN SEA - CIVITAVECCHIA (RM)\nDAYS 1,2,3,7,8,9,10,13,7_ _ 3 .)(_):.::(,(4(.(_(__(7_QZOK\nQ\nYL_X__RP_OCAL _M_07.00 TO 23.00, WILL BE CARRIED OUT\nA FIRING MILITARY ACTIVITIES IN THE SEA AREA NEAR 'SANTA SEVERA'\nFIRING RANGE, ON THE COAST NEAR SANTA MARINELLA (RM), INCLUDING\nIN THE AREA NAME 'ECHO 312' IN THE  CIRCULAR DE_\nZCD_CTOR 4.5\nNAUTICAL MILES WITH CENTER FROM THE POINT AS BELOVFFATED:\n- 42 00'00''N - 011 58'42''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "clean_text": "ZCZC RA88\n30250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 017/26 MAR 38_\nTYRRHENIAN SEA - CIVITAVECCHIA (RM)\nDAYS 1,2,3,7,8,9,10,13,7_ _ 3 .)(_):.::(,(4(.(_(__(7_QZOK\nQ\nYL_X__RP_OCAL _M_07.00 TO 23.00, WILL BE CARRIED OUT\nA FIRING MILITARY ACTIVITIES IN THE SEA AREA NEAR 'SANTA SEVERA'\nFIRING RANGE, ON THE COAST NEAR SANTA MARINELLA (RM), INCLUDING\nIN THE AREA NAME 'ECHO 312' IN THE CIRCULAR DE_\nZCD_CTOR 4.5\nNAUTICAL MILES WITH CENTER FROM THE POINT AS BELOVFFATED:\n- 42 00'00''N - 011 58'42''E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are prohibited",
      "A firing military activities in the sea area near 'santa severa'",
      "Coastal warning 017/26 mar 38"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-04-03 05:52:06 AREA: R",
    "published_at": "2026-04-03 05:52:06",
    "area": "R",
    "message_id": "RA87",
    "text": "ZCZC RA87\n030250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 016/26 MAR 31 \nTYRRHENIAN SEA - CIVITAVECCHIA (RM)\nDAYS 1,2,3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 31\nAPRIL 2026 FROM LOCAL TIME 07.00 TO 23.59,=_2)\n __._66!02.+:_9,._!6_._!'!_6_./_!\n!_!0*.!._$0.*0.60.06._*:6_6_*.__!6__9,6_0_+._$0._+__.06._06\n0_06!._.), INCLUDING IN THE ZONE\nDENOMINATED 'R14', BOUNDED BY THE _OSSZF____DQ_A. 47 _JHCJJGM_M_ISWYSSE,\nB. 41 59'10''N - 012 02'00''E,\nC. 41 55'00''N - 011 57'30''E,\nD. 41 58'30''N - 011 55'12''E,\nE. 42 00'28''N KA PJK\nBLERLL_\nTRANSIT, ANCHORAGE AND FISHING ARE_N_Z_SZFH_W_\nNNNN",
    "clean_text": "ZCZC RA87\n030250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 016/26 MAR 31\nTYRRHENIAN SEA - CIVITAVECCHIA (RM)\nDAYS 1,2,3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 31\nAPRIL 2026 FROM LOCAL TIME 07.00 TO 23.59,=_2)\n__._66!02.+:_9,._!6_._!'!_6_./_!\n!_!0*.!._$0.*0.60.06._*:6_6_*.__!6__9,6_0_+._$0._+__.06._06\n0_06!._.), INCLUDING IN THE ZONE\nDENOMINATED 'R14', BOUNDED BY THE _OSSZF____DQ_A. 47 _JHCJJGM_M_ISWYSSE,\nB. 41 59'10''N - 012 02'00''E,\nC. 41 55'00''N - 011 57'30''E,\nD. 41 58'30''N - 011 55'12''E,\nE. 42 00'28''N KA PJK\nBLERLL_\nTRANSIT, ANCHORAGE AND FISHING ARE_N_Z_SZFH_W_\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchorage and fishing are n z szfh w. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are n z szfh w",
      "Coastal warning 016/26 mar 31",
      "April 2026 from local time 07.00 to 23.59, 2)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 16,
    "heading": "2026-04-03 05:50:15 AREA: R",
    "published_at": "2026-04-03 05:50:15",
    "area": "R",
    "message_id": "RA86",
    "text": "ZCZC RA86\n030250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL COGSOD_AYS 3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 30\nAPRIL 2026 FROM LOCAL TIME 07 00 UNTIL HALF AN HOUR AFTER SUNSET,\nWILL BE CARRIED OUT A FIRINGN_SLFHKY_MX_J\nF\nX_W_FMHDPMJPMYPONPYM_JGFMWFMJ_FS_P_JMG_FY__MY__PMZMHD_AST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' AWM_JGY\nY_JONGLZCWPWML_MHDPM_ZS_Z_FM_ZFHJI_ONGMM\nYU__EJ YMGMMM__ MPZJH_B BZ_RW QYSRT N _N\n_ MP_J_PMGPMON_MM\nYUM_YJPHMGMMM\n_ MPC_H_MGPMONWMM\nYUM__JU_   011 40'00 E \nE  42 15'02 N   011 40'45 E \nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED \n\nNNNN",
    "clean_text": "ZCZC RA86\n030250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL COGSOD_AYS 3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 30\nAPRIL 2026 FROM LOCAL TIME 07 00 UNTIL HALF AN HOUR AFTER SUNSET,\nWILL BE CARRIED OUT A FIRINGN_SLFHKY_MX_J\nF\nX_W_FMHDPMJPMYPONPYM_JGFMWFMJ_FS_P_JMG_FY__MY__PMZMHD_AST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' AWM_JGY\nY_JONGLZCWPWML_MHDPM_ZS_Z_FM_ZFHJI_ONGMM\nYU__EJ YMGMMM__ MPZJH_B BZ_RW QYSRT N _N\n_ MP_J_PMGPMON_MM\nYUM_YJPHMGMMM\n_ MPC_H_MGPMONWMM\nYUM__JU_ 011 40'00 E\nE 42 15'02 N 011 40'45 E\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are prohibited",
      "Coastal cogsod ays 3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 and 30",
      "April 2026 from local time 07 00 until half an hour after sunset"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 17,
    "heading": "2026-04-03 05:41:07 AREA: Q",
    "published_at": "2026-04-03 05:41:07",
    "area": "Q",
    "message_id": "QE81",
    "text": "ZCZC QE81\n\n030240 UTC APR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 02/04/2026 AT 0000 _ __9,_,_7'5' 9! ,3/N WIND 35-70, ON CENTRAL/S-ERN ADRIATIC ALSO NM_PH_C_MGVHS_)0'+7._0'0)!_.:_.__._+___=___._'_+40_+._0_6'.9,26!_!_.*0.!._$0._+6!_.'+/.___.___8__5 09'' !94 '7$$3, '594.'.\n\n2. SYNOPSIS:\nA DEEP LOW OVER THE IONIAN SEA IS FILLING UP AND MVG TO THE E, RIDGE OF HIGH INTSF FM THE N.\n\n3. FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 03/04/2026 AT 0000 UTC\n\nN-ERN ADRIATFX_BELOW VELEBIT NE VWRARI KT, AFTERNOON DECR ON 16-32 KT. ELSEWHERE NE, OFFSHORE ALSO N 12-24,AFTERNOON DECR ON 8-18 KT.\nSEA 2-3, OFFSHORE AND IN VELEBITSKI KANAL _-499,_\n!*.)_.)_(..\nVRB CLOUDY, LO  SLIGHT RAIN OR T-SHWRS.AFTERNOON G_\nSEAI_AAEN OFFSHO_E\n_-4.\nVIS ABT 20 KM.\nV_B CLOUDY,3LOC SLI_HT _\n_OEF__KC____W_\nZCZC",
    "clean_text": "ZCZC QE81\n\n030240 UTC APR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSUED BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 02/04/2026 AT 0000 _ __9,_,_7'5' 9! ,3/N WIND 35-70, ON CENTRAL/S-ERN ADRIATIC ALSO NM_PH_C_MGVHS_)0'+7._0'0)!_.:_.__._+___=___._'_+40_+._0_6'.9,26!_!_.*0.!._$0._+6!_.'+/.___.___8__5 09'' !94 '7$$3, '594.'.\n\n2. SYNOPSIS:\nA DEEP LOW OVER THE IONIAN SEA IS FILLING UP AND MVG TO THE E, RIDGE OF HIGH INTSF FM THE N.\n\n3. FORECAST FOR THE NEXT 24 HOURS VALID UNTIL 03/04/2026 AT 0000 UTC\n\nN-ERN ADRIATFX_BELOW VELEBIT NE VWRARI KT, AFTERNOON DECR ON 16-32 KT. ELSEWHERE NE, OFFSHORE ALSO N 12-24,AFTERNOON DECR ON 8-18 KT.\nSEA 2-3, OFFSHORE AND IN VELEBITSKI KANAL _-499,_\n!*.)_.)_(..\nVRB CLOUDY, LO SLIGHT RAIN OR T-SHWRS.AFTERNOON G_\nSEAI_AAEN OFFSHO_E\n_-4.\nVIS ABT 20 KM.\nV_B CLOUDY,3LOC SLI_HT _\n_OEF__KC____W_\nZCZC",
    "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: Vrb cloudy, lo slight rain or t-shwrs.afternoon g. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vrb cloudy, lo slight rain or t-shwrs.afternoon g",
      "Weather bulletin for adriatic issued by the marine meteorological center split on 02/04/2026 at 0000 9, , 7'5' 9! ,3/n wind 35-70, on central/s-ern adriatic also nm ph c mgvhs )0' 7. 0'0)! .: . . . ' 40 . 0 6'.9,26! ! . 0.!. $0. 6! .' /. . 8 5 09'' !94 '7$$3, '594.'",
      "3. forecast for the next 24 hours valid until 03/04/2026 at 0000 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 19,
    "heading": "2026-04-03 05:38:24 AREA: P",
    "published_at": "2026-04-03 05:38:24",
    "area": "P",
    "message_id": "PA23",
    "text": "ZCZC PA23\n2_8 UTC MAR 26\nMSI 99/26\nNOR_DMJPON_ZS_Z_FM_SH_ZYBJM__PMP\n___\nL2-FA-1          53-57N 0047+__.+_$+6.:60'!)'09,_:_\n_........._0_0___\n_E YG_M+_$+6.!+_06_!_09_=_0:     .......__0_6___\n_2E FOGHORN INOPERATIVE\nK14-FB-1       53-, N 003-34E UNLIT\nK7-FA-1         53-34N 003-18E UNLIT\nCANCEL MSI 93/26\nNNNN",
    "clean_text": "ZCZC PA23\n2_8 UTC MAR 26\nMSI 99/26\nNOR_DMJPON_ZS_Z_FM_SH_ZYBJM__PMP\n___\nL2-FA-1 53-57N 0047+__.+_$+6.:60'!)'09,_:_\n_........._0_0___\n_E YG_M+_$+6.!+_06_!_09_=_0: .......__0_6___\n_2E FOGHORN INOPERATIVE\nK14-FB-1 53-, N 003-34E UNLIT\nK7-FA-1 53-34N 003-18E UNLIT\nCANCEL MSI 93/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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2e foghorn inoperative",
      "K7-fa-1 53-34n 003-18e unlit",
      "K14-fb-1 53-, n 003-34e unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 21,
    "heading": "2026-04-03 05:36:19 AREA: P",
    "published_at": "2026-04-03 05:36:19",
    "area": "P",
    "message_id": "PA46",
    "text": "ZCZC PA46\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF6._:'!_9,$+''2*0._:*_.-:!29,\n_7 __7__04-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52 84_674466\n__(_.$-6.+_$+6.!+_06_!_09,_/0'._*!.,0,7_7_9,9,_9,,888_7_+:+: 0-37\n011714 UTC APR 26\nMSI 106/26\nWINDFARM HOLLANDSE KUST ZUID\nYELLOW SPECIAL MARK LICHT BUOYS FL(5) Y20S\nESTABLISHED IN THE FOLLOWING POSITIONS\nMT-HKZ 0._7__N 003-56,3420E\nMT-HKZ 4 52-10,3910N 003-56,4450E..\n\nNNNN",
    "clean_text": "ZCZC PA46\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF6._:'!_9,$+''2*0._:*_.-:!29,\n_7 __7__04-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52 84_674466\n__(_.$-6.+_$+6.!+_06_!_09,_/0'._*!.,0,7_7_9,9,_9,,888_7_+:+: 0-37\n011714 UTC APR 26\nMSI 106/26\nWINDFARM HOLLANDSE KUST ZUID\nYELLOW SPECIAL MARK LICHT BUOYS FL(5) Y20S\nESTABLISHED IN THE FOLLOWING POSITIONS\nMT-HKZ 0._7__N 003-56,3420E\nMT-HKZ 4 52-10,3910N 003-56,4450E..\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": "regional-context",
    "resolved_match_terms": [
      "NORTHSEA"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "52-40.3n 004-09.8e hni4 foghorn inoperative",
      "The following wind turbines have defects",
      "52-22.6n 004-11.3e hzx2 unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-04-03 05:29:56 AREA: P",
    "published_at": "2026-04-03 05:29:56",
    "area": "P",
    "message_id": "PE78",
    "text": "ZCZC PE78\n030106 UTC APR 26\nFORECAST DUTCH EEZ ISSUED AT 00:05.___/._P__EONGSSMWFJHYF_HJMJZCHDMHZMJZCHD_PJ_M_CONONGJ_ZJFJONSZ_RN NORTH OF SCOTLAND IS SLOWLY MOVING NOR_HWARDS. \nASSOCIATED TROUGHS ARE MOVING EASTWARDS ACROSS THE NORTH \nSEA.\n\nFORECJ_M_SFWM_YF_EM_PX_MGHFSSM_YF_EM_ HX_MG_H_ONONHD_PJMONJZCHDMHZMJZCHD_PJ_M_YHMGJZZMF_YPJFP_ONF_YPJFRBPKML_ZZMZ_ONAL LIGHT RAIN OR DRIZZLE.\nGOOD, LATER DECREASING MODERATPMHZM_ZZY_M_J_SSMYFJVM_\n_9__7_0$_!_$__\n __ BH_G_PH_Y_MGF_YPJFM\nU__UBH_G_PH_Y_\n\nHUMBER \nSOUTH TO SOUTHWEST 4-5, SOON INCREASING 5-6, TEMPORARILY \nINCREASING 3:_9,_*+-_3(__3_73_6_7_+$_, INPXF__HXFFZHFZM_ZJJFLS_DERATE, LATER DECREASING \nMODERATE TO POOV__O_GU_PD_F_DHONMGCML_MPAWMT METER.\n\n\nGER_MLF_DHMONJZCHD_PJ_M_Y_B_Q_CHDMHZMJZCHD_PJ\nO _ \nGRADUALLY 6-7.\nFROM THE WES_MYFMZYMWYFAASP_GOOM_WMMYFXM_XHXHFFHFZM_10__.9$34-53, LATER FROM THE \nWEST DECREASIM_ZWPYHPMHZM_AZR_WAVEHEIGHT 1.5-2.0 MY_PMVFMP_JFPMJUK\nU_M_BPH_Y_PO_\n\nDOGGER \nSOUTH TO SOUTHWEST 5-6, TEMPORARILY INCREASING 6-7.\nSZZMYFMZYMWYFAASP_GOOD, INM_YPXF_FHHFZM_ZJJFLSEM_ZWPYHP_MGSHPYMWP_YPJF_MOA__GTW_L__R.\nWAVEHEIGHT 1.5-2.0 METER, INCREASING 2.0-3.0 METER.\n\n\nFORECAST VALID FRIDAY 15:00 TILL SATURDAY 03:00 UTC\n\nTHAMES \nJZCHD_PJ_MHKQOH_10__9::-'89)6))6 7, LATER DECREASIN_ \nNWPJ_M_YH_ON_Z_ONALS_MSF_DHMYFM_MODERATE TO POOR, SMALL RISK FOG, SOON IN THE NORTHWEST \nINCREASING MODERATE TO GOOD, LATER EVERYWHERE I_YPJF_MON_ZZ__WAVEHEIGH\n__\n___H_G_PH_Y_MGSHPYMWP_YPJFM\n __CU9)_NR_ZZZW_SR__QA__WK__LTW_QBHU_DECREASING WEST TO SOUTHWEST 4-6,446,_4,9:911_.YH_ONGJZZMYFMZYMWYFAASP_MGSHPEM_BQ3\n____4_$:$_)__ODERATE TO POOR, ESPECIALLY _FRJHMJ_SSMYFJVM__\n._'_06.9,!_60*!._++__WAVEHEIGHT 1.5-2.5 METER, LATER DECYPJFRORCC_OH9_)_NE_ZZZRPPS_IZW__KI__CHDMHZMJZCHD_PJ_M_N SOON DECREASING WEST TO SOUTHWEST \n5-6, GRADUALLY 4-5, IN THE SOUTH POSSIBLY 6.\nFIRST RAIN OR DRIZZLE, AFTER ESPECIALLY IN THE SOUTH RAIN \nOR DRIZZLE.\nMODERATE TO POOR, SMALL RISK FOG, GRADUALLY IN THE NORTHERR_EE\nVD LATER EVERYWHERE INCREASING GOOD.\nWAVEHEIGHT 2.0-3.0 METER,=_20_60*!.\n __0 METER.\n\n\nDOGGER \nSOUTHWEST 5-6, SOON DECREASING WEST TO SOUTHWEST 3-4, LATER \nINCREASING WEST 4-5.\nRISK LIGHT RAIN.\nMODERATEMHZM_ZZY_MGJZZMF_YPJFM_ZZ__WAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\n\n\n\nNNNN",
    "clean_text": "ZCZC PE78\n030106 UTC APR 26\nFORECAST DUTCH EEZ ISSUED AT 00:05.___/._P__EONGSSMWFJHYF_HJMJZCHDMHZMJZCHD_PJ_M_CONONGJ_ZJFJONSZ_RN NORTH OF SCOTLAND IS SLOWLY MOVING NOR_HWARDS.\nASSOCIATED TROUGHS ARE MOVING EASTWARDS ACROSS THE NORTH\nSEA.\n\nFORECJ_M_SFWM_YF_EM_PX_MGHFSSM_YF_EM_ HX_MG_H_ONONHD_PJMONJZCHDMHZMJZCHD_PJ_M_YHMGJZZMF_YPJFP_ONF_YPJFRBPKML_ZZMZ_ONAL LIGHT RAIN OR DRIZZLE.\nGOOD, LATER DECREASING MODERATPMHZM_ZZY_M_J_SSMYFJVM_\n_9__7_0$_!_$__\n__ BH_G_PH_Y_MGF_YPJFM\nU__UBH_G_PH_Y_\n\nHUMBER\nSOUTH TO SOUTHWEST 4-5, SOON INCREASING 5-6, TEMPORARILY\nINCREASING 3:_9,_*+-_3(__3_73_6_7_+$_, INPXF__HXFFZHFZM_ZJJFLS_DERATE, LATER DECREASING\nMODERATE TO POOV__O_GU_PD_F_DHONMGCML_MPAWMT METER.\n\nGER_MLF_DHMONJZCHD_PJ_M_Y_B_Q_CHDMHZMJZCHD_PJ\nO _\nGRADUALLY 6-7.\nFROM THE WES_MYFMZYMWYFAASP_GOOM_WMMYFXM_XHXHFFHFZM_10__.9$34-53, LATER FROM THE\nWEST DECREASIM_ZWPYHPMHZM_AZR_WAVEHEIGHT 1.5-2.0 MY_PMVFMP_JFPMJUK\nU_M_BPH_Y_PO_\n\nDOGGER\nSOUTH TO SOUTHWEST 5-6, TEMPORARILY INCREASING 6-7.\nSZZMYFMZYMWYFAASP_GOOD, INM_YPXF_FHHFZM_ZJJFLSEM_ZWPYHP_MGSHPYMWP_YPJF_MOA__GTW_L__R.\nWAVEHEIGHT 1.5-2.0 METER, INCREASING 2.0-3.0 METER.\n\nFORECAST VALID FRIDAY 15:00 TILL SATURDAY 03:00 UTC\n\nTHAMES\nJZCHD_PJ_MHKQOH_10__9::-'89)6))6 7, LATER DECREASIN_\nNWPJ_M_YH_ON_Z_ONALS_MSF_DHMYFM_MODERATE TO POOR, SMALL RISK FOG, SOON IN THE NORTHWEST\nINCREASING MODERATE TO GOOD, LATER EVERYWHERE I_YPJF_MON_ZZ__WAVEHEIGH\n__\n___H_G_PH_Y_MGSHPYMWP_YPJFM\n__CU9)_NR_ZZZW_SR__QA__WK__LTW_QBHU_DECREASING WEST TO SOUTHWEST 4-6,446,_4,9:911_.YH_ONGJZZMYFMZYMWYFAASP_MGSHPEM_BQ3\n____4_$:$_)__ODERATE TO POOR, ESPECIALLY _FRJHMJ_SSMYFJVM__\n._'_06.9,!_60*!._++__WAVEHEIGHT 1.5-2.5 METER, LATER DECYPJFRORCC_OH9_)_NE_ZZZRPPS_IZW__KI__CHDMHZMJZCHD_PJ_M_N SOON DECREASING WEST TO SOUTHWEST\n5-6, GRADUALLY 4-5, IN THE SOUTH POSSIBLY 6.\nFIRST RAIN OR DRIZZLE, AFTER ESPECIALLY IN THE SOUTH RAIN\nOR DRIZZLE.\nMODERATE TO POOR, SMALL RISK FOG, GRADUALLY IN THE NORTHERR_EE\nVD LATER EVERYWHERE INCREASING GOOD.\nWAVEHEIGHT 2.0-3.0 METER,=_20_60*!.\n__0 METER.\n\nDOGGER\nSOUTHWEST 5-6, SOON DECREASING WEST TO SOUTHWEST 3-4, LATER\nINCREASING WEST 4-5.\nRISK LIGHT RAIN.\nMODERATEMHZM_ZZY_MGJZZMF_YPJFM_ZZ__WAVEHEIGHT 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. This is a weather bulletin; readable sections mention fog, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Forecj m sfwm yf em px mghfssm yf em hx mg h ononhd pjmonjzchdmhzmjzchd pj m yhmgjzzmf ypjfp onf ypjfrbpkml zzmz onal light rain or drizzle",
      "Nwpj m yh on z onals msf dhmyfm moderate to poor, small risk fog, soon in the northwest",
      "Moderate to poor, small risk fog, gradually in the northerr ee"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-04-03 05:28:57 AREA: O",
    "published_at": "2026-04-03 05:28:57",
    "area": "O",
    "message_id": "OE03",
    "text": "ZCZC OE03\nMALTARADIO MARINE FORECAST POV 02/1600 TO 03/0_00 UTC\nWRNGS-THE WSW WIND MAY REAMOM_S_M_GHZMJMZ_MYPONU__MGYHDPYM_SZ_WJMJ_Z_PYJM_NNFJ\nMG_ZZWMLPBUOD_R IN SHOWERS\nWND- WNW F6. TO S OF AREA WNW F7 BK6\nSEA- ROUGH LOC ROUGDV\nO VERY ROUGH TOTS OF AREA\nSWELL- LOW SW\nNNNN",
    "clean_text": "ZCZC OE03\nMALTARADIO MARINE FORECAST POV 02/1600 TO 03/0_00 UTC\nWRNGS-THE WSW WIND MAY REAMOM_S_M_GHZMJMZ_MYPONU__MGYHDPYM_SZ_WJMJ_Z_PYJM_NNFJ\nMG_ZZWMLPBUOD_R IN SHOWERS\nWND- WNW F6. TO S OF AREA WNW F7 BK6\nSEA- ROUGH LOC ROUGDV\nO VERY ROUGH TOTS OF AREA\nSWELL- LOW SW\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Maltaradio marine forecast pov 02/1600 to 03/0 00 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Maltaradio marine forecast pov 02/1600 to 03/0 00 utc",
      "Mg zzwmlpbuod r in showers",
      "Wnd- wnw f6. to s of area wnw f7 bk6"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-03 05:27:49 AREA: O",
    "published_at": "2026-04-03 05:27:49",
    "area": "O",
    "message_id": "OD71",
    "text": "ZCZC OD71\nSAR CASE 374\n\nWE INFORM YOU THAT THIS MRCC IS SEARCHING FOR 3 PEOPLE OVERBOARD FALLEN FROM THE MIGRANTS RUBBER BOAT. THE LAST KNOWN P_S_MFJM_PY___012-50E ON 1ST APRIL AT APPROX 0112UTC. PLEASE KEEP A SHARP LOOK OUT AND REPORT ANY POJJFLSPMJF_DH__M_ETENT AUTHORITY:\n\nTEL - 00218910349739 - 00218214449149\nFAX - 0021821360_868\nMAIL - LM_XX\nB VG_H_SGBZW\n_GC\n_\nNNNN",
    "clean_text": "ZCZC OD71\nSAR CASE 374\n\nWE INFORM YOU THAT THIS MRCC IS SEARCHING FOR 3 PEOPLE OVERBOARD FALLEN FROM THE MIGRANTS RUBBER BOAT. THE LAST KNOWN P_S_MFJM_PY___012-50E ON 1ST APRIL AT APPROX 0112UTC. PLEASE KEEP A SHARP LOOK OUT AND REPORT ANY POJJFLSPMJF_DH__M_ETENT AUTHORITY:\n\nTEL - 00218910349739 - 00218214449149\nFAX - 0021821360_868\nMAIL - LM_XX\nB VG_H_SGBZW\n_GC\n_\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "search and rescue message",
    "subject_code": "D",
    "decoded_summary": "search and rescue message for Unresolved B1 code O. Readable text indicates a search-and-rescue related notice. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "We inform you that this mrcc is searching for 3 people overboard fallen from the migrants rubber boat. the last known p s mfjm py 012-50e on 1st april at approx 0112utc. please keep a sharp look out and report any pojjflspmjf dh m etent authority",
      "Mail - lm xx"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 25,
    "heading": "2026-04-03 05:27:03 AREA: O",
    "published_at": "2026-04-03 05:27:03",
    "area": "O",
    "message_id": "OA32",
    "text": "ZCZC OA32\nNABA\n_ZAL WARNING NR19/26\n:1+_'5 -,:_94 -,$ :_-8,.\n_!_-8, 8' )-8$ -)9,_ 5_3 )8,3 !49. 098,5 - 59 098,5 __\nFOUL AREA - KEEP A SAFE DISTANCE \n\nPOSN OF ANCHOR (POINT A) 35-57.253N 014-19.080E\nPOSN OF ANCHOR (POINT B) 35-57.231N 014-19.096E\nNNNN",
    "clean_text": "ZCZC OA32\nNABA\n_ZAL WARNING NR19/26\n:1+_'5 -,:_94 -,$ :_-8,.\n_!_-8, 8' )-8$ -)9,_ 5_3 )8,3 !49. 098,5 - 59 098,5 __\nFOUL AREA - KEEP A SAFE DISTANCE\n\nPOSN OF ANCHOR (POINT A) 35-57.253N 014-19.080E\nPOSN OF ANCHOR (POINT B) 35-57.231N 014-19.096E\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Posn of anchor (point a) 35-57.253n 014-19.080e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Posn of anchor (point a) 35-57.253n 014-19.080e",
      "Posn of anchor (point b) 35-57.231n 014-19.096e",
      "Zal warning nr19/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 26,
    "heading": "2026-04-03 05:26:04 AREA: O",
    "published_at": "2026-04-03 05:26:04",
    "area": "O",
    "message_id": "OD70",
    "text": "ZCZC OD70\nSAR CAJQM\nP_FMONONG__M_ZRM YOU ABZCHMHDPM_YPJP_PM_ WOODEN BOAT WITH MIGRANTS ON BOARD, 3 ENGINE, THE LAST KNWONVFZDXM_PP_FG_M\n_UHFGPMHM_ Z G_OF 26 MARCH, COURSE NORTH, SPEED 6KTS. PLEASE KEEP A SHARP LOOKOUT AND REPORT ANFMNZJJFLSPMJF_DH__JM_A\nDW_MWA_S__F_ONONHPSM_M_I_EROUE_ON_P_F_M_M_SBYXX\nB VG_H_SGBZGOV.LY\nNNNN",
    "clean_text": "ZCZC OD70\nSAR CAJQM\nP_FMONONG__M_ZRM YOU ABZCHMHDPM_YPJP_PM_ WOODEN BOAT WITH MIGRANTS ON BOARD, 3 ENGINE, THE LAST KNWONVFZDXM_PP_FG_M\n_UHFGPMHM_ Z G_OF 26 MARCH, COURSE NORTH, SPEED 6KTS. PLEASE KEEP A SHARP LOOKOUT AND REPORT ANFMNZJJFLSPMJF_DH__JM_A\nDW_MWA_S__F_ONONHPSM_M_I_EROUE_ON_P_F_M_M_SBYXX\nB VG_H_SGBZGOV.LY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "search and rescue message",
    "subject_code": "D",
    "decoded_summary": "search and rescue message for Unresolved B1 code O. Readable text indicates a search-and-rescue related notice. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sar cajqm",
      "P fmonong m zrm you abzchmhdpm ypjp pm wooden boat with migrants on board, 3 engine, the last knwonvfzdxm pp fg m",
      "Uhfgpmhm z g of 26 march, course north, speed 6kts. please keep a sharp lookout and report anfmnzjjflspmjf dh jm a"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 27,
    "heading": "2026-04-03 05:25:10 AREA: O",
    "published_at": "2026-04-03 05:25:10",
    "area": "O",
    "message_id": "OA71",
    "text": "ZCZC OA71\n_8_4..\n1. TURBINEVJ\nQ TRAPTMPM !__-4.2W ALL NAVAIDS UNRELIABM\n2. _:-,:_- 2+ 107/2_ (5+_\n_SBONGONNI_KKKKKKK__K_KT_XBUE\nF) 37-11.467N 011-52.100E\nG) 37-00.600N 011-21.617E\nSHIPS IN TRANSIT PAY MAXIMUM ATTENTION AND KEEP A DISTANCE NOT LESS THAN 2NM\nNNNN",
    "clean_text": "ZCZC OA71\n_8_4..\n1. TURBINEVJ\nQ TRAPTMPM !__-4.2W ALL NAVAIDS UNRELIABM\n2. _:-,:_- 2+ 107/2_ (5+_\n_SBONGONNI_KKKKKKK__K_KT_XBUE\nF) 37-11.467N 011-52.100E\nG) 37-00.600N 011-21.617E\nSHIPS IN TRANSIT PAY MAXIMUM ATTENTION AND KEEP A DISTANCE NOT LESS THAN 2NM\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: 1. turbinevj. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. turbinevj",
      "Q traptmpm ! -4.2w all navaids unreliabm",
      "Ships in transit pay maximum attention and keep a distance not less than 2nm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-04-03 05:22:48 AREA: O",
    "published_at": "2026-04-03 05:22:48",
    "area": "O",
    "message_id": "O",
    "text": "ZCZC O\nNAVAREA I 62/26 \n1. NAVAREA I WARNINGS IN FORCE AT 271000 375: .-4 2026: \n2026 SERIES: 43, 52, 60, 61, 62. \nNOTES: \nA. TEXT_ OF NAVAREA I WARNINGS ISSUE_MQ_DMUPMVXKENB_7_)8'_3$ 8, 233(-*\n7___ZD_MZ_ ADMIRALTY NOTICES TO MARINERS BULLETIN (A_MBVS_ONTL_ZMGB_YPMIII_ARNINGS LESS THAN 42 DAYS OLD _26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL__AND/OR IAI_ NAVTEX TRANSMITTERS.\nC. THE COMPLETE TEXTS OF ALL IN-FORCE N_VAYVMFM_IKIKNGS, INFL 8,_ 5_+'_._!/$._+.!++__6\n)0!_.)6+__*__._60.60_!!!.+_._8878, 233(' _1,_1_, 26 AND )9 _-$+=_'0._-1_97_(*(_* $_3:+_$__9 2___HTTPS://MSI._-$.84-5=/_/___=\n_=\n__!_4,8,_'.\n3_8534,-58=3)6, _HAS_ MAY BE REQUESTED B__P\nGBI  \n/_._+._.!.!.(__+2___._+6.:_(_7_)((73_:=__DE\nV.UK \n2.\n_\nNN__AZCZC",
    "clean_text": "ZCZC O\nNAVAREA I 62/26\n1. NAVAREA I WARNINGS IN FORCE AT 271000 375: .-4 2026:\n2026 SERIES: 43, 52, 60, 61, 62.\nNOTES:\nA. TEXT_ OF NAVAREA I WARNINGS ISSUE_MQ_DMUPMVXKENB_7_)8'_3$ 8, 233(-*\n7___ZD_MZ_ ADMIRALTY NOTICES TO MARINERS BULLETIN (A_MBVS_ONTL_ZMGB_YPMIII_ARNINGS LESS THAN 42 DAYS OLD _26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL__AND/OR IAI_ NAVTEX TRANSMITTERS.\nC. THE COMPLETE TEXTS OF ALL IN-FORCE N_VAYVMFM_IKIKNGS, INFL 8,_ 5_+'_._!/$._+.!++__6\n)0!_.)6+__*__._60.60_!!!.+_._8878, 233(' _1,_1_, 26 AND )9 _-$+=_'0._-1_97_(*(_* $_3:+_$__9 2___HTTPS://MSI._-$.84-5=/_/___=\n_=\n__!_4,8,_'.\n3_8534,-58=3)6, _HAS_ MAY BE REQUESTED B__P\nGBI\n/_._+._.!.!.(__+2___._+6.:_(_7_)((73_:=__DE\nV.UK\n2.\n_\nNN__AZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code O. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. navarea i warnings in force at 271000 375: .-4 2026",
      "A. text of navarea i warnings issue mq dmupmvxkenb 7 )8' 3$ 8, 233(-",
      "7 zd mz admiralty notices to mariners bulletin (a mbvs ontl zmgb ypmiii arnings less than 42 days old 26 onward) are promulgated via enhanced group call and/or iai navtex transmitters"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 29,
    "heading": "2026-04-03 05:00:09 AREA: M",
    "published_at": "2026-04-03 05:00:09",
    "area": "M",
    "message_id": "",
    "text": "ZCZC ME09_26\nWEATHEYMLCSSPHFMFJJCPWMLJEKDGKE()_DNA_Y_Y\n_FJHFHCHPMKIB_PRIL V\nUUEMU__FMT_\n  SYNOPT_ITUATIZNMHZWQMK_OX9_/$5____Q_IE HPA, 73 N 32 E, MZ_\nP _N_,*_- -5 73 N _YHMGPM_YF_X__/$\nLOAONM_:_-, 56 __\n_W, BO_ZOS_ZMS_ RKERIG__63 N 03 UM__FOX9_/$+=7_+$'80__))4_8_, 65 NGB\nCHKOH_LZIZGR_LB_HPMHM_JZ\nLOX_OHDL\nP_DZCYJ_O_BB_\n8__)_+_3_ND__R__FF\n_NL S PYB_K_NBNXBP_DBARBG_LDCGI__F FKH_IEJ_OH_IN_ZZO_EHMZYM_ZW_H_IPZPF_PJHFI_M_RC_(8__=_=\n  FISHER\nS NEAR GALE :._20_6._+._.,,9_)_79-3_*'_6'_8)$6._8=!-1,!_9,,888_:+: .-24\n310803 9(_/._61_9__!1+_(9_((3)9XMMHKUGWP_Y_IM FIOYWMS_JHYMYNUG_ES_GRILKPSKU_X___UL___A__POAQTMTQE\nN_*!20.+._$0'9,___!*5__\n\n__+:+: .-23\n121021 ___/.__49,(1+!*$.\n.=02__0 -'*88)4__8_LIIM FIZXW_LAGSOYMYPWP_DEPTHS 3.5M OBSERVED BETWEP_D_CM_LXX_AQPMIE\n___:_+__.\n__:.(/_,__7-_77_7\n__+:+: .-18\n010840 UTC MAR 26\nNOYUP_FMOOKKEL4__RHCGCP_CHART___O MMGYPM_PGM_RG__VALBERG LIGHTBUOY 58-52.91N QPPOAWTMYQE IS MISSING.\nNNNN",
    "clean_text": "ZCZC ME09_26\nWEATHEYMLCSSPHFMFJJCPWMLJEKDGKE()_DNA_Y_Y\n_FJHFHCHPMKIB_PRIL V\nUUEMU__FMT_\nSYNOPT_ITUATIZNMHZWQMK_OX9_/$5____Q_IE HPA, 73 N 32 E, MZ_\nP _N_,*_- -5 73 N _YHMGPM_YF_X__/$\nLOAONM_:_-, 56 __\n_W, BO_ZOS_ZMS_ RKERIG__63 N 03 UM__FOX9_/$+=7_+$'80__))4_8_, 65 NGB\nCHKOH_LZIZGR_LB_HPMHM_JZ\nLOX_OHDL\nP_DZCYJ_O_BB_\n8__)_+_3_ND__R__FF\n_NL S PYB_K_NBNXBP_DBARBG_LDCGI__F FKH_IEJ_OH_IN_ZZO_EHMZYM_ZW_H_IPZPF_PJHFI_M_RC_(8__=_=\nFISHER\nS NEAR GALE :._20_6._+._.,,9_)_79-3_*'_6'_8)$6._8=!-1,!_9,,888_:+: .-24\n310803 9(_/._61_9__!1+_(9_((3)9XMMHKUGWP_Y_IM FIOYWMS_JHYMYNUG_ES_GRILKPSKU_X___UL___A__POAQTMTQE\nN_*!20.+._$0'9,___!*5__\n\n__+:+: .-23\n121021 ___/.__49,(1+!*$.\n.=02__0 -'*88)4__8_LIIM FIZXW_LAGSOYMYPWP_DEPTHS 3.5M OBSERVED BETWEP_D_CM_LXX_AQPMIE\n___:_+__.\n__:.(/_,__7-_77_7\n__+:+: .-18\n010840 UTC MAR 26\nNOYUP_FMOOKKEL4__RHCGCP_CHART___O MMGYPM_PGM_RG__VALBERG LIGHTBUOY 58-52.91N QPPOAWTMYQE IS MISSING.\nNNNN",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code M. Readable text says: S near gale :. 20 6. . .,,9 ) 79-3 ' 6' 8)$6. 8 !-1,! 9,,888 : : .-24. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "S near gale :. 20 6. . .,,9 ) 79-3 ' 6' 8)$6. 8 !-1,! 9,,888 : : .-24",
      "Noyup fmookkel4 rhcgcp chart o mmgypm pgm rg valberg lightbuoy 58-52.91n qppoawtmyqe is missing",
      "Weatheymlcssphfmfjjcpwmljekdgke() dna y y"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 30,
    "heading": "2026-04-03 05:00:09 AREA: T",
    "published_at": "2026-04-03 05:00:09",
    "area": "T",
    "message_id": "",
    "text": "ICZCZC",
    "clean_text": "ICZCZC",
    "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": 33,
    "heading": "2026-04-03 04:53:00 AREA: L",
    "published_at": "2026-04-03 04:53:00",
    "area": "L",
    "message_id": "LB04",
    "text": "ZCZC LB04\n022151 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX367/2026\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 2.4.2026 AT 22 UTC\nSOUTH UTSIRE: SE GALE 8 FM FRI 11UTC TO 15UTC\nNORTH UTSIRE: SE GS_M_FM__BM6!_\n_5: 59 16UTC\nVIKING: SE SEV GALE 9 FM FRI 08UTC TO 16UTFONPJH_G__: SE SEV GALE 9 FM FRI 10UTC TO 19UTC AND W SEV GALEG_JI__'7_00UTC\n\nNNNN",
    "clean_text": "ZCZC LB04\n022151 UTC APR 26\nNORWEGIAN GALE WARNING NO. GX367/2026\nISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 2.4.2026 AT 22 UTC\nSOUTH UTSIRE: SE GALE 8 FM FRI 11UTC TO 15UTC\nNORTH UTSIRE: SE GS_M_FM__BM6!_\n_5: 59 16UTC\nVIKING: SE SEV GALE 9 FM FRI 08UTC TO 16UTFONPJH_G__: SE SEV GALE 9 FM FRI 10UTC TO 19UTC AND W SEV GALEG_JI__'7_00UTC\n\nNNNN",
    "resolved_station_name": "Orlandet",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Norwegian Sea and central Norwegian coast",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "NORWEGIAN GALE WARNING"
    ],
    "display_region_heading": "Norway - Norwegian Sea and central Norwegian coast",
    "display_region_label": "Orlandet, Norway",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Norway - Norwegian Sea and central Norwegian coast. Readable text says: South utsire: se gale 8 fm fri 11utc to 15utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "South utsire: se gale 8 fm fri 11utc to 15utc",
      "Viking: se sev gale 9 fm fri 08utc to 16utfonpjh g : se sev gale 9 fm fri 10utc to 19utc and w sev galeg ji '7 00utc",
      "Norwegian gale warning no. gx367/2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-04-03 04:50:09 AREA: L",
    "published_at": "2026-04-03 04:50:09",
    "area": "L",
    "message_id": "LE11",
    "text": "ZCZC LE11\n022300 UTC APR 26\nWEATHER BULLETIN ISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 2ND OF APRIL  2026 2300 UTC\n  SYNOPTIC SITUATION TODAY AT 18 UTC:\nLOW 983 HPA, 73 N 32 E, MOV E EXP 989 HPA AT 73 N 45 E FRI 18 UTC.\nLOW 1002 HPA, 56 __._W, MOV NE EXP 979 HPA AT 63 N 03 W FRI 18 UTC.\nHIGH 1016 HPA, 65 N 01 W, MOV NE EXP 1009 HPA AT 69 MO E FRI 18 UTC.\n  FORECAST VALID NEXT 24 HOURS:\n  INNER SKAGERRAK\nVRB 6, OCNL S NEAR GALE 7. SLT OR MOD, OCNL ROUGN_RAIN, MO_ONMMGZCHPYMJV_PY__ON\nYLM_HMGZ_SMJMPYM_S_M\nC_MGJSHMZYMZAQ__TAXSMYZCD_BMGYF_MG_ZW\n_ONMMG_FJDPYONJMPYM_S_M_CMGWP_YM_ZMU\nS__GBZWMZYMYZCD_BMGYF_MG_ZW\n_ONMMG_A\n829_1_:4 59 2 6. ROUGH. RAIN, MOD.\n  SOUTH UTSIRE\nVRB 5, OCNL SE GALE 8. MOD OR ROUGH. RAIN, MOD.\n  NORTHV_E\nSE GALE :, DECR TO W 5. ROUGH, OCNL VERY ROUGH. RAIN, MOD.\n__\n-VIKIV_NW_G\nIZ__ SEV GALE 9, BECMG SW NEAR_ALE 7. ROUGH OR VE_ B_BY ROUGN, MOD.\n  E_JT-TAMCPONPM_HMGF_YMHZMJUM_S_M_9__*_1BQOBEC_NBN_B_RAXEWB_ABW_RWLBEKGOHAUN_Z_ZFFFVZCZC",
    "clean_text": "ZCZC LE11\n022300 UTC APR 26\nWEATHER BULLETIN ISSUED BY NORWEGIAN METEOROLOGICAL INSTITUTE 2ND OF APRIL 2026 2300 UTC\nSYNOPTIC SITUATION TODAY AT 18 UTC:\nLOW 983 HPA, 73 N 32 E, MOV E EXP 989 HPA AT 73 N 45 E FRI 18 UTC.\nLOW 1002 HPA, 56 __._W, MOV NE EXP 979 HPA AT 63 N 03 W FRI 18 UTC.\nHIGH 1016 HPA, 65 N 01 W, MOV NE EXP 1009 HPA AT 69 MO E FRI 18 UTC.\nFORECAST VALID NEXT 24 HOURS:\nINNER SKAGERRAK\nVRB 6, OCNL S NEAR GALE 7. SLT OR MOD, OCNL ROUGN_RAIN, MO_ONMMGZCHPYMJV_PY__ON\nYLM_HMGZ_SMJMPYM_S_M\nC_MGJSHMZYMZAQ__TAXSMYZCD_BMGYF_MG_ZW\n_ONMMG_FJDPYONJMPYM_S_M_CMGWP_YM_ZMU\nS__GBZWMZYMYZCD_BMGYF_MG_ZW\n_ONMMG_A\n829_1_:4 59 2 6. ROUGH. RAIN, MOD.\nSOUTH UTSIRE\nVRB 5, OCNL SE GALE 8. MOD OR ROUGH. RAIN, MOD.\nNORTHV_E\nSE GALE :, DECR TO W 5. ROUGH, OCNL VERY ROUGH. RAIN, MOD.\n__\n-VIKIV_NW_G\nIZ__ SEV GALE 9, BECMG SW NEAR_ALE 7. ROUGH OR VE_ B_BY ROUGN, MOD.\nE_JT-TAMCPONPM_HMGF_YMHZMJUM_S_M_9__*_1BQOBEC_NBN_B_RAXEWB_ABW_RWLBEKGOHAUN_Z_ZFFFVZCZC",
    "resolved_station_name": "Rogaland Radio",
    "resolved_country": "Norway",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "South-west Norwegian coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "SKAGERRAK"
    ],
    "display_region_heading": "Norway - South-west Norwegian coast",
    "display_region_label": "Rogaland Radio, Norway",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Norway - South-west Norwegian coast. Readable text says: Vrb 6, ocnl s near gale 7. slt or mod, ocnl rougn rain, mo onmmgzchpymjv py on. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vrb 6, ocnl s near gale 7. slt or mod, ocnl rougn rain, mo onmmgzchpymjv py on",
      "Vrb 5, ocnl se gale 8. mod or rough. rain, mod",
      "Se gale :, decr to w 5. rough, ocnl very rough. rain, mod"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 35,
    "heading": "2026-04-03 04:40:49 AREA: K",
    "published_at": "2026-04-03 04: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-1'_!6_.\n_ UZ__YV_TPAQPMRRN 001-29.13E\n50-13.61N 001_7 _UGP_N\nH HBF_G\n__  ZBY_GP_N\nH _B_G_PQAQWMPWE\n50-19.74N 001-04.77E_N\nH_UB  GMIIKK\n Y_ZPGPON\nH ZBP_G_\n_ _ U_YEGP_N\nH H_ZCGM\n_ _U_FGPON HGKMNMHONG.::.)-:___9,,888+: (-26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nAIS TRANSMITTER OUT O_ JVY\nF__MKBHJ32_9__9,_)+:00.)**:6ZD_CN:,_9_:_/)_ZAVIGATE WITH CAUTION\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-1'_!6_.\n_ UZ__YV_TPAQPMRRN 001-29.13E\n50-13.61N 001_7 _UGP_N\nH HBF_G\n__ ZBY_GP_N\nH _B_G_PQAQWMPWE\n50-19.74N 001-04.77E_N\nH_UB GMIIKK\nY_ZPGPON\nH ZBP_G_\n_ _ U_YEGP_N\nH H_ZCGM\n_ _U_FGPON HGKMNMHONG.::.)-:___9,,888+: (-26\nAVURNAV CHERBOURG 26/26\nDOVER - DST MANCHE EST\nAIDS TO NAVIGATION CHANGES\nAIS TRANSMITTER OUT O_ JVY\nF__MKBHJ32_9__9,_)+:00.)**:6ZD_CN:,_9_:_/)_ZAVIGATE 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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoring and diving within this area",
      "Cable laying operation",
      "Until further notice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 36,
    "heading": "2026-04-03 04:40:14 AREA: K",
    "published_at": "2026-04-03 04:40:14",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV CHERBOURG 02957_9,_2+_06__._2*_._/$0.0*_9,_!2*._+.\n!__!+._$_0*9,_'!8887$_.):+3._._'!_$_.:'!_9,_)3+3._!6_.*:29,\n_ _7 _7G_PWAQUMEPE\nNAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA29\nAVURNAV CHERBOURG 02957_9,_2+_06__._2*_._/$0.0*_9,_!2*._+.\n!__!+._$_0*9,_'!8887$_.):+3._._'!_$_.:'!_9,_)3+3._!6_.*:29,\n_ _7 _7G_PWAQUMEPE\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: Navigate with caution. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Navigate with caution"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 37,
    "heading": "2026-04-03 04:35:00 AREA: T",
    "published_at": "2026-04-03 04:35:00",
    "area": "T",
    "message_id": "",
    "text": "ZCZCVJ__U_\n_W_J_A_O_OU'+!4_=*_3*3*_\n2/7_'_6\nEKFV_CYE\nV_BZ_ZF _WBQUW\n__Z___P__U_ZCZC",
    "clean_text": "ZCZCVJ__U_\n_W_J_A_O_OU'+!4_=*_3*3*_\n2/7_'_6\nEKFV_CYE\nV_BZ_ZF _WBQUW\n__Z___P__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. 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": 38,
    "heading": "2026-04-03 04:34:11 AREA: T",
    "published_at": "2026-04-03 04:34:11",
    "area": "T",
    "message_id": "",
    "text": "_CZC JA65\n610100 UTC JAN _6\n__6.62!+9,9,_, 25/26\nE FM CAPE GALATA.\nAT A POINT: 43 10,945N 028 00,070E\nA WNITT,SPHERICAL OCEANOGRAPHIC BU_Y_\nSC_0 SVP-BRST IF PLACED WITH A DIAMETER\n0.4M, (285_975 )8__5 '8_,-)8,_.8MANIIERS\nTO KEEP A SAFET_ DISTANMR_KL A_ZCZC",
    "clean_text": "_CZC JA65\n610100 UTC JAN _6\n__6.62!+9,9,_, 25/26\nE FM CAPE GALATA.\nAT A POINT: 43 10,945N 028 00,070E\nA WNITT,SPHERICAL OCEANOGRAPHIC BU_Y_\nSC_0 SVP-BRST IF PLACED WITH A DIAMETER\n0.4M, (285_975 )8__5 '8_,-)8,_.8MANIIERS\nTO KEEP A SAFET_ DISTANMR_KL A_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: At a point: 43 10,945n 028 00,070e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "At a point: 43 10,945n 028 00,070e",
      "Sc 0 svp-brst if placed with a diameter",
      "To keep a safet distanmr kl a zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 39,
    "heading": "2026-04-03 04:33:05 AREA: T",
    "published_at": "2026-04-03 04:33:05",
    "area": "T",
    "message_id": "",
    "text": "_CZC -91\n020845:UTC AUG 22\nVARNA_RADIO ON ZEHA_F OF ROMANIA\n\nNAVWARN 60/BL_CK_SE.ROMANIA\nDUE TO HIGH NUMBER OF MARINE\nMANES_OAN_\nT_YHDI_UPJ_X__EDB__BS_OF\nWHIGH 2 CONTACTS FOUND AODVCLEARED IN\nROMANIAN COASTAL AREA, THE MINE DANG__\nREMAINS _DMWMFHMFJMYPZZBP_W_D_Z_JDIPS SAILING IN THE ROMANIAN AREA\nOF RESPONSIBILITY TO APPLY THE\nPROVISIONS OF NOTICE _O MARINERS \nNO.4/41-2022.\nNNNN",
    "clean_text": "_CZC -91\n020845:UTC AUG 22\nVARNA_RADIO ON ZEHA_F OF ROMANIA\n\nNAVWARN 60/BL_CK_SE.ROMANIA\nDUE TO HIGH NUMBER OF MARINE\nMANES_OAN_\nT_YHDI_UPJ_X__EDB__BS_OF\nWHIGH 2 CONTACTS FOUND AODVCLEARED IN\nROMANIAN COASTAL AREA, THE MINE DANG__\nREMAINS _DMWMFHMFJMYPZZBP_W_D_Z_JDIPS SAILING IN THE ROMANIAN AREA\nOF RESPONSIBILITY TO APPLY THE\nPROVISIONS OF NOTICE _O MARINERS\nNO.4/41-2022.\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Remains dmwmfhmfjmypzzbp w d z jdips sailing in the romanian area",
      "Provisions of notice o mariners",
      "Varna radio on zeha f of romania"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 40,
    "heading": "2026-04-03 04:30:06 AREA: F",
    "published_at": "2026-04-03 04:30:06",
    "area": "F",
    "message_id": "FA12",
    "text": "ZCZC FA12\nTEST\nNNNN",
    "clean_text": "ZCZC FA12\nTEST\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 41,
    "heading": "2026-04-03 04:29:08 AREA: Q",
    "published_at": "2026-04-03 04:29:08",
    "area": "Q",
    "message_id": "",
    "text": "ZCZC Q_FH_RPOEP UTC MAR\nGERMAN NAV WARN 125/26\nSOUTHERN BALTIC. ODERBANK.\nYELLOW LIGHT SPAR BUOY WITH INSCRIPTION 'ODAS' 54-25,0N 014-18,0E\nTEMPORARILY REMOVED.\nNNNN",
    "clean_text": "ZCZC Q_FH_RPOEP UTC MAR\nGERMAN NAV WARN 125/26\nSOUTHERN BALTIC. ODERBANK.\nYELLOW LIGHT SPAR BUOY WITH INSCRIPTION 'ODAS' 54-25,0N 014-18,0E\nTEMPORARILY REMOVED.\nNNNN",
    "display_region_heading": "Unresolved B1 code Q",
    "display_region_label": "B1 code Q",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code Q. Readable text says: Yellow light spar buoy with inscription 'odas' 54-25,0n 014-18,0e.",
    "decoded_highlights": [
      "Yellow light spar buoy with inscription 'odas' 54-25,0n 014-18,0e",
      "German nav warn 125/26",
      "Southern baltic. oderbank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 42,
    "heading": "2026-04-03 04:24:30 AREA: T",
    "published_at": "2026-04-03 04:24:30",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_JA_7\n2_1812 UTC_MAR\n\nKALINGRAD NA_ WAR___51/2_\n,_*+=_6.)'_!9,_*$!'*.0_1+6!*88_\n9-09!__!_\n_\n5__.62.95_54_+*__:6/\n.\n XTZD\nX___VW_ GIORNI 1,3,7,8,_3,14,15,17,20,21,22,24,27,28 E 29 APRILE 2__!\n_9_'0.__=_,584_((2_'_84) \n_\n0'55 _,\nB. 41 22'00 N   012 36'00 E,\nCM __QN_N\nD. 41 0_*_!._...__U_HVJYEMGP_ONGP__ QYSPP _N   012 55'00 E,\nF. 41 20'30 N   012_55'50 E,\nG. 41 24'57 N   012 48'37 E,\nQ_MYKM_KJ _MV E.\nE' VIETATO IL T_ADJIHZ\nO LA MWFM_CSC_CP_OP_\n\n__JNPR_CDDA_VITA' UUBACQUEA E _AWBQJ\nT_\nNNNN",
    "clean_text": "ZCZC_JA_7\n2_1812 UTC_MAR\n\nKALINGRAD NA_ WAR___51/2_\n,_*+=_6.)'_!9,_*$!'*.0_1+6!*88_\n9-09!__!_\n_\n5__.62.95_54_+*__:6/\n.\nXTZD\nX___VW_ GIORNI 1,3,7,8,_3,14,15,17,20,21,22,24,27,28 E 29 APRILE 2__!\n_9_'0.__=_,584_((2_'_84)\n_\n0'55 _,\nB. 41 22'00 N 012 36'00 E,\nCM __QN_N\nD. 41 0_*_!._...__U_HVJYEMGP_ONGP__ QYSPP _N 012 55'00 E,\nF. 41 20'30 N 012_55'50 E,\nG. 41 24'57 N 012 48'37 E,\nQ_MYKM_KJ _MV E.\nE' VIETATO IL T_ADJIHZ\nO LA MWFM_CSC_CP_OP_\n\n__JNPR_CDDA_VITA' UUBACQUEA E _AWBQJ\nT_\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: X vw giorni 1,3,7,8, 3,14,15,17,20,21,22,24,27,28 e 29 aprile 2 !. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "X vw giorni 1,3,7,8, 3,14,15,17,20,21,22,24,27,28 e 29 aprile 2 !",
      "E' vietato il t adjihz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-04-03 04:23:24 AREA: J",
    "published_at": "2026-04-03 04:23:24",
    "area": "J",
    "message_id": "JA28",
    "text": "ZCZC JA28\n=25_815 _7_: .-4\n\nKAL_NGRADIN_\n_WA_ 85___79,9,_*':_*__.)'_!_9,__$!_*9\n_\n_3:12100 UTC MAR THRU _02100 UTC APR\nIN AREA_\nV__ZYYFS_MWCOUS TO SHI_ BR-1(7\n__5-524_ 019-50.00_3\n__54-_0.00___*_19-___:1E\n_ANCEL TH_S MESSA_E___U_\n___K_ZCZC",
    "clean_text": "ZCZC JA28\n=25_815 _7_: .-4\n\nKAL_NGRADIN_\n_WA_ 85___79,9,_*':_*__.)'_!_9,__$!_*9\n_\n_3:12100 UTC MAR THRU _02100 UTC APR\nIN AREA_\nV__ZYYFS_MWCOUS TO SHI_ BR-1(7\n__5-524_ 019-50.00_3\n__54-_0.00___*_19-___:1E\n_ANCEL TH_S MESSA_E___U_\n___K_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: 3:12100 utc mar thru 02100 utc apr. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "3:12100 utc mar thru 02100 utc apr"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 44,
    "heading": "2026-04-03 04:20:15 AREA: I",
    "published_at": "2026-04-03 04:20:15",
    "area": "I",
    "message_id": "IA17",
    "text": "ZCZC IA17\n030120 UTC APR 26\nLA MADDALENA RADIO\n\nCOSTAVURNAV 019/26 3-04 02 \nTIRRENO CENTRALE   LITORALE DI TARQUINIA (VT)\nI GIORNI 3,7,8,9,10,13,14,15,16,17,_0$_7_77_767:7!7+.__.\n/_)/_.+60._00 FINO A MEZZ'ORA DOPO IL TRAMONTO,\nSI S_ZSPYZMPJPF___+*\n_/._!6+.._:+/+.0'!+.*P_XDFZON__C_BW_JJNZPMFSM_ZSF_Z_M_*_(3BUGBPG(_791(0_/_5$=91'0.20'._+_=__*__:3//):\n_O__OYGE_'$- 26= _8)_5-_!_43_____M*=_8_ :2+UTC.\n__ZBV___D___TO 2026-04-04 09 UTC\nCANCE_ \nH_ONNII___U\n_ZC JAV_Z\n_W_UTC MW\nO___SX__(8_8_____07_____5.__=$93(*_00 K\nCVA__\nIN AR_AMHV__NCEL _M_JQU___ZCZC",
    "clean_text": "ZCZC IA17\n030120 UTC APR 26\nLA MADDALENA RADIO\n\nCOSTAVURNAV 019/26 3-04 02\nTIRRENO CENTRALE LITORALE DI TARQUINIA (VT)\nI GIORNI 3,7,8,9,10,13,14,15,16,17,_0$_7_77_767:7!7+.__.\n/_)/_.+60._00 FINO A MEZZ'ORA DOPO IL TRAMONTO,\nSI S_ZSPYZMPJPF___+*\n_/._!6+.._:+/+.0'!+.*P_XDFZON__C_BW_JJNZPMFSM_ZSF_Z_M_*_(3BUGBPG(_791(0_/_5$=91'0.20'._+_=__*__:3//):\n_O__OYGE_'$- 26= _8)_5-_!_43_____M*=_8_ :2+UTC.\n__ZBV___D___TO 2026-04-04 09 UTC\nCANCE_\nH_ONNII___U\n_ZC JAV_Z\n_W_UTC MW\nO___SX__(8_8_____07_____5.__=$93(*_00 K\nCVA__\nIN AR_AMHV__NCEL _M_JQU___ZCZC",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Tirreno centrale litorale di tarquinia (vt). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Tirreno centrale litorale di tarquinia (vt)",
      "Costavurnav 019/26 3-04 02",
      "La maddalena radio"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-04-03 04:18:27 AREA: T",
    "published_at": "2026-04-03 04:18:27",
    "area": "T",
    "message_id": "",
    "text": "ZCZC_J_PZ__OPP UTC APR\nBALTIC SEA NAV WARN 020/26\nBALTIC SEA AREA AND INLAND WATERWAYS.\nAFTER THE WINTER SEASON FLOATING NAVIGATIONAL AIDS AND ALSO SOME LIGHTS, LEADING LIGHTS AND MAR_S COU_PMCSFH_M_Z_.ZJFHFZMZYMX_JFAP_.-,6 _796' -,$ .-4(' _-=3 _33, 285_$4-2,. _-84 294(' 28)) 5-(3 '3=34-) 23_(*__9,0\n!____._!__._:_!+_NNNN",
    "clean_text": "ZCZC_J_PZ__OPP UTC APR\nBALTIC SEA NAV WARN 020/26\nBALTIC SEA AREA AND INLAND WATERWAYS.\nAFTER THE WINTER SEASON FLOATING NAVIGATIONAL AIDS AND ALSO SOME LIGHTS, LEADING LIGHTS AND MAR_S COU_PMCSFH_M_Z_.ZJFHFZMZYMX_JFAP_.-,6 _796' -,$ .-4(' _-=3 _33, 285_$4-2,. _-84 294(' 28)) 5-(3 '3=34-) 23_(*__9,0\n!____._!__._:_!+_NNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: After the winter season floating navigational aids and also some lights, leading lights and mar s cou pmcsfh m z .zjfhfzmzymx jfap .-,6 796' -,$ .-4(' - 3 33, 285 $4-2,. -84 294(' 28)) 5-(3 '3 34-) 23 ( 9,0. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "After the winter season floating navigational aids and also some lights, leading lights and mar s cou pmcsfh m z .zjfhfzmzymx jfap .-,6 796' -,$ .-4(' - 3 33, 285 $4-2,. -84 294(' 28)) 5-(3 '3 34-) 23 ( 9,0",
      "Baltic sea area and inland waterways",
      "Baltic sea nav warn 020/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 49,
    "heading": "2026-04-03 04:15:21 AREA: J",
    "published_at": "2026-04-03 04:15:21",
    "area": "J",
    "message_id": "JA45",
    "text": "ZCZC JA45\n021354_: -04\nGERMAN NA\nM_YBM_XWY\nWESTERN BALTIC. NOYHDMZ_MWYJJPYMZYH_SURVEY OPERA_FZJMLOBPOOB_IONEER / C6BH3',\nIN AREA 54-33.5N 012-26.2E\n54-40.5N 012-40.5E AND 54-36.3N 012-44.2E\nRESTRI_ MANEUVERABILITY DURING OPERATIONS.\nBERTH OF 200_=__.60_:0*_02_NNNN",
    "clean_text": "ZCZC JA45\n021354_: -04\nGERMAN NA\nM_YBM_XWY\nWESTERN BALTIC. NOYHDMZ_MWYJJPYMZYH_SURVEY OPERA_FZJMLOBPOOB_IONEER / C6BH3',\nIN AREA 54-33.5N 012-26.2E\n54-40.5N 012-40.5E AND 54-36.3N 012-44.2E\nRESTRI_ MANEUVERABILITY DURING OPERATIONS.\nBERTH OF 200_=__.60_:0*_02_NNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Western baltic. noyhdmz mwyjjpymzyh survey opera fzjmlobpoob ioneer / c6bh3'. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Western baltic. noyhdmz mwyjjpymzyh survey opera fzjmlobpoob ioneer / c6bh3'",
      "In area 54-33.5n 012-26.2e",
      "Restri maneuverability during operations"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-04-03 04:14:12 AREA: P",
    "published_at": "2026-04-03 04:14:12",
    "area": "P",
    "message_id": "PB29",
    "text": "ZCZC PB29\n _UTC APR 26\nGALEWARNING, 03 APR 00:05 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES.=DZ_PY\n_ONGJZCHDMHZMJZCHD_PJ_M\nC_ONONGPWMZ._'0_6!_9,9,9,,=================_-,_-__ZCZC",
    "clean_text": "ZCZC PB29\n_UTC APR 26\nGALEWARNING, 03 APR 00:05 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES.=DZ_PY\n_ONGJZCHDMHZMJZCHD_PJ_M\nC_ONONGPWMZ._'0_6!_9,9,9,,=================_-,_-__ZCZC",
    "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: Galewarning, 03 apr 00:05 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Galewarning, 03 apr 00:05 utc",
      "Dogger. german bight. humber. thames. dz py"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 52,
    "heading": "2026-04-03 04:07:25 AREA: G",
    "published_at": "2026-04-03 04:07:25",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FFP_W_N TRAPEMWG_BHXK\n_V_F_NAVAIWJMFZ_PYH_ONLB_LRIIII_LL__7_ZCZXM\nC_ONG_AMN_WY\nHC_LP__OYWPS_MEQB__UBIQ\n_OXB_HZHLF V_FJV__J_TEAQPMUN _8((UKQE UNLIT AND ALL NA_MJMFZ_KD_,LZM CANCPLM_AM\nGCHKPO_HE_QKYI_M3____ZCZC",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FFP_W_N TRAPEMWG_BHXK\n_V_F_NAVAIWJMFZ_PYH_ONLB_LRIIII_LL__7_ZCZXM\nC_ONG_AMN_WY\nHC_LP__OYWPS_MEQB__UBIQ\n_OXB_HZHLF V_FJV__J_TEAQPMUN _8((UKQE UNLIT AND ALL NA_MJMFZ_KD_,LZM CANCPLM_AM\nGCHKPO_HE_QKYI_M3____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: Ravenspurn north gas ffp w n trapemwg bhxk. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ravenspurn north gas ffp w n trapemwg bhxk"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 53,
    "heading": "2026-04-03 04:07:00 AREA: G",
    "published_at": "2026-04-03 04:07:00",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SIH_M_HH_IIKKYBYG_M\n_ UC__GUMZ_._6_\nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SIH_M_HH_IIKKYBYG_M\n_ UC__GUMZ_._6_\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats sih m hh iikkybyg m",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 54,
    "heading": "2026-04-03 04:06:36 AREA: G",
    "published_at": "2026-04-03 04:06:36",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITEM\nH_H__ 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITEM\nH_H__ 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 sitem",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 55,
    "heading": "2026-04-03 04:06:09 AREA: G",
    "published_at": "2026-04-03 04:06:09",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-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 55-06.8N 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 55-06.8N 001-23.6W.",
    "decoded_highlights": [
      "Turbine b10 55-06.8n 001-23.6w unlit and fog signal inoperative",
      "Blyth offshore demonstrator wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 56,
    "heading": "2026-04-03 04:05:36 AREA: G",
    "published_at": "2026-04-03 04:05:36",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 22357_9,_$:_)0__\nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE. \n2. _XPSM_AM\n TUEMVG\nHUS_ONGONNIII_ZCZC",
    "clean_text": "ZCZC GA02\nWZ 22357_9,_$:_)0__\nLEMAN GAS FIELD.\n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. _XPSM_AM\nTUEMVG\nHUS_ONGONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperative",
      "Leman gas field",
      "Hus ongonniii zczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-04-03 04:05:06 AREA: G",
    "published_at": "2026-04-03 04:05:06",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 2-_57_+,_+_2_\nMRCC SHETLAND.\n1. MF R/_\n=2.2*_.*_6\n!_0*._6+_.__00**.*888_ 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26.=_\n!S_ONGONNIIIIZCZC",
    "clean_text": "ZCZC GA04\nWZ 2-_57_+,_+_2_\nMRCC SHETLAND.\n1. MF R/_\n=2.2*_.*_6\n!_0*._6+_.__00**.*888_ 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26.=_\n!S_ONGONNIIIIZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Mrcc shetland. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc shetland",
      "2. cancel wz 213/26",
      "!s ongonniiiizczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 58,
    "heading": "2026-04-03 04:04:35 AREA: G",
    "published_at": "2026-04-03 04:04:35",
    "area": "G",
    "message_id": "GA07",
    "text": "ZCZC GA07\nWZ 226/26\nHUMBER.\nBESSEMER GAS FIELD.\n1. PLATFORM 49/23P_MHP _N 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/23P_MHP _N 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.",
    "decoded_highlights": [
      "1. platform 49/23p mhp n 002-29.1e, fog signal inoperative",
      "Bessemer gas field",
      "2. cancel wz 104/26 (ga54)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 59,
    "heading": "2026-04-03 04:04:09 AREA: G",
    "published_at": "2026-04-03 04:04:09",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBERMPN _02-05.8E UNLIT AND A_AVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBERMPN _02-05.8E UNLIT AND A_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: Humbermpn 02-05.8e unlit and a avaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Humbermpn 02-05.8e unlit and a avaids inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 60,
    "heading": "2026-04-03 04:03:35 AREA: G",
    "published_at": "2026-04-03 04:03:35",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. _ 55-08.1N 002-09.5E. \nB. E5 54-51.5N 002-20.7E. \n2. CANCEL WZ 95/26 (GA50). \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA. _ 55-08.1N 002-09.5E.\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (GA50).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOGGER",
      "SOFIA OFFSHORE WIND FARM"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. buoys unlit.",
    "decoded_highlights": [
      "1. buoys unlit",
      "Sofia offshore wind farm",
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 61,
    "heading": "2026-04-03 04:02:59 AREA: G",
    "published_at": "2026-04-03 04:02:59",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nFORTH. \nNEART NA GAOITHE WINDFARM__\n_ _,_ 3 _796 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE. \n2. CANCEL WZ 130/26 (GA73). \nNNNN",
    "clean_text": "ZCZC GA18\nWZ 243/26\nFORTH.\nNEART NA GAOITHE WINDFARM__\n_ _,_ 3 _796 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 130/26 (GA73).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-14.3N 002-08.6W; 56-12.3N 002-09.8W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "3 796 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "Neart na gaoithe windfarm",
      "2. cancel wz 130/26 (ga73)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 62,
    "heading": "2026-04-03 04:02:28 AREA: G",
    "published_at": "2026-04-03 04:02:28",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GB339,__:''06_+_*62!+9,__'_._6!_._$:6*23.\n_M__YF_M\n_ HEMG_H_ONONG_ZYHFPJM_YZBYHEM_ZI_I_ONONG_FYMFJSPONGJZCHDPJHPYSEM_S_M_ZYXPM\nFMG_ZHFCF_ONGONNIII_ZCZC",
    "clean_text": "ZCZC GB339,__:''06_+_*62!+9,__'_._6!_._$:6*23.\n_M__YF_M\n_ HEMG_H_ONONG_ZYHFPJM_YZBYHEM_ZI_I_ONONG_FYMFJSPONGJZCHDPJHPYSEM_S_M_ZYXPM\nFMG_ZHFCF_ONGONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 63,
    "heading": "2026-04-03 04:00:15 AREA: G",
    "published_at": "2026-04-03 04:00:15",
    "area": "G",
    "message_id": "GE15",
    "text": "ZCZC GE15\nEXTENDED OUTLOOK\nSAT TO TUE\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COASTGUARDC_PX_AT 022300 UTC\n\n\nLOW 980 EXP BY LATE ON SAT IN MALIN, MOV NEMWMPIIKKT_LEM78(1____/9__EO_EKKQO_XXB_32_,__,_'0__78(1___1/___1_(1OH_BBBKUON___6 .8$$-6 9, .9, 8, 5_-.3', 1027, MOV E AND DISSIPATING BY MIDDAY ON TUE. STORM FORCE WINDS EXP FM EARLY ON SUN UNTIL MIDDAY ON FRI IN VIKING, FORTIES AND FAIR ISLES, WITH GALUSVMODERATING BY MORNING OF MON. SEV GALES EXP FM EARLY ON SUN UNTIL MIDDAY ON SUN IN N UTSIRE, S UTSIRE, CROMARTY, FORTH, TYNE, DOGGER AND FISHER, WITH GALES IN THESE AREAS GRADUALLY MODERATING FM THE SW BY LATE ON SUN, EXCEPT IN THE UTSIRES WHERE GALES MOD BY MORNINGVZ.__\n_._'0*.0_6 )-53 9, '-5 8, _34.-, _8__5, HUMBER AND THAMES, MODERATING BY MIDDAY ON SUN\nNNNN",
    "clean_text": "ZCZC GE15\nEXTENDED OUTLOOK\nSAT TO TUE\nISSUED BY THE MET OFFICE, ON BEHALF OF THE MARITIME AND COASTGUARDC_PX_AT 022300 UTC\n\nLOW 980 EXP BY LATE ON SAT IN MALIN, MOV NEMWMPIIKKT_LEM78(1____/9__EO_EKKQO_XXB_32_,__,_'0__78(1___1/___1_(1OH_BBBKUON___6 .8$$-6 9, .9, 8, 5_-.3', 1027, MOV E AND DISSIPATING BY MIDDAY ON TUE. STORM FORCE WINDS EXP FM EARLY ON SUN UNTIL MIDDAY ON FRI IN VIKING, FORTIES AND FAIR ISLES, WITH GALUSVMODERATING BY MORNING OF MON. SEV GALES EXP FM EARLY ON SUN UNTIL MIDDAY ON SUN IN N UTSIRE, S UTSIRE, CROMARTY, FORTH, TYNE, DOGGER AND FISHER, WITH GALES IN THESE AREAS GRADUALLY MODERATING FM THE SW BY LATE ON SUN, EXCEPT IN THE UTSIRES WHERE GALES MOD BY MORNINGVZ.__\n_._'0*.0_6 )-53 9, '-5 8, _34.-, _8__5, HUMBER AND THAMES, MODERATING BY MIDDAY ON SUN\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "DOGGER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention gales, ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Low 980 exp by late on sat in malin, mov nemwmpiikkt lem78(1 /9 eo ekkqo xxb 32 , , '0 78(1 1/ 1 (1oh bbbkuon 6 .8$$-6 9, .9, 8, 5 -.3', 1027, mov e and dissipating by midday on tue. storm force winds exp fm early on sun until midday on fri in viking, forties and fair isles, with galusvmoderating by morning of mon. sev gales exp fm early on sun until midday on sun in n utsire, s utsire, cromarty, forth, tyne, dogger and fisher, with gales in these areas gradually moderating fm the sw by late on sun, except in the utsires where gales mod by morningvz",
      "Issued by the met office, on behalf of the maritime and coastguardc px at 022300 utc",
      "Extended outlook"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 65,
    "heading": "2026-04-03 03:54:57 AREA: F",
    "published_at": "2026-04-03 03:54:57",
    "area": "F",
    "message_id": "",
    "text": "ZCZC FA__I\nQTQERW UTC JAN \nTEST\nNLA_ _Z_UJZXHQFEE_CFRT_\nK__Z HV__E_TO HEAVY ICA CONDTIONS__ILOTAGE_OF ORANSIT \n_ROUGH VINAMERI\nHAS BEEN SUSPENDED\nN_N_\n\nYW___\n\n_\n_K_U__\nZCZN FA17\n7211049 TC  OMBPLDHSYM_VE IN_FOLLOWS:\nWHEN _A_SINGT ON \nNFTCH 1.\n_2_3,,__:*\n__.!._0'_._++6_2)_9__2_5743 4_5 9, =_! :_ 16, LATEST 6 HOURS BEFORE DEPARTURE.\nFOR IDFORMATION ON RESTRICTIONS GO TO 'BALT_CE.ORG\nNNNN",
    "clean_text": "ZCZC FA__I\nQTQERW UTC JAN\nTEST\nNLA_ _Z_UJZXHQFEE_CFRT_\nK__Z HV__E_TO HEAVY ICA CONDTIONS__ILOTAGE_OF ORANSIT\n_ROUGH VINAMERI\nHAS BEEN SUSPENDED\nN_N_\n\nYW___\n\n_\n_K_U__\nZCZN FA17\n7211049 TC OMBPLDHSYM_VE IN_FOLLOWS:\nWHEN _A_SINGT ON\nNFTCH 1.\n_2_3,,__:*\n__.!._0'_._++6_2)_9__2_5743 4_5 9, =_! :_ 16, LATEST 6 HOURS BEFORE DEPARTURE.\nFOR IDFORMATION ON RESTRICTIONS GO TO 'BALT_CE.ORG\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code F. Readable text says: For idformation on restrictions go to 'balt ce.org. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "For idformation on restrictions go to 'balt ce.org",
      "7211049 tc ombpldhsym ve in follows",
      "Qtqerw utc jan"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 71,
    "heading": "2026-04-03 03:43:50 AREA: E",
    "published_at": "2026-04-03 03:43:50",
    "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": 72,
    "heading": "2026-04-03 03:43:29 AREA: E",
    "published_at": "2026-04-03 03:43:29",
    "area": "E",
    "message_id": "EA22",
    "text": "ZCZC EA22\nWZ 185/26 \nWIGHT. \nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC EA22\nWZ 185/26\nWIGHT.\nNEEDLES LIGHT 50-39.7N 001-35.5W FOG SIGNAL INOPERATIVE.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "NEEDLES"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - English Channel and western approaches. Readable text reports a fog signal outage near 50-39.7N 001-35.5W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Needles light 50-39.7n 001-35.5w fog signal inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 73,
    "heading": "2026-04-03 03:43:09 AREA: E",
    "published_at": "2026-04-03 03:43:09",
    "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": 74,
    "heading": "2026-04-03 03:42:45 AREA: E",
    "published_at": "2026-04-03 03:42:45",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 75,
    "heading": "2026-04-03 03:42:21 AREA: E",
    "published_at": "2026-04-03 03:42:21",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \n_S_BZC_D_M LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL BUOEM\nH_ _UG_IIK_\n_H_RW UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\n_S_BZC_D_M LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL BUOEM\nH_ _UG_IIK_\n_H_RW 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 buoem. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "South cardinal buoem"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 76,
    "heading": "2026-04-03 03:41:52 AREA: E",
    "published_at": "2026-04-03 03:41:52",
    "area": "E",
    "message_id": "EA49",
    "text": "ZCZC EA49\n272048Z MAR 2026 \nEA49 \nWZ 240/26 \nFASTNET. \nBLACKBALL LEDGE SOUTHEASTWARDS. \nEAST CARDINAL BUOY 51-55.3N 007-48.5W UNLIT. \n\nNNNN",
    "clean_text": "ZCZC EA49\n272048Z MAR 2026\nEA49\nWZ 240/26\nFASTNET.\nBLACKBALL LEDGE SOUTHEASTWARDS.\nEAST CARDINAL BUOY 51-55.3N 007-48.5W UNLIT.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: East cardinal buoy 51-55.3n 007-48.5w unlit.",
    "decoded_highlights": [
      "East cardinal buoy 51-55.3n 007-48.5w unlit",
      "Blackball ledge southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 77,
    "heading": "2026-04-03 03:40:15 AREA: E",
    "published_at": "2026-04-03 03:40:15",
    "area": "E",
    "message_id": "EE95",
    "text": "ZCZC EE95\nEXTENDED OUTLOOKONGJHMHZMHCPONGFJJCPWML_MHDPM_PH_Z_!/0_._+.)0$'_.+._$0._6!_!_0._ 8_ :9-'5_7-4$ -_3,:6, AT 022300 UTC\n\n\nLOW 980 EXP BY LATE ON SAT IN MALIN, MOV NE AND EXP BY MIDDAY ON SUN OVER NORWAY 977. __!_$.\n _76._0_6 .8$$-6 9, '7, 8, _8':-6, MOV NE AND EXP BY MIDDAY ON MON IN THAMES, 7027, MOV E AND DISSIPATING BY MIDDAY ON TUE. GALES EXP BY LATE ON SAT IN THAMES, MODERATING BY MIDDAY ON SUN. GALES EXP BY LATE OMJHMFM_S_BZC_D_MGJZSP_MGSCW_IIKK\n_G_JHPH_MGFYFJDMJPMWMJDZ_MG_ZWPYHF_MLEM_ZYF_MZ.*__._):_.60_:6!._+6.._!_0.+.888__+.!.*+'0.2.*$+9,_9,,888_ZCZC",
    "clean_text": "ZCZC EE95\nEXTENDED OUTLOOKONGJHMHZMHCPONGFJJCPWML_MHDPM_PH_Z_!/0_._+.)0$'_.+._$0._6!_!_0._ 8_ :9-'5_7-4$ -_3,:6, AT 022300 UTC\n\nLOW 980 EXP BY LATE ON SAT IN MALIN, MOV NE AND EXP BY MIDDAY ON SUN OVER NORWAY 977. __!_$.\n_76._0_6 .8$$-6 9, '7, 8, _8':-6, MOV NE AND EXP BY MIDDAY ON MON IN THAMES, 7027, MOV E AND DISSIPATING BY MIDDAY ON TUE. GALES EXP BY LATE ON SAT IN THAMES, MODERATING BY MIDDAY ON SUN. GALES EXP BY LATE OMJHMFM_S_BZC_D_MGJZSP_MGSCW_IIKK\n_G_JHPH_MGFYFJDMJPMWMJDZ_MG_ZWPYHF_MLEM_ZYF_MZ.*__._):_.60_:6!._+6.._!_0.+.888__+.!.*+'0.2.*$+9,_9,,888_ZCZC",
    "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": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention gales across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "76. 0 6 .8$$-6 9, '7, 8, 8':-6, mov ne and exp by midday on mon in thames, 7027, mov e and dissipating by midday on tue. gales exp by late on sat in thames, moderating by midday on sun. gales exp by late omjhmfm s bzc d mgjzsp mgscw iikk",
      "Low 980 exp by late on sat in malin, mov ne and exp by midday on sun over norway 977. ! $"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 78,
    "heading": "2026-04-03 02:59:42 AREA: W",
    "published_at": "2026-04-03 02:59:42",
    "area": "W",
    "message_id": "",
    "text": "ZCZC WA__BJ__W__33_____: *54\n(2_5-*_*__\n__-4_9())5_9!7,_100(_T_CK SED\nDNIPRO_!'_+7+(6. 43_89,\n__1+75-DIH_O\nZJ_WLDH_DISZIM_ZCZC",
    "clean_text": "ZCZC WA__BJ__W__33_____: *54\n(2_5-*_*__\n__-4_9())5_9!7,_100(_T_CK SED\nDNIPRO_!'_+7+(6. 43_89,\n__1+75-DIH_O\nZJ_WLDH_DISZIM_ZCZC",
    "display_region_heading": "Unresolved B1 code W",
    "display_region_label": "B1 code W",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code W. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 82,
    "heading": "2026-04-03 02:12:46 AREA: T",
    "published_at": "2026-04-03 02:12:46",
    "area": "T",
    "message_id": "TA13",
    "text": "ZCZC TA13\n-_-!_! .-4 \nOOSTEN_DIO MSI 132/26\n_\n7__5:!\n_.9__4.737, 002-56.78E DRIF\nFZMONGKLG__5-9___XXP_G_OASTGUARD\n__MOIII_U_AXA_MH_O\nSARDINIAM_MG_PWFHEEKKBQKBK_OLLOWING HXXV_XO__QGQGOQL_M__0.__38 27.010N 010 40.446E\n38 23.047N 010 2056_09,_0+._0_+0,__\n__.7$ ,95 59 -,:_94 ,94 !:*9\n8, 5_3 =8:8,856\n\nNNNN",
    "clean_text": "ZCZC TA13\n-_-!_! .-4\nOOSTEN_DIO MSI 132/26\n_\n7__5:!\n_.9__4.737, 002-56.78E DRIF\nFZMONGKLG__5-9___XXP_G_OASTGUARD\n__MOIII_U_AXA_MH_O\nSARDINIAM_MG_PWFHEEKKBQKBK_OLLOWING HXXV_XO__QGQGOQL_M__0.__38 27.010N 010 40.446E\n38 23.047N 010 2056_09,_0+._0_+0,__\n__.7$ ,95 59 -,:_94 ,94 !:*9\n8, 5_3 =8:8,856\n\nNNNN",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. Readable text says: Sardiniam mg pwfheekkbqkbk ollowing hxxv xo qgqgoql m 0. 38 27.010n 010 40.446e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sardiniam mg pwfheekkbqkbk ollowing hxxv xo qgqgoql m 0. 38 27.010n 010 40.446e",
      "Oosten dio msi 132/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 83,
    "heading": "2026-04-03 02:12:17 AREA: T",
    "published_at": "2026-04-03 02:12:17",
    "area": "T",
    "message_id": "TA16",
    "text": "ZCZC TA16\n2918_1,_ .-4\nOOSTENDWOWFZM_JX\n_\n__OM__P_G TRACK:\n1  36 01 57 06N   01=95_\n00=_0=_*-_7_ZCZC",
    "clean_text": "ZCZC TA16\n2918_1,_ .-4\nOOSTENDWOWFZM_JX\n_\n__OM__P_G TRACK:\n1 36 01 57 06N 01=95_\n00=_0=_*-_7_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: Oostendwowfzm jx. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Oostendwowfzm jx"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 85,
    "heading": "2026-04-03 02:06:28 AREA: S",
    "published_at": "2026-04-03 02:06:28",
    "area": "S",
    "message_id": "SA75",
    "text": "ZCZC SA75\nNCC-HAMBURG\n2709_MG_HXM_Y_\n_NAV. WARN. NO. 183\nEAST_FYFJFMFJSWJ_BGQCF_H_ 'JUIST-__*.._'!_$_):+_..\n_066_..\n_EHHGPM_FJJF_NNNN",
    "clean_text": "ZCZC SA75\nNCC-HAMBURG\n2709_MG_HXM_Y_\n_NAV. WARN. NO. 183\nEAST_FYFJFMFJSWJ_BGQCF_H_ 'JUIST-__*.._'!_$_):+_..\n_066_..\n_EHHGPM_FJJF_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Nav. warn. no. 183. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Nav. warn. no. 183",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 87,
    "heading": "2026-04-03 02:05:14 AREA: S",
    "published_at": "2026-04-03 02:05:14",
    "area": "S",
    "message_id": "SA80",
    "text": "ZCZC SA80\nNCC-HAMBURG\n3\n__3_\n____1___\nNAV. WARN. NO. 189\nEIDER ESTUARY.\n'EIDER' LIGHTBUOY  54-16N 008-29E\nTEMPORYFS_MYP_SXPW_L_MCSFHMLCZE_NNNN",
    "clean_text": "ZCZC SA80\nNCC-HAMBURG\n3\n__3_\n____1___\nNAV. WARN. NO. 189\nEIDER ESTUARY.\n'EIDER' LIGHTBUOY 54-16N 008-29E\nTEMPORYFS_MYP_SXPW_L_MCSFHMLCZE_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: 'eider' lightbuoy 54-16n 008-29e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'eider' lightbuoy 54-16n 008-29e",
      "Eider estuary",
      "Nav. warn. no. 189"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 90,
    "heading": "2026-04-03 02:02:28 AREA: S",
    "published_at": "2026-04-03 02:02:28",
    "area": "S",
    "message_id": "SA83",
    "text": "ZCZC SA83\nNCC-HAML_Y_ON\n__UMG_H_MYM\n_NAV. WARN. NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XR3',\nAROUND POSITION 54-47,3N 005-58,3E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\n_BERTH OF 2 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA83\nNCC-HAML_Y_ON\n__UMG_H_MYM\n_NAV. WARN. NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY OPERATIONS BY MV 'FUGRO SYNERGY', CS 'C6XR3',\nAROUND POSITION 54-47,3N 005-58,3E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS,\n_BERTH OF 2 NM REQUESTED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT",
      "WEISSE BANK"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text reports survey operations near 54-47.3N 005-58.3E and implies local caution around the work area.",
    "decoded_highlights": [
      "Survey operations by mv 'fugro synergy', cs 'c6xr3'",
      "Around position 54-47,3n 005-58,3e",
      "Restricted manoevrability during operations"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 92,
    "heading": "2026-04-03 02:00:14 AREA: S",
    "published_at": "2026-04-03 02:00:14",
    "area": "S",
    "message_id": "SE64",
    "text": "ZCZC SE64\n022300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\nWIND: WEST TO NORTHWEST ABOUT 4, _MHF_PM__NG SOUTH 6.\n \n=8'8_8)856/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, _*$!__!_.*+:_$_._!_60*!_.)+:_.\n:_9,__!*!)!'!_3_5_70_$06_)9:-))6 '_9234 285_ 0994 =8'8_8)856.\nSEA: 2_.3534, _EDZCZC",
    "clean_text": "ZCZC SE64\n022300 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\nWIND: WEST TO NORTHWEST ABOUT 4, _MHF_PM__NG SOUTH 6.\n\n=8'8_8)856/WEATHER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, _*$!__!_.*+:_$_._!_60*!_.)+:_.\n:_9,__!*!)!'!_3_5_70_$06_)9:-))6 '_9234 285_ 0994 =8'8_8)856.\nSEA: 2_.3534, _EDZCZC",
    "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: 8'8 8)856/weather: rain or shower with partly poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "8'8 8)856/weather: rain or shower with partly poor visibility",
      "Weatherforecast for german bight",
      "Wind: west to northwest about 4, mhf pm ng south 6"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 93,
    "heading": "2026-04-03 01:58:07 AREA: R",
    "published_at": "2026-04-03 01:58:07",
    "area": "R",
    "message_id": "RA92",
    "text": "ZCZC RA92\n022250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING NR. 029/26 MAR 09 (5 RELAY)\nSARDINIA - MEDITERRANEAN SEA -\nFOLLOWING POINT:\n41 17.178N - 009 58.977E\nFROM 10TH MAR 2026 UNTIL 10TH MAY 2026\nJIF MAIRI, WILL CARRY OUT REMOVAL OF BUOYS FOR DATA\nCOLLECTION PURPOSES,\nIT MUST BE CONSIDERED VESSEL RESTRICTED IN HER LFSFH_MH_M_ZPC_YP\n_ONGJDF_G - FISHING - ANCHORAGE AND EVERY SURFACE/UNDERWATER ACTIVITY\nIS DANGEROUS.\nALL TRANSITING SHIPS BEWARE KEEP__MMWFJH_PMZ_MA_K_JJMHDON\n_NM.\n\nNNNN",
    "clean_text": "ZCZC RA92\n022250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING NR. 029/26 MAR 09 (5 RELAY)\nSARDINIA - MEDITERRANEAN SEA -\nFOLLOWING POINT:\n41 17.178N - 009 58.977E\nFROM 10TH MAR 2026 UNTIL 10TH MAY 2026\nJIF MAIRI, WILL CARRY OUT REMOVAL OF BUOYS FOR DATA\nCOLLECTION PURPOSES,\nIT MUST BE CONSIDERED VESSEL RESTRICTED IN HER LFSFH_MH_M_ZPC_YP\n_ONGJDF_G - FISHING - ANCHORAGE AND EVERY SURFACE/UNDERWATER ACTIVITY\nIS DANGEROUS.\nALL TRANSITING SHIPS BEWARE KEEP__MMWFJH_PMZ_MA_K_JJMHDON\n_NM.\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Ongjdf g - fishing - anchorage and every surface/underwater activity.",
    "decoded_highlights": [
      "Ongjdf g - fishing - anchorage and every surface/underwater activity",
      "Coastal warning nr. 029/26 mar 09 (5 relay)",
      "Jif mairi, will carry out removal of buoys for data"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 94,
    "heading": "2026-04-03 01:57:27 AREA: T",
    "published_at": "2026-04-03 01:57:27",
    "area": "T",
    "message_id": "",
    "text": "ZCACMY\nZ__NU_UHMG_H_MYM\n_LA MADDALENA RADIO\n\nCOSTAL WARNING NR_BM _FT_PR 02\nTYRRHENIAN SEA - PORTOFERRAIO\nIN PSN:\n- 42 47.7N _____ENSGPDH_ZCDZCJPMY_BMU_M_(E1444) HAS RESUMED REGULAR\nOPERATION\n\n\n\nNNNN",
    "clean_text": "ZCACMY\nZ__NU_UHMG_H_MYM\n_LA MADDALENA RADIO\n\nCOSTAL WARNING NR_BM _FT_PR 02\nTYRRHENIAN SEA - PORTOFERRAIO\nIN PSN:\n- 42 47.7N _____ENSGPDH_ZCDZCJPMY_BMU_M_(E1444) HAS RESUMED REGULAR\nOPERATION\n\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature-fallback",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Costal warning nr bm ft pr 02. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Costal warning nr bm ft pr 02",
      "Tyrrhenian sea - portoferraio",
      "Operation"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 95,
    "heading": "2026-04-03 01:55:29 AREA: R",
    "published_at": "2026-04-03 01:55:29",
    "area": "R",
    "message_id": "RA89",
    "text": "ZCZC RA89\n022250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 MAR 31\nTYRRHENIAN SEA   LATINA\nDAYS 1,3,7,8,10,13,14,15,17_1U CKRCXK__(7(89_(3__(_:9,:__49. )9:-) 58.3 CB_T 18.00 AND ON 2,9,16,23 AND 30 APRIL 2026,\nFROM LOCASM\nF_PMGXL9_23.00, WILL BE CARRIED OUT A FIR_ONBFSFHY_MXHF\nFHEMFMHDPMJPMYPM_JGP_DZM_PPU_P_EJMT_3_3_3:6__7_+4_)856 'FOCEM_PY_P_JMGLZCUUO_QBD_OLLOWING POINTS:\nA. 41 27'16 D_  012 40'55 E,\nB. 41 22'00 MMM\n_U_PEJ_BNE_. 41 14'50 N   012 37'_-._0_9,_2__93.9014___99,_/:9$.130_,_. 41 16'00 N   012 55'00 E,\nF. 41 20'30 N   012 55'50 E,\nG. 41 24'57 N   012 48'37 E,\nA._-:\nN   012 40'55 E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\nNNNN",
    "clean_text": "ZCZC RA89\n022250 UTC APR 26\nLA MADDALENA RADIO\n\nCOASTAL WARNING 018/26 MAR 31\nTYRRHENIAN SEA LATINA\nDAYS 1,3,7,8,10,13,14,15,17_1U CKRCXK__(7(89_(3__(_:9,:__49. )9:-) 58.3 CB_T 18.00 AND ON 2,9,16,23 AND 30 APRIL 2026,\nFROM LOCASM\nF_PMGXL9_23.00, WILL BE CARRIED OUT A FIR_ONBFSFHY_MXHF\nFHEMFMHDPMJPMYPM_JGP_DZM_PPU_P_EJMT_3_3_3:6__7_+4_)856 'FOCEM_PY_P_JMGLZCUUO_QBD_OLLOWING POINTS:\nA. 41 27'16 D_ 012 40'55 E,\nB. 41 22'00 MMM\n_U_PEJ_BNE_. 41 14'50 N 012 37'_-._0_9,_2__93.9014___99,_/:9$.130_,_. 41 16'00 N 012 55'00 E,\nF. 41 20'30 N 012 55'50 E,\nG. 41 24'57 N 012 48'37 E,\nA._-:\nN 012 40'55 E.\nTRANSIT, ANCHORAGE AND FISHING ARE PROHIBITED.\nNNNN",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchorage and fishing are prohibited. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchorage and fishing are prohibited",
      "Coastal warning 018/26 mar 31",
      "Days 1,3,7,8,10,13,14,15,17 1u ckrcxk (7(89 (3 ( :9,: 49. )9:-) 58.3 cb t 18.00 and on 2,9,16,23 and 30 april 2026"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 96,
    "heading": "2026-04-03 01:50:15 AREA: R",
    "published_at": "2026-04-03 01:50:15",
    "area": "R",
    "message_id": "RA86",
    "text": "ZCZC RA86\n022250.____.YM\n_LA MADDALENA RADIO\n\nCOASTAL WARNING 019/26 APR 02 \nTYRRHENIAN SEA   TARQUINIA COAST (VT)\nDAYS 3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 30\nAPRIL 2026 FROM LOCAL TIME 07 00 UNTIL HALF AN HOUR AFTER SUNSET,\nWILL BE CARRIED OUT A FIRING MILITARY ACTIVITIES IN THE SEA AREA\nNEAR 'PIAN DI SPILLE' FIRING RANGE ON THE COAST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' AND 'R42',\nBOUNDED BY THE FOLLOWING POINTS:\nA  42 16'14 N   011 39'52 E \nB  42 16'45 N   011 37'13 E \nC  42 14'35 N   011 37'52 E \nD  42 13'26 N   011 40'00 E \nE  42 15'02 N   011 40'45 E \nTRANSIT, ANCHZ_AGE AND FISHING AREM_YZDFLFHPWMONONONNIIII___P__G!2$$_31$2/(-04 2_\n:+*_'._6_3_4_/0_:0+_'3- - CIVIT\nP_XW:_\nRYF__AYS \n UKPJX_MLMNXEMDXPXMC__8/58\n_!5__4__*35___3_06*4\n4-4 \n7UE\n4_7_*_ 58.3 \nCB9_$.)0._33UBAX_ZLML_\nPHIP_FE_RY ACTIVITIES IN THE SEA Z_KEBQBQ_XE_KEKQBH_3_3_0_80__8)$_8)2!+7,__7_:34=35348 ______'___+09,20+_!_02._*_PLBEQ_LOWINGM_ZFHJ_TUSSN - Q_MH_J_QQQH_HSOEMB_PSSN - 012 02'00''9___9\n5'12**_089__.6_8_1:_104'_/)45__06''E_9,__6_GK_B_AGE WM_FQ_GEBKENB3_!_02_9,,888__\n-/-_88\n0222__.____.49,(1__3(7-++_-_1$(_(\n__.9,._:19_)(6)__+876__!_$_/_6+1__1+1!+0+(3=3::_8-__X_7_8__8_4(+_!)_!))!_,!5)!55!5_!5FTFTNS_V__35(0 APRIL 2026 FROM LOCAL _IME 07.00 TO 23.00, __!''.)0._(33UBAXDZ_IRING MILITARY ACTIVITMFFPJ__JPMYPMKRBQPK_KBPBEC__Z_ING Y_P_MGZMD_OAST NEAR SANTA MARINELLA (RM), INCLUDING\nIN THE AREA NAME 'E_DZM\nP_UJMGFMHDPMM_FYXCSYMWP_HDMJP_HZ_M\nY_HONGCHF_SM_FSPJMFH_B__WG_L_Y__WSG_\nF_FU__A RW PPSPPSSGM_M_ISRWSSE.\nTRANSIT, ANCHORAGEMWM_FJDF_MYPM_YZDFLFHPW_\nNNNONNIIIKU __\nZCZC",
    "clean_text": "ZCZC RA86\n022250.____.YM\n_LA MADDALENA RADIO\n\nCOASTAL WARNING 019/26 APR 02\nTYRRHENIAN SEA TARQUINIA COAST (VT)\nDAYS 3,7,8,9,10,13,14,15,16,17,20,21,22,23,24,27,28,29 AND 30\nAPRIL 2026 FROM LOCAL TIME 07 00 UNTIL HALF AN HOUR AFTER SUNSET,\nWILL BE CARRIED OUT A FIRING MILITARY ACTIVITIES IN THE SEA AREA\nNEAR 'PIAN DI SPILLE' FIRING RANGE ON THE COAST NEAR TARQUINIA\n(VT), INCLUDING INSIDE THE AREAS DENOMINATED 'ECHO 304' AND 'R42',\nBOUNDED BY THE FOLLOWING POINTS:\nA 42 16'14 N 011 39'52 E\nB 42 16'45 N 011 37'13 E\nC 42 14'35 N 011 37'52 E\nD 42 13'26 N 011 40'00 E\nE 42 15'02 N 011 40'45 E\nTRANSIT, ANCHZ_AGE AND FISHING AREM_YZDFLFHPWMONONONNIIII___P__G!2$$_31$2/(-04 2_\n:+*_'._6_3_4_/0_:0+_'3- - CIVIT\nP_XW:_\nRYF__AYS\nUKPJX_MLMNXEMDXPXMC__8/58\n_!5__4__*35___3_06*4\n4-4\n7UE\n4_7_*_ 58.3\nCB9_$.)0._33UBAX_ZLML_\nPHIP_FE_RY ACTIVITIES IN THE SEA Z_KEBQBQ_XE_KEKQBH_3_3_0_80__8)$_8)2!+7,__7_:34=35348 ______'___+09,20+_!_02._*_PLBEQ_LOWINGM_ZFHJ_TUSSN - Q_MH_J_QQQH_HSOEMB_PSSN - 012 02'00''9___9\n5'12**_089__.6_8_1:_104'_/)45__06''E_9,__6_GK_B_AGE WM_FQ_GEBKENB3_!_02_9,,888__\n-/-_88\n0222__.____.49,(1__3(7-++_-_1$(_(\n__.9,._:19_)(6)__+876__!_$_/_6+1__1+1!+0+(3=3::_8-__X_7_8__8_4(+_!)_!))!_,!5)!55!5_!5FTFTNS_V__35(0 APRIL 2026 FROM LOCAL _IME 07.00 TO 23.00, __!''.)0._(33UBAXDZ_IRING MILITARY ACTIVITMFFPJ__JPMYPMKRBQPK_KBPBEC__Z_ING Y_P_MGZMD_OAST NEAR SANTA MARINELLA (RM), INCLUDING\nIN THE AREA NAME 'E_DZM\nP_UJMGFMHDPMM_FYXCSYMWP_HDMJP_HZ_M\nY_HONGCHF_SM_FSPJMFH_B__WG_L_Y__WSG_\nF_FU__A RW PPSPPSSGM_M_ISRWSSE.\nTRANSIT, ANCHORAGEMWM_FJDF_MYPM_YZDFLFHPW_\nNNNONNIIIKU __\nZCZC",
    "resolved_station_name": "La Maddalena",
    "resolved_country": "Italy",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Tyrrhenian Sea and Sardinia approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "LA MADDALENA"
    ],
    "display_region_heading": "Italy - Tyrrhenian Sea and Sardinia approaches",
    "display_region_label": "La Maddalena, Italy",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Italy - Tyrrhenian Sea and Sardinia approaches. Readable text says: Transit, anchz age and fishing arem yzdflfhpwmonononniiii p g!2$$ 31$2/(-04 2. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Transit, anchz age and fishing arem yzdflfhpwmonononniiii p g!2$$ 31$2/(-04 2",
      "Will be carried out a firing military activities in the sea area",
      "9,. :19 )(6) 876 ! $ / 6 1 1 1! 0 (3 3:: 8- x 7 8 8 4( !) !))! ,!5)!55!5 !5ftftns v 35(0 april 2026 from local ime 07.00 to 23.00, !''.)0. (33ubaxdz iring military activitmffpj jpmypmkrbqpk kbpbec z ing y p mgzmd oast near santa marinella (rm), including"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 97,
    "heading": "2026-04-03 01:44:44 AREA: T",
    "published_at": "2026-04-03 01:44:44",
    "area": "T",
    "message_id": "",
    "text": "Z_ZCHMWMYP_II_T SIGHTINGS TO MALINHEAD COASTGUARD ON M,\n7 !7__$-.+6./$\n _9,9,_2__0 1040 UTC MARCH 2026\n\nEJM\nNNNN",
    "clean_text": "Z_ZCHMWMYP_II_T SIGHTINGS TO MALINHEAD COASTGUARD ON M,\n7 !7__$-.+6./$\n_9,9,_2__0 1040 UTC MARCH 2026\n\nEJM\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: Z zchmwmyp ii t sightings to malinhead coastguard on m. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Z zchmwmyp ii t sightings to malinhead coastguard on m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 98,
    "heading": "2026-04-03 01:41:07 AREA: Q",
    "published_at": "2026-04-03 01:41:07",
    "area": "Q",
    "message_id": "QE81",
    "text": "ZCZC QE81\n\n022240 UTC APR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSU D BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 02/04/2026 AT 0000 UTC\n\n_. * __8\n'0\n, 28,$ 35-70, ON CENTRAL/DTGPYMWYFHF_MSJZMM_PH_C_MGVHHGLPSZUM_PS_LFHMC_MH_M_ZH_GVH_BM_ORE OF CENTRAL \nADRIA\n_C SEA IME MOANING LOC 5. OFFSHORE SLIGHT _ZJ_M_ZYMJCWWPMJHZYBJ_BON_N_SYNOPSIS:\nA DEEP_LO_ O\nWA TOE IONIAN SEA IS FILLING UP AND M_Z_TO THE E, RIDGE OF HIGH INTSF FM THE N.\n\n3. FO_KMA__MFOR TZKT. ELSEWHERU _KU_=3)3__5 ,3 1--36 KT. ELASAHS___UQKN O_FSHO_EARN IN THE _O_B__QJT.!(3_+A_G\nZ_GKD__J\n_MGQOBGRBEE_U_KF_M_S\n_DGLUZZZOJK_EBK__:\nNE, OFFSHOL_\nZLLO N\n_KA_CM_DHZC UH TO 2) _(\n.,\n_97$6, /0+_=__943 -)'9 09'' 5-S_WRS. TOWARDS EV_U\nNKIXK_LEARI\nG.NNNN",
    "clean_text": "ZCZC QE81\n\n022240 UTC APR 26\nSPLIT RADIO\n\nWEATHER BULLETIN FOR ADRIATIC ISSU D BY THE MARINE METEOROLOGICAL CENTER SPLIT ON 02/04/2026 AT 0000 UTC\n\n_. * __8\n'0\n, 28,$ 35-70, ON CENTRAL/DTGPYMWYFHF_MSJZMM_PH_C_MGVHHGLPSZUM_PS_LFHMC_MH_M_ZH_GVH_BM_ORE OF CENTRAL\nADRIA\n_C SEA IME MOANING LOC 5. OFFSHORE SLIGHT _ZJ_M_ZYMJCWWPMJHZYBJ_BON_N_SYNOPSIS:\nA DEEP_LO_ O\nWA TOE IONIAN SEA IS FILLING UP AND M_Z_TO THE E, RIDGE OF HIGH INTSF FM THE N.\n\n3. FO_KMA__MFOR TZKT. ELSEWHERU _KU_=3)3__5 ,3 1--36 KT. ELASAHS___UQKN O_FSHO_EARN IN THE _O_B__QJT.!(3_+A_G\nZ_GKD__J\n_MGQOBGRBEE_U_KF_M_S\n_DGLUZZZOJK_EBK__:\nNE, OFFSHOL_\nZLLO N\n_KA_CM_DHZC UH TO 2) _(\n.,\n_97$6, /0+_=__943 -)'9 09'' 5-S_WRS. TOWARDS EV_U\nNKIXK_LEARI\nG.NNNN",
    "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: Weather bulletin for adriatic issu d by the marine meteorological center split on 02/04/2026 at 0000 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Weather bulletin for adriatic issu d by the marine meteorological center split on 02/04/2026 at 0000 utc",
      "C sea ime moaning loc 5. offshore slight zj m zymjcwwpmjhzybj bon n synopsis",
      "Wa toe ionian sea is filling up and m z to the e, ridge of high intsf fm the n"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 99,
    "heading": "2026-04-03 01:39:27 AREA: Q",
    "published_at": "2026-04-03 01:39:27",
    "area": "Q",
    "message_id": "QE43",
    "text": "ZCZC QE43\nMALIN HEAD RADIO\n\nSECURITE\nHIGH SRAS BULLETIN FOR METAREA 1\nISSUED J_ S_\nLD_HTC ON THURSDAY 02 APRIL 2026 FOR THE PERIOD 2000 UTC ONML___SDAY 02 APRIL UNTIL 2000 _TC ON FRIDAY T_APRIL 2026\nSTORM WARNING\nAT 0212000TC, LOW ____7+:+: 1-05\n02226..____.YM\n_SPLIT RADIO\n\nNAVIGATIONAL WNG. NR.: 67/2026\n\nNORTHERN ADRIATIC - PULA PORT\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIV_ DEVICE F_M\nF_F_HEM_YYKH_H_B/)/,:3///__,BHLKO3:$_-BHK_ZHDPYM_HF\nFHFPJMFM_ H_GBPHPYJMYWFCJM_YZB__LQ_!+._6_!_02_\n\nNNNN",
    "clean_text": "ZCZC QE43\nMALIN HEAD RADIO\n\nSECURITE\nHIGH SRAS BULLETIN FOR METAREA 1\nISSUED J_ S_\nLD_HTC ON THURSDAY 02 APRIL 2026 FOR THE PERIOD 2000 UTC ONML___SDAY 02 APRIL UNTIL 2000 _TC ON FRIDAY T_APRIL 2026\nSTORM WARNING\nAT 0212000TC, LOW ____7+:+: 1-05\n02226..____.YM\n_SPLIT RADIO\n\nNAVIGATIONAL WNG. NR.: 67/2026\n\nNORTHERN ADRIATIC - PULA PORT\nCHART: 100-16\n\nPULA PORT, BREAKWATER, EXPLOSIV_ DEVICE F_M\nF_F_HEM_YYKH_H_B/)/,:3///__,BHLKO3:$_-BHK_ZHDPYM_HF\nFHFPJMFM_ H_GBPHPYJMYWFCJM_YZB__LQ_!+._6_!_02_\n\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": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Croatia - Adriatic Sea. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Pula port, breakwater, explosiv device f m",
      "Ld htc on thursday 02 april 2026 for the period 2000 utc onml sday 02 april until 2000 tc on friday t april 2026",
      "Storm warning"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 103,
    "heading": "2026-04-03 01:30:28 AREA: P",
    "published_at": "2026-04-03 01:30:28",
    "area": "P",
    "message_id": "PA44",
    "text": "ZCZC PA44\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF4 UNLIT\n\nHOLLANDSE KUST ZUID\n52-19.2N 004-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52-11.4N 004-00.9PMPML__\nG__EV_GG___GK_V_3) .'8 302/25\n\nNNNN",
    "clean_text": "ZCZC PA44\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF4 UNLIT\n\nHOLLANDSE KUST ZUID\n52-19.2N 004-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52-11.4N 004-00.9PMPML__\nG__EV_GG___GK_V_3) .'8 302/25\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": "regional-context",
    "resolved_match_terms": [
      "NORTHSEA"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. This is a weather bulletin; readable sections mention fog across the covered waters.",
    "decoded_highlights": [
      "52-40.3n 004-09.8e hni4 foghorn inoperative",
      "The following wind turbines have defects",
      "52-44.9n 004-12.2e hnf4 unlit"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 104,
    "heading": "2026-04-03 01:29:56 AREA: P",
    "published_at": "2026-04-03 01:29:56",
    "area": "P",
    "message_id": "PB28",
    "text": "ZCZC PB28\n021938 UTC APR 26\nGALEWARNING, 02 APR 19:31 UTC.\n,_2+_. HUMBER. THAMES.\nSOUTHWEST 7.\nGERMAN BIGHT. DOVER.\nNO WARNING.\n\nEND OF GALEWARNING\n\nNNNN",
    "clean_text": "ZCZC PB28\n021938 UTC APR 26\nGALEWARNING, 02 APR 19:31 UTC.\n,_2+_. HUMBER. THAMES.\nSOUTHWEST 7.\nGERMAN BIGHT. 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: Galewarning, 02 apr 19:31 utc.",
    "decoded_highlights": [
      "Galewarning, 02 apr 19:31 utc",
      "No warning",
      "End of galewarning"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 105,
    "heading": "2026-04-03 01:29:00 AREA: O",
    "published_at": "2026-04-03 01:29:00",
    "area": "O",
    "message_id": "OE03",
    "text": "ZCZC OE03\nMALTARADIO MARINE FORECAST YZ_\nUT EMGHZM_PTYMG_H_ONUYJ_G_DPMUJUM_F_MB_MY__DMS_M_TO S OF AREA\nWX- RATHER CLOUDY SHOWERS \nVIS- GOOD BEC MOD H_M_ZZYMFMJDZ_PYJON_W\nMGUU_\n__.__+.*.+_.60.7__\n:._)0/.\n_9,_*0_._6+:_$._+_.6_:_$._+._06_.6_:_$._+.*.+93_(_3))- LOW SW\nNNNN",
    "clean_text": "ZCZC OE03\nMALTARADIO MARINE FORECAST YZ_\nUT EMGHZM_PTYMG_H_ONUYJ_G_DPMUJUM_F_MB_MY__DMS_M_TO S OF AREA\nWX- RATHER CLOUDY SHOWERS\nVIS- GOOD BEC MOD H_M_ZZYMFMJDZ_PYJON_W\nMGUU_\n__.__+.*.+_.60.7__\n:._)0/.\n_9,_*0_._6+:_$._+_.6_:_$._+._06_.6_:_$._+.*.+93_(_3))- LOW SW\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code O. Readable text says: Wx- rather cloudy showers. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wx- rather cloudy showers",
      "Maltaradio marine forecast yz",
      "Vis- good bec mod h m zzymfmjdz pyjon w"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 106,
    "heading": "2026-04-03 01:27:52 AREA: O",
    "published_at": "2026-04-03 01:27:52",
    "area": "O",
    "message_id": "OD71",
    "text": "ZCZC OD71\nSAR CASE 374\n\nWE INFORM YOU THAT THIS MRCC IS SEARCHING FOR 3 PEOPLE OVEOVVA_OLLEN FROM THE MIGRANTS RUBBER BOAT. THE LAST KNOWN POSN IS 34-06N 012-50E ON 1ST APRIL AT APPROX 0112UTC. PLEASE KEEP A SHARP LOOK OUT AND R_T ANY POSSIBLE SIGHTING TOT HE FOLLOWING COMPETEHMCHDZYFHE_TEL - 00218910349739 - 00218214449149\nFAX - 0021821360_8\n__.-8) - LMRCC.1(AT)MOD.GOV.LY\nNNNN",
    "clean_text": "ZCZC OD71\nSAR CASE 374\n\nWE INFORM YOU THAT THIS MRCC IS SEARCHING FOR 3 PEOPLE OVEOVVA_OLLEN FROM THE MIGRANTS RUBBER BOAT. THE LAST KNOWN POSN IS 34-06N 012-50E ON 1ST APRIL AT APPROX 0112UTC. PLEASE KEEP A SHARP LOOK OUT AND R_T ANY POSSIBLE SIGHTING TOT HE FOLLOWING COMPETEHMCHDZYFHE_TEL - 00218910349739 - 00218214449149\nFAX - 0021821360_8\n__.-8) - LMRCC.1(AT)MOD.GOV.LY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "search and rescue message",
    "subject_code": "D",
    "decoded_summary": "search and rescue message for Unresolved B1 code O. Readable text indicates a search-and-rescue related notice.",
    "decoded_highlights": [
      "We inform you that this mrcc is searching for 3 people oveovva ollen from the migrants rubber boat. the last known posn is 34-06n 012-50e on 1st april at approx 0112utc. please keep a sharp look out and r t any possible sighting tot he following competehmchdzyfhe tel - 00218910349739 - 00218214449149",
      "-8) - lmrcc.1(at)mod.gov.ly"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 107,
    "heading": "2026-04-03 01:27:06 AREA: O",
    "published_at": "2026-04-03 01:27:06",
    "area": "O",
    "message_id": "OA32",
    "text": "ZCZC OA32\nNAVIGATINAL WARNING NR19/26\n\nLOST ANCHOR AND CHAIN.\nCHAIN IS LANJ ALONG THE LINE FROM POINT A TO POINT B,\nFOUL AA_A - KEEP A SAFE DISTANCE \n_PZSN OF ANCHOR (POINHM_SMPHHC_N 014-19.,E\nPOSN OF ANCHOR (POINT B) 35-57.231N 014-19.096E\nNNNN",
    "clean_text": "ZCZC OA32\nNAVIGATINAL WARNING NR19/26\n\nLOST ANCHOR AND CHAIN.\nCHAIN IS LANJ ALONG THE LINE FROM POINT A TO POINT B,\nFOUL AA_A - KEEP A SAFE DISTANCE\n_PZSN OF ANCHOR (POINHM_SMPHHC_N 014-19.,E\nPOSN OF ANCHOR (POINT B) 35-57.231N 014-19.096E\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Posn of anchor (point b) 35-57.231n 014-19.096e.",
    "decoded_highlights": [
      "Posn of anchor (point b) 35-57.231n 014-19.096e",
      "Pzsn of anchor (poinhm smphhc n 014-19.,e",
      "Lost anchor and chain"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 108,
    "heading": "2026-04-03 01:26:06 AREA: O",
    "published_at": "2026-04-03 01:26:06",
    "area": "O",
    "message_id": "OD70",
    "text": "ZCZC OD70\nSAR CASE 36- \n\nWE INFORM YOU ABOUT THE PRESENCE OF A WOODEN BOAT WITH MIGRANTS ON BOARD, 3 ENGINE, THE LAST KNWON POSN 33-18N 012-58E AT 1910UTC OF 26 MARCH, COURSE NORTH, SPEED 6KTS. PLEASE KEEP A SHARP LOOKOUT AND REPORT ANY POSSIBLE SIGHTINGS TO THE FOLLOWINGONONHPSM_M_ K_FPYZCPZONGP_F_M_M\nS_S_.GOV.LY\nNNNN",
    "clean_text": "ZCZC OD70\nSAR CASE 36-\n\nWE INFORM YOU ABOUT THE PRESENCE OF A WOODEN BOAT WITH MIGRANTS ON BOARD, 3 ENGINE, THE LAST KNWON POSN 33-18N 012-58E AT 1910UTC OF 26 MARCH, COURSE NORTH, SPEED 6KTS. PLEASE KEEP A SHARP LOOKOUT AND REPORT ANY POSSIBLE SIGHTINGS TO THE FOLLOWINGONONHPSM_M_ K_FPYZCPZONGP_F_M_M\nS_S_.GOV.LY\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "search and rescue message",
    "subject_code": "D",
    "decoded_summary": "search and rescue message for Unresolved B1 code O. Readable text indicates a search-and-rescue related notice. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "We inform you about the presence of a wooden boat with migrants on board, 3 engine, the last knwon posn 33-18n 012-58e at 1910utc of 26 march, course north, speed 6kts. please keep a sharp lookout and report any possible sightings to the followingononhpsm m k fpyzcpzongp f m m"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 109,
    "heading": "2026-04-03 01:24:39 AREA: O",
    "published_at": "2026-04-03 01:24:39",
    "area": "O",
    "message_id": "OA31",
    "text": "ZCZC OA31\nCOASTAL WARNING NR 129/26 MAR 27\n\nST_ OF SICILY\nFROM A_YFUM_T TO JUNE 30TH 2026THE M/V EDT JANE (5BXW3 IMOV991411'\n__!'+_:9,$7:5 - _-_.F_PSFPMF_J_P_CJF_MMYP_ZH_S_MZPYHPWM_PDF_SP\nMGFMYPMLZCWPWMLEM_ZS_Z_FM_ZFHJ__ON__SMPC B G_M_AQRMWYUE\nB) 37-12.800N 011-14.583_\nC) 37-25.417N 011-42.717E\nD) 37-38.950N 012-32.133E\nE) 37-35.250N 012-3196_1.60,__00(_ _63:__._!!_.100E\nG) 37-00.600N 011-21.617E\nSHIPS IN TRANSIT PAY MAXIMUM ATTENTION OM_ A DISTANCE NOT LESS THAN 2R_E_\nZCZC",
    "clean_text": "ZCZC OA31\nCOASTAL WARNING NR 129/26 MAR 27\n\nST_ OF SICILY\nFROM A_YFUM_T TO JUNE 30TH 2026THE M/V EDT JANE (5BXW3 IMOV991411'\n__!'+_:9,$7:5 - _-_.F_PSFPMF_J_P_CJF_MMYP_ZH_S_MZPYHPWM_PDF_SP\nMGFMYPMLZCWPWMLEM_ZS_Z_FM_ZFHJ__ON__SMPC B G_M_AQRMWYUE\nB) 37-12.800N 011-14.583_\nC) 37-25.417N 011-42.717E\nD) 37-38.950N 012-32.133E\nE) 37-35.250N 012-3196_1.60,__00(_ _63:__._!!_.100E\nG) 37-00.600N 011-21.617E\nSHIPS IN TRANSIT PAY MAXIMUM ATTENTION OM_ A DISTANCE NOT LESS THAN 2R_E_\nZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code O. Readable text says: Coastal warning nr 129/26 mar 27. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Coastal warning nr 129/26 mar 27",
      "From a yfum t to june 30th 2026the m/v edt jane (5bxw3 imov991411'",
      "Ships in transit pay maximum attention om a distance not less than 2r e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 110,
    "heading": "2026-04-03 01:23:25 AREA: O",
    "published_at": "2026-04-03 01:23:25",
    "area": "O",
    "message_id": "OD69",
    "text": "ZCZC OD69\nFM - FBY_XM_Z_PM_KBH$((_(___29,_+.''.*$!_*._6*!_!_._$0.609,9,*6._*0.._0:09,9,__0.__+6_._+:.)+:_._$0._60*0_0.+_..6:))06.)+_.!.2!*_60**._!_$.)+:_.\n:___ZL\n_MGHDPMSJHM_ZUMZJ_M_PY__ 012-08E AND DATESBACK TO 30 MAR 2122 UTC.\nPLEASE KEEP A SHARP LOOKOUT AND REPORT ANY POSSIBLE SIGHTINGS TO THJZC* 5_3 9_\nTEL - 00218910349739 - 00_ 97 8 /7_\nFAX - 00218213606868\n___!_._._'_6//\n_ =____'__+2\n___\n__'39,9,,888(\n_7_7 \nZCZC",
    "clean_text": "ZCZC OD69\nFM - FBY_XM_Z_PM_KBH$((_(___29,_+.''.*$!_*._6*!_!_._$0.609,9,*6._*0.._0:09,9,__0.__+6_._+:.)+:_._$0._60*0_0.+_..6:))06.)+_.!.2!*_60**._!_$.)+:_.\n:___ZL\n_MGHDPMSJHM_ZUMZJ_M_PY__ 012-08E AND DATESBACK TO 30 MAR 2122 UTC.\nPLEASE KEEP A SHARP LOOKOUT AND REPORT ANY POSSIBLE SIGHTINGS TO THJZC* 5_3 9_\nTEL - 00218910349739 - 00_ 97 8 /7_\nFAX - 00218213606868\n___!_._._'_6//\n_ =____'__+2\n___\n__'39,9,,888(\n_7_7\nZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "search and rescue message",
    "subject_code": "D",
    "decoded_summary": "search and rescue message for Unresolved B1 code O. Readable text says: Mghdpmsjhm zumzj m py 012-08e and datesback to 30 mar 2122 utc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mghdpmsjhm zumzj m py 012-08e and datesback to 30 mar 2122 utc",
      "Please keep a sharp lookout and report any possible sightings to thjzc 5 3 9"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 111,
    "heading": "2026-04-03 01:22:26 AREA: O",
    "published_at": "2026-04-03 01:22:26",
    "area": "O",
    "message_id": "",
    "text": "ZCZC OE__S/V OCEAN JOY SAILING FROM MALLORCA TOWRDS CAGLIARI (SARDINIA) LAST KNOWN POSN 38-38N 003-23E AND REFERS EN_BEF QX_X\nQ_OP__LMQL\nPYWQ UTC.LACK OF NEWS ABOUT THE SAILING VESSEL.ALL SHIPS TRANSITTING THE AREA ARE TO KEEP A SHARPLOOKOUT AND REPORT ANY SIGHTINGS TO ITALIAN COAST GUARD.\nTEL-00390659241450659084_0+9,_!_./.\n6_6:_67_\n,,,,\n\n\nZCZC",
    "clean_text": "ZCZC OE__S/V OCEAN JOY SAILING FROM MALLORCA TOWRDS CAGLIARI (SARDINIA) LAST KNOWN POSN 38-38N 003-23E AND REFERS EN_BEF QX_X\nQ_OP__LMQL\nPYWQ UTC.LACK OF NEWS ABOUT THE SAILING VESSEL.ALL SHIPS TRANSITTING THE AREA ARE TO KEEP A SHARPLOOKOUT AND REPORT ANY SIGHTINGS TO ITALIAN COAST GUARD.\nTEL-00390659241450659084_0+9,_!_./.\n6_6:_67_\n,,,,\n\nZCZC",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code O. Readable text says: Pywq utc.lack of news about the sailing vessel.all ships transitting the area are to keep a sharplookout and report any sightings to italian coast guard. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Pywq utc.lack of news about the sailing vessel.all ships transitting the area are to keep a sharplookout and report any sightings to italian coast guard"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 112,
    "heading": "2026-04-03 01:01:11 AREA: M",
    "published_at": "2026-04-03 01:01:11",
    "area": "M",
    "message_id": "MA18",
    "text": "ZCZC MA18\n01086'.___/._6NOCWEGIAN_NAV. WAEB_RHCGC_Z_AAALZ__ZZ__\n _REY _M_JDWWS_E_TZEY\n_ENF_K_U\n\nKORVAXDT_Z_AM_R_K\n\n_U___AU_CZC OT_8\n_9_5_-5_5_577_7_7:___. CANCE__W_PUXWY KNA__P_M_\nNNNN",
    "clean_text": "ZCZC MA18\n01086'.___/._6NOCWEGIAN_NAV. WAEB_RHCGC_Z_AAALZ__ZZ__\n_REY _M_JDWWS_E_TZEY\n_ENF_K_U\n\nKORVAXDT_Z_AM_R_K\n\n_U___AU_CZC OT_8\n_9_5_-5_5_577_7_7:___. CANCE__W_PUXWY KNA__P_M_\nNNNN",
    "display_region_heading": "Unresolved B1 code M",
    "display_region_label": "B1 code M",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code M. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 114,
    "heading": "2026-04-03 00:56:18 AREA: L",
    "published_at": "2026-04-03 00:56:18",
    "area": "L",
    "message_id": "LE97",
    "text": "ZCZC LE97\n022000 UTC APR 269\n'!_+*.62!+\n5__0\n$06._+60_*_9,$6_._WARNING NR 257\nPART 2\nGENERAL SYNOPSIS _H_QT UTC\nEXTENDED LOW WITH FRONTAL ACTIVITY AND\nCENTRE 99__+_06.)++_.!*.0_MUSH_CENTRE\n1000 OVER S IONIO BY 03/06 UTXLOONGYPSHF_PSEMDX_RES 1010 OVER NW\nBALKANS\nPART 3\nFCST UP TO 03 APRIL 22 UTC\nSAMOS SEA\nS SWT6 OR 7 SOON S 5 OR 6. MOD. LOC VERY\nPOOR. THUNDERSTORM\nSARONIKOS\nS SW 5 OR 6. MOD. LOC POOR. CHANCE OF\nTHUNDERSTORM\nSOUTH EVVOIKOS\nS SW 6_ __).\n=_4 5. MOD. LOC PLOR.\nCHANC _OF_THUNDERSTORM\nKAFIREAS STRAIT\nS SW 7 OR 8 VERY SOON 6 OR 7. ROUGH.\nPOOR. CHANCE OFMHDCWPYJHZY_ONXP_YSM_P_PONJMJUM_EMGZYM_CMGWMJMZ.__0 7 OR 8. MOD\n ZZ_YZCD_BMG_Z_MZZ__CE OF\nTHUNDERSTORM\nNORTHWEST AEGEAN\nCYFL_\n_U_AXAXML_PPONG_CSJ_Y_JYWFZONG_S_M_YF_MHDCYJWEM\n_M__YF_M\n_ HEMG_H_FPJM_YZBYHEM_A_FCNONG_FYMFJSPONGJZCHDPJHPYSEM_S_M_ZYXPM\nFMG_ZHFCF_ONGONNIKKKKKKKKKKKKKKK_AIR ISLE\nSOUTHEASTERLY GALE FORCE 8 CONTINUING\nNNNN",
    "clean_text": "ZCZC LE97\n022000 UTC APR 269\n'!_+*.62!+\n5__0\n$06._+60_*_9,$6_._WARNING NR 257\nPART 2\nGENERAL SYNOPSIS _H_QT UTC\nEXTENDED LOW WITH FRONTAL ACTIVITY AND\nCENTRE 99__+_06.)++_.!*.0_MUSH_CENTRE\n1000 OVER S IONIO BY 03/06 UTXLOONGYPSHF_PSEMDX_RES 1010 OVER NW\nBALKANS\nPART 3\nFCST UP TO 03 APRIL 22 UTC\nSAMOS SEA\nS SWT6 OR 7 SOON S 5 OR 6. MOD. LOC VERY\nPOOR. THUNDERSTORM\nSARONIKOS\nS SW 5 OR 6. MOD. LOC POOR. CHANCE OF\nTHUNDERSTORM\nSOUTH EVVOIKOS\nS SW 6_ __).\n=_4 5. MOD. LOC PLOR.\nCHANC _OF_THUNDERSTORM\nKAFIREAS STRAIT\nS SW 7 OR 8 VERY SOON 6 OR 7. ROUGH.\nPOOR. CHANCE OFMHDCWPYJHZY_ONXP_YSM_P_PONJMJUM_EMGZYM_CMGWMJMZ.__0 7 OR 8. MOD\nZZ_YZCD_BMG_Z_MZZ__CE OF\nTHUNDERSTORM\nNORTHWEST AEGEAN\nCYFL_\n_U_AXAXML_PPONG_CSJ_Y_JYWFZONG_S_M_YF_MHDCYJWEM\n_M__YF_M\n_ HEMG_H_FPJM_YZBYHEM_A_FCNONG_FYMFJSPONGJZCHDPJHPYSEM_S_M_ZYXPM\nFMG_ZHFCF_ONGONNIKKKKKKKKKKKKKKK_AIR ISLE\nSOUTHEASTERLY GALE FORCE 8 CONTINUING\nNNNN",
    "resolved_station_name": "Limnos",
    "resolved_country": "Greece",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "North Aegean",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "AEGEAN"
    ],
    "display_region_heading": "Greece - North Aegean",
    "display_region_label": "Limnos, Greece",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Greece - North Aegean. Readable text says: Poor. thunderstorm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Poor. thunderstorm",
      "Thunderstorm",
      "Chanc of thunderstorm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 116,
    "heading": "2026-04-03 00:46:00 AREA: K",
    "published_at": "2026-04-03 00:46:00",
    "area": "K",
    "message_id": "KE97",
    "text": "ZCZC KE97\n022000 UTC APR 26\nKERKYRA RADIO/WEATHER FORECAST\nPART 1\nWARNING NR 257\nPART 2\nGENERAL SYNOPSIS 02-04-26/15 UTC\nEXTENDED LOW WITH FRONTAL ACTIVITY AND\nCENTRE 991 OVER BOOT IS EXP WITH CENTRE\n1000 OVER S IONIO BY 03= $.___/_0'_!_0'3.$!_$.YPJJCYPJM\n  M_Z_PYV_ONLS_JON_Y_M_PO_G_ UP TO 03 APRIL 22 UTC\nSOUTH ADRIATIC\nN NE 4 OR 5. MOD. LOC POOR. THUNDERSTORM\nNORTH IONIO\nCYCLONIC 4 OR 5. MOD OVER S UP TO ROUGH.\nLOC POOR. THUNDERSTORM\nSOUTH IONIO\nN OF 37.00 W SW 6 OR 7. SVZ.__:__2 '2\n8 SOON W 7 OR 8. ROUGH OR VERY ROUGH_9 5)9: =346 0994_ THUNDERSTORM\nPATRAIKOS\nVRB 4. SLGT. LOC PZO_. THUNDERSTORM\nKORINTHIAKOS\nVRB 3 OR VERY SOON W N\n4. S_GT. LOC\nPOOR. CHANCE OF THUNDERSTORM\nKITHIRA SEA\nSW 8 OR 9 SOON W SW. VERY ROUGH. LOC\nVERY POOR. THUNDERSTORM\nOUTLOOK FOR THE NXT 12 HOURS\nGALE FORCE WINDS NOT EXPNNNN",
    "clean_text": "ZCZC KE97\n022000 UTC APR 26\nKERKYRA RADIO/WEATHER FORECAST\nPART 1\nWARNING NR 257\nPART 2\nGENERAL SYNOPSIS 02-04-26/15 UTC\nEXTENDED LOW WITH FRONTAL ACTIVITY AND\nCENTRE 991 OVER BOOT IS EXP WITH CENTRE\n1000 OVER S IONIO BY 03= $.___/_0'_!_0'3.$!_$.YPJJCYPJM\nM_Z_PYV_ONLS_JON_Y_M_PO_G_ UP TO 03 APRIL 22 UTC\nSOUTH ADRIATIC\nN NE 4 OR 5. MOD. LOC POOR. THUNDERSTORM\nNORTH IONIO\nCYCLONIC 4 OR 5. MOD OVER S UP TO ROUGH.\nLOC POOR. THUNDERSTORM\nSOUTH IONIO\nN OF 37.00 W SW 6 OR 7. SVZ.__:__2 '2\n8 SOON W 7 OR 8. ROUGH OR VERY ROUGH_9 5)9: =346 0994_ THUNDERSTORM\nPATRAIKOS\nVRB 4. SLGT. LOC PZO_. THUNDERSTORM\nKORINTHIAKOS\nVRB 3 OR VERY SOON W N\n4. S_GT. LOC\nPOOR. CHANCE OF THUNDERSTORM\nKITHIRA SEA\nSW 8 OR 9 SOON W SW. VERY ROUGH. LOC\nVERY POOR. THUNDERSTORM\nOUTLOOK FOR THE NXT 12 HOURS\nGALE FORCE WINDS NOT EXPNNNN",
    "resolved_station_name": "Kerkyra",
    "resolved_country": "Greece",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Ionian Sea and western Greece",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "KERKYRA"
    ],
    "display_region_heading": "Greece - Ionian Sea and western Greece",
    "display_region_label": "Kerkyra, Greece",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Greece - Ionian Sea and western Greece. This is a weather bulletin covering Kithira sea. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "N ne 4 or 5. mod. loc poor. thunderstorm",
      "8 soon w 7 or 8. rough or very rough 9 5)9: 346 0994 thunderstorm",
      "Vrb 4. slgt. loc pzo . thunderstorm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 117,
    "heading": "2026-04-03 00:40:49 AREA: K",
    "published_at": "2026-04-03 00:40:49",
    "area": "K",
    "message_id": "KA28",
    "text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKJO_G_LSPMS_F_O_KD-___4_)9__$_____.2_: .-4 26\nUNT_FBSY_XILUFUO\nNO FISHING, TRAWLING, DREDGING, ANCHORINGMWMWF_FM_FHDFIIICFJMYPONGYPML_XUUO_Q_TPAQPMIRN 001-29.44E\n5_!07_13.61N 001-21.02E\n50-15.86_ 001-19.41E\n50-19.01N 001-12.02E\nN\nH Z_CYGM\n_ Y_CCGPON\nH_UB  GMIIKK\n Y_ZPGPON\nH AZ_QVBONG.:.:)31___GW_ZW__ZYKALR__LON.::._(___9,,888 +: (-\n_-_\n=.:6_\n._$06)+:6.\n735739,_2+_06._._2*_._/$0_0*$+(71___)(93:$_____3'\nAIS TYJ_FHHPYMZCHMZ_MJ_Y\nF__M\nMGSFDDNO_SFHONGLZCPPMLJJCYPSSPON\nH__PUBFG_\n___CBF_GPONG\nF_HPMIII UFH_M_CHFZONGONNIKKKKKKKKKKKKKKKGQOHH1ZRELATIVELY HIGH PRES_CGPJ_\n  M_Z_PYMLCS_\nP_S_ELITA\nCONTINUING TO 03/07 UTC\nNW 7 OR 8\nGABES\nCONTINUING TO 03/04 UTC\nW NW 7 OR 8\nSIDRA\nCONTINUING AT LEAST TO 03/10 UTC\nW 8 AND FM 03/07 UTC 7 OR 8\nS IO_O_(__!:!_.__._PT _MG_H_ONUMJUMQJ_M_K_,\n_TCMGCHXMUM_CMGZYM_FO_G_FHDFYMJPON_ZHFCF_MHMSPJHMHZM_PT _MG_H_O_JUM_FM_ZY__TC W SW\nSW KRITIKO\nCONTINUING AT LEAST TO 03/10 UTC\nW SW 8 OR 9\nSE KRITIKO IERAPETRA\nW OF 27.30\nCONTINUING AT LEAST TO 03/10 UTC\nW SW 8\nW KRITIKO\nW OF 24.00\nCONTINUING AT LEAST TO 03/10 UTC\nSW 8 OR 9\nW KRITIKO\nE OF 24.00\nCONTINUING TO 03_0 UTC\nSW 7 OR 8\nSW AEGEAN\nNVO\n-9\n9_9.\n__8_\n8_\n8_ 03/08 UTC\nSW 7 OR 8\nSW AEGEAN\nS OF 36.40\nCONTINUING A_ LEAST TO 03/10 UTC\nSW 8 OR 9\nSE AEGEAN C_AMFZON_MZ._76___9,__+_!:!_._.'0*_._+.__05_75:\n' '2 8 OR 9 AND N OF 36.50 7 ZZM_FONJNMP_PMF_YFZONPMZ._76___9,__+_!:!_._.'0*_._+._PT _MG_H_ONJMJUM_CMGZYM_FO_GV_FYPJMJHYFHON_ZHFCF_MH_M_PT_MG_H_ONJMJKM_MM_RB_____3(*_(EKU_L__ L__'_\n_9,58,78,_ 59 03/10 UTC\nS SW 7 OR 8\nNE AEGEAN\nE OF 25.10\nCONTINUING TO 03/01 UTC\nS 7 5+_.\n!9___6HDFZONJMZ.______9,__+_!:!_._.'0*_._-9GNHM9_.$__1:_MBH_RB_STELLORIZO SEA\nS O.\n__0)_7_$4$_+___: -5 )3-'5 59 03/10 UTC\nSW 7 ZY\nTSMNNN\n\nZCZC",
    "clean_text": "ZCZC KA28\nWIGHT - LARGE CAYEUX-SUR-MER\nWORKJO_G_LSPMS_F_O_KD-___4_)9__$_____.2_: .-4 26\nUNT_FBSY_XILUFUO\nNO FISHING, TRAWLING, DREDGING, ANCHORINGMWMWF_FM_FHDFIIICFJMYPONGYPML_XUUO_Q_TPAQPMIRN 001-29.44E\n5_!07_13.61N 001-21.02E\n50-15.86_ 001-19.41E\n50-19.01N 001-12.02E\nN\nH Z_CYGM\n_ Y_CCGPON\nH_UB GMIIKK\nY_ZPGPON\nH AZ_QVBONG.:.:)31___GW_ZW__ZYKALR__LON.::._(___9,,888 +: (-\n_-_\n=.:6_\n._$06)+:6.\n735739,_2+_06._._2*_._/$0_0*$+(71___)(93:$_____3'\nAIS TYJ_FHHPYMZCHMZ_MJ_Y\nF__M\nMGSFDDNO_SFHONGLZCPPMLJJCYPSSPON\nH__PUBFG_\n___CBF_GPONG\nF_HPMIII UFH_M_CHFZONGONNIKKKKKKKKKKKKKKKGQOHH1ZRELATIVELY HIGH PRES_CGPJ_\nM_Z_PYMLCS_\nP_S_ELITA\nCONTINUING TO 03/07 UTC\nNW 7 OR 8\nGABES\nCONTINUING TO 03/04 UTC\nW NW 7 OR 8\nSIDRA\nCONTINUING AT LEAST TO 03/10 UTC\nW 8 AND FM 03/07 UTC 7 OR 8\nS IO_O_(__!:!_.__._PT _MG_H_ONUMJUMQJ_M_K_,\n_TCMGCHXMUM_CMGZYM_FO_G_FHDFYMJPON_ZHFCF_MHMSPJHMHZM_PT _MG_H_O_JUM_FM_ZY__TC W SW\nSW KRITIKO\nCONTINUING AT LEAST TO 03/10 UTC\nW SW 8 OR 9\nSE KRITIKO IERAPETRA\nW OF 27.30\nCONTINUING AT LEAST TO 03/10 UTC\nW SW 8\nW KRITIKO\nW OF 24.00\nCONTINUING AT LEAST TO 03/10 UTC\nSW 8 OR 9\nW KRITIKO\nE OF 24.00\nCONTINUING TO 03_0 UTC\nSW 7 OR 8\nSW AEGEAN\nNVO\n-9\n9_9.\n__8_\n8_\n8_ 03/08 UTC\nSW 7 OR 8\nSW AEGEAN\nS OF 36.40\nCONTINUING A_ LEAST TO 03/10 UTC\nSW 8 OR 9\nSE AEGEAN C_AMFZON_MZ._76___9,__+_!:!_._.'0*_._+.__05_75:\n' '2 8 OR 9 AND N OF 36.50 7 ZZM_FONJNMP_PMF_YFZONPMZ._76___9,__+_!:!_._.'0*_._+._PT _MG_H_ONJMJUM_CMGZYM_FO_GV_FYPJMJHYFHON_ZHFCF_MH_M_PT_MG_H_ONJMJKM_MM_RB_____3(*_(EKU_L__ L__'_\n_9,58,78,_ 59 03/10 UTC\nS SW 7 OR 8\nNE AEGEAN\nE OF 25.10\nCONTINUING TO 03/01 UTC\nS 7 5+_.\n!9___6HDFZONJMZ.______9,__+_!:!_._.'0*_._-9GNHM9_.$__1:_MBH_RB_STELLORIZO SEA\nS O.\n__0)_7_$4$_+___: -5 )3-'5 59 03/10 UTC\nSW 7 ZY\nTSMNNN\n\nZCZC",
    "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-19.01N 001-12.02E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging, anchoringmwmwf fm fhdfiiicfjmypongypml xuuo q tpaqpmirn 001-29.44e",
      "Ais tyj fhhpymzchmz mj y",
      "F hpmiii ufh m chfzongonnikkkkkkkkkkkkkkkgqohh1zrelatively high pres cgpj"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 118,
    "heading": "2026-04-03 00:40:14 AREA: K",
    "published_at": "2026-04-03 00:40:14",
    "area": "K",
    "message_id": "KA29",
    "text": "ZCZC KA29\nAVURNAV C_E_LZCYM\nU_TU_ONGWZ_PYM_MGWJHM_XDPMPJHONGFWJMHZM\nFBHFZM_D_PJONGSFIII_ BUOY - LIGDHMCSFHONGLEZEM_FY_MJCWON\nH _U BUG_\n_U CBP_GPONG\nF_H_M_FH_M_CHFZONGONIII_ZCZC",
    "clean_text": "ZCZC KA29\nAVURNAV C_E_LZCYM\nU_TU_ONGWZ_PYM_MGWJHM_XDPMPJHONGFWJMHZM\nFBHFZM_D_PJONGSFIII_ BUOY - LIGDHMCSFHONGLEZEM_FY_MJCWON\nH _U BUG_\n_U CBP_GPONG\nF_H_M_FH_M_CHFZONGONIII_ZCZC",
    "display_region_heading": "Unresolved B1 code K",
    "display_region_label": "B1 code K",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code K. Readable text says: Fbhfzm d pjongsfiii buoy - ligdhmcsfhonglezem fy mjcwon. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Fbhfzm d pjongsfiii buoy - ligdhmcsfhonglezem fy mjcwon"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 119,
    "heading": "2026-04-03 00:19:00 AREA: T",
    "published_at": "2026-04-03 00:19:00",
    "area": "T",
    "message_id": "",
    "text": "ZCZC\nCZAZK_C__CU_ESKQJYA_K_Y DURISG OPERATIONS__,=__/_(___-17__7__8'_ ,-=_2-4, 06__2_ 53'975__4,7_____-_\n_-'__(*7:_.\n=_1'_7-7+:+: *$42-4, 0_5/26\nSHRP LZO_ZP\nFHO\nA HI_H-SFIIC__JJ_UWKDKQ*,_43.3 _-:\n!+97!9___9_\n_+9,,_:: 7:7 _(-7+:+  _-_89,\n,,,,\n______72+\nVI_A_P_FZMB_M\n ZWR_N_Z_AF_OQV_ OG__C_ZMGVHM_QLH\n__\nNG_YMYWFDRF _2/26\nFM_1_..6.202_,_\n_3 $48__8, =3''3)7__01-1+_2+*3__9_97_ 9:3-,9_4-0_8:\n8'5-,:3 __\n CBA'9!__+_.+,_0$.*+6=!$+1._.2$,2!*$!___2+:+: *-69\n010100 UTC JAN 26\nVARNA RADIO\n\nNAVWARN 29/26\nPORT OF BURGAS.\nHYDROTECHN_SV_\nF\nIOIE_ ARE CARRI _\nNOCHSWB_BE__D_DB_U_ATER INOIYP_FZ__ WINIOEN ___ WI__FM\nN_PUV_FF_FG_M_OERE\n42 28,833N 027 29,084E\nJRW WONWEQN 027 29,051E\n$2 29,293N 02_ 28,976E,\nIN THE\nSOUTHERN PART MARKED WITH A\n'SPECIAL BUO_' YEZLOW COLOR,WITH A\nFLASHING YELLOW LIGH\n_DW_TH COORDINATES:\n42 28,826N 027 29,006E.\nIT IS FORBIDDEN TO __E FOR OTHER\nVESSELS NOT ENGAGUD IN HYDROTECHN CDL\nACTIVITIES_ ALL VESSEL_ MANEUVERING IN\n_VO_ C\nI W_RQ\nI_HAIN AVMA_\nMUM\nSAFE Z_S__W__UG__ZCZC",
    "clean_text": "ZCZC\nCZAZK_C__CU_ESKQJYA_K_Y DURISG OPERATIONS__,=__/_(___-17__7__8'_ ,-=_2-4, 06__2_ 53'975__4,7_____-_\n_-'__(*7:_.\n=_1'_7-7+:+: *$42-4, 0_5/26\nSHRP LZO_ZP\nFHO\nA HI_H-SFIIC__JJ_UWKDKQ*,_43.3 _-:\n!+97!9___9_\n_+9,,_:: 7:7 _(-7+:+ _-_89,\n,,,,\n______72+\nVI_A_P_FZMB_M\nZWR_N_Z_AF_OQV_ OG__C_ZMGVHM_QLH\n__\nNG_YMYWFDRF _2/26\nFM_1_..6.202_,_\n_3 $48__8, =3''3)7__01-1+_2+*3__9_97_ 9:3-,9_4-0_8:\n8'5-,:3 __\nCBA'9!__+_.+,_0$.*+6=!$+1._.2$,2!*$!___2+:+: *-69\n010100 UTC JAN 26\nVARNA RADIO\n\nNAVWARN 29/26\nPORT OF BURGAS.\nHYDROTECHN_SV_\nF\nIOIE_ ARE CARRI _\nNOCHSWB_BE__D_DB_U_ATER INOIYP_FZ__ WINIOEN ___ WI__FM\nN_PUV_FF_FG_M_OERE\n42 28,833N 027 29,084E\nJRW WONWEQN 027 29,051E\n$2 29,293N 02_ 28,976E,\nIN THE\nSOUTHERN PART MARKED WITH A\n'SPECIAL BUO_' YEZLOW COLOR,WITH A\nFLASHING YELLOW LIGH\n_DW_TH COORDINATES:\n42 28,826N 027 29,006E.\nIT IS FORBIDDEN TO __E FOR OTHER\nVESSELS NOT ENGAGUD IN HYDROTECHN CDL\nACTIVITIES_ ALL VESSEL_ MANEUVERING IN\n_VO_ C\nI W_RQ\nI_HAIN AVMA_\nMUM\nSAFE Z_S__W__UG__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: 'special buo ' yezlow color,with a. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'special buo ' yezlow color,with a",
      "It is forbidden to e for other",
      "Vessels not engagud in hydrotechn cdl"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 120,
    "heading": "2026-04-03 00:18:09 AREA: J",
    "published_at": "2026-04-03 00:18:09",
    "area": "J",
    "message_id": "JA40",
    "text": "ZCZC JA40\n_01\n__*(_QY__.\n_._-'748,_ 8,!_4_.3,5' 3'5-_)8'_3$ \n4_0_6=_+_)_._0'_+_.'!+$__(+_(.7!$$(_8-)_V__M_RX__ZH__\n__ZCZC",
    "clean_text": "ZCZC JA40\n_01\n__*(_QY__.\n_._-'748,_ 8,!_4_.3,5' 3'5-_)8'_3$\n4_0_6=_+_)_._0'_+_.'!+$__(+_(.7!$$(_8-)_V__M_RX__ZH__\n__ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. 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": 121,
    "heading": "2026-04-03 00:11:52 AREA: H",
    "published_at": "2026-04-03 00:11:52",
    "area": "H",
    "message_id": "HA30",
    "text": "ZCZC HA30\n021330 UTC APR 26\nIRAKLEIO RADIO NAVWARN 253/26\nSARONIKOS GULF\nMINE HUNTING EXERCISE\nFROM 030730 UTC UNTIL _)_2_6''_04 26\nIN THE AREMLZCWPWMLE_EUATTMOPN 02370__GP_N_PC_HEB_G_WEAWEMPPE\n37-56.60N 023-27.90E\nLPCHHBZ_G_\n_WUMOPE\nAVOID CROSSING ABOVE AREA\nCANCE_ THIS MSG 031000 U\nC AMR 26NNNN",
    "clean_text": "ZCZC HA30\n021330 UTC APR 26\nIRAKLEIO RADIO NAVWARN 253/26\nSARONIKOS GULF\nMINE HUNTING EXERCISE\nFROM 030730 UTC UNTIL _)_2_6''_04 26\nIN THE AREMLZCWPWMLE_EUATTMOPN 02370__GP_N_PC_HEB_G_WEAWEMPPE\n37-56.60N 023-27.90E\nLPCHHBZ_G_\n_WUMOPE\nAVOID CROSSING ABOVE AREA\nCANCE_ THIS MSG 031000 U\nC AMR 26NNNN",
    "resolved_station_name": "Irakleio",
    "resolved_country": "Greece",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Eastern Mediterranean and Crete",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "IRAKLEIO"
    ],
    "display_region_heading": "Greece - Eastern Mediterranean and Crete",
    "display_region_label": "Irakleio, Greece",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Greece - Eastern Mediterranean and Crete. Readable text says: Saronikos gulf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Saronikos gulf",
      "Mine hunting exercise",
      "Irakleio radio navwarn 253/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 122,
    "heading": "2026-04-03 00:09:48 AREA: G",
    "published_at": "2026-04-03 00:09:48",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING9BERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING9BERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed",
      "Viking9beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 123,
    "heading": "2026-04-03 00:09:25 AREA: G",
    "published_at": "2026-04-03 00:09:25",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Dudgeon south buoy 53-12.5n 001-25.6e unlit.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25.6e unlit",
      "Dudgeon wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 124,
    "heading": "2026-04-03 00:08:48 AREA: G",
    "published_at": "2026-04-03 00:08:48",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND FARM. \n_574_8,3 !9_ '8_,-)' 8,9034-58=3: \nA. D01, 53-20.1N 0009_. \nB. S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29)_.9,_9,,888_ZCZC",
    "clean_text": "ZCZC GA61\nWZ 180/26\nHUMBER.\nRACE BANK WIND FARM.\n_574_8,3 !9_ '8_,-)' 8,9034-58=3:\nA. D01, 53-20.1N 0009_.\nB. S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29)_.9,_9,,888_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 2. cancel wz 58/26 (ga29) .9, 9,,888 zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wz 58/26 (ga29) .9, 9,,888 zczc",
      "Race bank wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 125,
    "heading": "2026-04-03 00:08:16 AREA: G",
    "published_at": "2026-04-03 00:08:16",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\n,_$:_)0__ORWELL GAS _IPSWMZYHD_PJH_Y_\n1. MET MAST 53-10.7N 002-5_3 7,)85 -,$ -)) ,-=-8$' 8,9034-58=3.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\n,_$:_)0__ORWELL GAS _IPSWMZYHD_PJH_Y_\n1. MET MAST 53-10.7N 002-5_3 7,)85 -,$ -)) ,-=-8$' 8,9034-58=3.\n2. CANCEL WZ 82/26 (GA42).\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. met mast 53-10.7n 002-5 3 7,)85 -,$ -)) ,- -8$' 8,9034-58 3. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-5 3 7,)85 -,$ -)) ,- -8$' 8,9034-58 3",
      "2. cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 126,
    "heading": "2026-04-03 00:07:46 AREA: G",
    "published_at": "2026-04-03 00:07:46",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD. \nPLATFORM NORTH 43/26-ST2, 54-03.2N \n_ _U__P\nMGCS__(7_(___'=__\n! )___\n__=__ZCZC",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NORTH 43/26-ST2, 54-03.2N\n_ _U__P\nMGCS__(7_(___'=__\n! )___\n__=__ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "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: Ravenspurn north gas field. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ravenspurn north gas field",
      "Platform north 43/26-st2, 54-03.2n"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-04-03 00:07:22 AREA: G",
    "published_at": "2026-04-03 00:07:22",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICEM6+_._:''06_+_*.*\n* *\n* 1!//61 _3_8$3*+$2 __$1\n88_+! 1_0\n_\n\n=_ZCZC",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICEM6+_._:''06_+_*.*\n* *\n* 1!//61 _3_8$3*+$2 __$1\n88_+! 1_0\n_\n\n=_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t servicem6 . :''06",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 128,
    "heading": "2026-04-03 00:06:57 AREA: G",
    "published_at": "2026-04-03 00:06:57",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWWJP_MJFHPM\nH_H__ 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWWJP_MJFHPM\nH_H__ 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service from bawwjp mjfhpm",
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 129,
    "heading": "2026-04-03 00:05:58 AREA: G",
    "published_at": "2026-04-03 00:05:58",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM _+5_:_02.__0P_EG_PWAQWMYE, UNLIT ANDMSSM_FWJMFZ_PYHF\nP_BM_M CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM _+5_:_02.__0P_EG_PWAQWMYE, UNLIT ANDMSSM_FWJMFZ_PYHF\nP_BM_M 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: P bm m cancel wz 100/26 (ga52). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "P bm m cancel wz 100/26 (ga52)",
      "Leman gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 130,
    "heading": "2026-04-03 00:05:28 AREA: G",
    "published_at": "2026-04-03 00:05:28",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\n P_W_\nMRCC SHETLAND.\n1. MF R/T AFD DSC SERVICES FROM\nHP_PJJMJIII 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nP_W_\nMRCC SHETLAND.\n1. MF R/T AFD DSC SERVICES FROM\nHP_PJJMJIII 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": [
      "Hp pjjmjiii 57-07.7n 002-03.2w off air",
      "1. mf r/t afd dsc services from",
      "Mrcc shetland"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 131,
    "heading": "2026-04-03 00:04:57 AREA: G",
    "published_at": "2026-04-03 00:04:57",
    "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": 132,
    "heading": "2026-04-03 00:04:31 AREA: G",
    "published_at": "2026-04-03 00:04:31",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ 232/26 \nHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ 232/26\nHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform southwark 53-11.0n 002-05.8e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform southwark 53-11.0n 002-05.8e unlit and all navaids inoperative",
      "Inner bank"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 133,
    "heading": "2026-04-03 00:03:57 AREA: G",
    "published_at": "2026-04-03 00:03:57",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. N1 55-08.1N 002-09.5E. \nB. E5 54-51.5N 002-20.7E. \n2. CANCEL WZ 95/26 (GA50). \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS UNLIT:\nA. N1 55-08.1N 002-09.5E.\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (GA50).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOGGER",
      "SOFIA OFFSHORE WIND FARM"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. buoys unlit.",
    "decoded_highlights": [
      "1. buoys unlit",
      "Sofia offshore wind farm",
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 134,
    "heading": "2026-04-03 00:03:21 AREA: G",
    "published_at": "2026-04-03 00:03:21",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nFORTH. \nNEART NA GAOITHE WINDFARM. \n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE. \n2. CANCEL WZ 130/26 (GA73). \nNNNN",
    "clean_text": "ZCZC GA18\nWZ 243/26\nFORTH.\nNEART NA GAOITHE WINDFARM.\n1. NNG E BUOY 56-14.3N 002-08.6W AND NNG S BUOY 56-12.3N 002-09.8W AIS INOPERATIVE.\n2. CANCEL WZ 130/26 (GA73).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says an AIS transmitter is inoperative near 56-14.3N 002-08.6W; 56-12.3N 002-09.8W.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-09.8w ais inoperative",
      "Neart na gaoithe windfarm",
      "2. cancel wz 130/26 (ga73)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 135,
    "heading": "2026-04-03 00:00:14 AREA: G",
    "published_at": "2026-04-03 00:00:14",
    "area": "G",
    "message_id": "GE14",
    "text": "ZCZC GE14\nISSUED BY THE MET OFFICE AT 2100 ON THU 02 APR\n\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FORTJLJTJ _M__23+_EK_BQ_/($__(__78(1_32 )92 3/0 3 !-3493' 985 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nVIKING\nCYCLONIC $:___JHCINCR_\nAMGHZM_S_M_FMGZ_SMJP\nM__IKUGH OR VERY ROUGH LTR. OCCASIONAL RAIN. GOOD, OCNL POOR\n\nFORTIES  M_OREM_ZYHDONGX_NIC 6.__+._BECMG S 6 TO GALE 8, =00_.7._BHD_BG_DP_Y7)__$ 94 497__, OCNL SLT IN CROMARTY AND FOE ZKKIJ_FUD_N_SMYF_MGJD_YJMSHY_OD OR GOOD\n\nTYNE DOGGER\nCYCLONIC 3 TO 5, BECM_ F QTVGHZM_C_G_PP_MUM_YMGHZM_LTR. SLT OR MOW\nMGLPTR_L_OD OR ROUGH LTR IN DOGGER. OCCASIONAL RAIN. MOD OR GOOD\n\nHUMBER THAMES\nNW 5 AT FIRST IN GERMAN BIGHT, OTHERWISE VRB 2 TO 4, BECMG SW 5 TO _UM MOD OR ROUGH IN GERMAN BIGHT, OTHERWISE SLT OR MOD, OCNL ROUGH LTR FMDC_LPYMW__KNQBH_K3__.6!__99$, OCNL POOR\n\nFAIR ISLE\nXSE_BECMG CYCLONIC, THEN W LTR, 6 TO GALE 8. MOD OR ROUGH AT FIRST IN FAIR ISLE, OTHERWISE ROUGH OR VERY ROUGH. RAIN OR SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSTRG WINDS EXP IN ALL AREAS\nNNNN",
    "clean_text": "ZCZC GE14\nISSUED BY THE MET OFFICE AT 2100 ON THU 02 APR\n\nGALE WARNINGS: VIKING FORTIES CROMARTY FORTJLJTJ _M__23+_EK_BQ_/($__(__78(1_32 )92 3/0 3 !-3493' 985 BY MIDDAY TOMORROW\n\n24-HR FORECASTS\n\nVIKING\nCYCLONIC $:___JHCINCR_\nAMGHZM_S_M_FMGZ_SMJP\nM__IKUGH OR VERY ROUGH LTR. OCCASIONAL RAIN. GOOD, OCNL POOR\n\nFORTIES M_OREM_ZYHDONGX_NIC 6.__+._BECMG S 6 TO GALE 8, =00_.7._BHD_BG_DP_Y7)__$ 94 497__, OCNL SLT IN CROMARTY AND FOE ZKKIJ_FUD_N_SMYF_MGJD_YJMSHY_OD OR GOOD\n\nTYNE DOGGER\nCYCLONIC 3 TO 5, BECM_ F QTVGHZM_C_G_PP_MUM_YMGHZM_LTR. SLT OR MOW\nMGLPTR_L_OD OR ROUGH LTR IN DOGGER. OCCASIONAL RAIN. MOD OR GOOD\n\nHUMBER THAMES\nNW 5 AT FIRST IN GERMAN BIGHT, OTHERWISE VRB 2 TO 4, BECMG SW 5 TO _UM MOD OR ROUGH IN GERMAN BIGHT, OTHERWISE SLT OR MOD, OCNL ROUGH LTR FMDC_LPYMW__KNQBH_K3__.6!__99$, OCNL POOR\n\nFAIR ISLE\nXSE_BECMG CYCLONIC, THEN W LTR, 6 TO GALE 8. MOD OR ROUGH AT FIRST IN FAIR ISLE, OTHERWISE ROUGH OR VERY ROUGH. RAIN OR SQUALLY WINTRY SHWRS. GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSTRG WINDS EXP IN ALL AREAS\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "DOGGER",
      "CROMARTY",
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gale warnings: viking forties cromarty fortjljtj m 23 ek bq /($ ( 78(1 32 )92 3/0 3 !-3493' 985 by midday tomorrow",
      "Forties m orem zyhdongx nic 6. . becmg s 6 to gale 8, 00 .7. bhd bg dp y7) $ 94 497 , ocnl slt in cromarty and foe zkkij fud n smyf mgjd yjmshy od or good",
      "Xse becmg cyclonic, then w ltr, 6 to gale 8. mod or rough at first in fair isle, otherwise rough or very rough. rain or squally wintry shwrs. good, ocnl poor"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 1,
    "heading": "2026-04-02 23:51:46 AREA: F",
    "published_at": "2026-04-02 23:51:46",
    "area": "F",
    "message_id": "FA03",
    "text": "ZCZC FA03\n2_1840 UTC MAR\nPETERSBURG NAV WARN 049/26\nEASTERN ULF OF FINLANE\nSHIPS TXL_ISES 312100 5 _/:_6._$6:.\n0U MGVH___ONFMY_BNN_5:_*1_7:3E_X_YPAPPMTVFNKMCMQ_,9,1:_E_)9_=.00E\n_59-53.00N 027-48.00E 59-48.00N 027-31.00E\nCANCEL TPIS MESSAGE 3062!_=_\n!_*(!\n9!9!____-8__2_22____ ,-= 2-4, 048/26\nEISTERN GULJLAND\nSHIPS EXERFIS_EQWQPP _UTCMOAWMHJ_MM\nVU__PC\n__Y\nF_PORARI_Y DAN_MHZMJD__FH\n_RLZAHUFFA__PABZ___WE\nBALTICNICA INFORMA_ON\nV_SS_LS OU_D\nPHONE 46 (0)10 49 76 00 ZI_FOLGOWS:\nWHEN PASSING LAT O60 ON VH_ MH 82.\n_RHIV_L REPZ_HMZM\nD._$.\n:__974'_45743.\nF_R_INFOR_ATYPJHYF_HFZJM_ZX_B LFBALGICE.ORG\nNNNN",
    "clean_text": "ZCZC FA03\n2_1840 UTC MAR\nPETERSBURG NAV WARN 049/26\nEASTERN ULF OF FINLANE\nSHIPS TXL_ISES 312100 5 _/:_6._$6:.\n0U MGVH___ONFMY_BNN_5:_*1_7:3E_X_YPAPPMTVFNKMCMQ_,9,1:_E_)9_=.00E\n_59-53.00N 027-48.00E 59-48.00N 027-31.00E\nCANCEL TPIS MESSAGE 3062!_=_\n!_*(!\n9!9!____-8__2_22____ ,-= 2-4, 048/26\nEISTERN GULJLAND\nSHIPS EXERFIS_EQWQPP _UTCMOAWMHJ_MM\nVU__PC\n__Y\nF_PORARI_Y DAN_MHZMJD__FH\n_RLZAHUFFA__PABZ___WE\nBALTICNICA INFORMA_ON\nV_SS_LS OU_D\nPHONE 46 (0)10 49 76 00 ZI_FOLGOWS:\nWHEN PASSING LAT O60 ON VH_ MH 82.\n_RHIV_L REPZ_HMZM\nD._$.\n:__974'_45743.\nF_R_INFOR_ATYPJHYF_HFZJM_ZX_B LFBALGICE.ORG\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code F. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "F r infor atypjhyf hfzjm zx b lfbalgice.org",
      "Phone 46 (0)10 49 76 00 zi folgows",
      "When passing lat o60 on vh mh 82"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 3,
    "heading": "2026-04-02 23:45:08 AREA: E",
    "published_at": "2026-04-02 23:45:08",
    "area": "E",
    "message_id": "",
    "text": "ZCZC EA21=\n_2_18/2_,$6. \nSPANIEL BUOY 51-38.1_$,_0_3-39.7_2_7')85.\n_$_,__\n\n77\n\n_\n__\n_(__\n77(__7_77\n_-/-/.___=9_______._04\n_-)5,..*_.\n.__6.\n,\nT_EONGLSHK_MY_ANOZMFSWM_HVYUE__9,_*_06._$0._!_06.*0*+/.__-($_3_):9_($___(*_(71_(7_(*1__0-B_32_1BH_ _U3___322._6=*./+:_+_)_,79)85, OFF POSITIO_ _D. MANY BUOYS AND MARKS HAVE BEEN WITHDRAWN. REPAIR WORKS WILL TAKE SEVERAL WEEKS.\nNAVIGATE WITH CAUTION.\nNNNN",
    "clean_text": "ZCZC EA21=\n_2_18/2_,$6.\nSPANIEL BUOY 51-38.1_$,_0_3-39.7_2_7')85.\n_$_,__\n\n77\n\n_\n__\n_(__\n77(__7_77\n_-/-/.___=9_______._04\n_-)5,..*_.\n.__6.\n,\nT_EONGLSHK_MY_ANOZMFSWM_HVYUE__9,_*_06._$0._!_06.*0*+/.__-($_3_):9_($___(*_(71_(7_(*1__0-B_32_1BH_ _U3___322._6=*./+:_+_)_,79)85, OFF POSITIO_ _D. MANY BUOYS AND MARKS HAVE BEEN WITHDRAWN. REPAIR WORKS WILL TAKE SEVERAL WEEKS.\nNAVIGATE WITH CAUTION.\nNNNN",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "SPANIEL BUOY"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - English Channel and western approaches. Readable text says: Spaniel buoy 51-38.1 $, 0 3-39.7 2 7')85. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Spaniel buoy 51-38.1 $, 0 3-39.7 2 7')85",
      "T eonglshk my anozmfswm hvyue 9, 06. $0. ! 06. 0 /. -($ 3 ):9 ($ ( (71 (7 ( 1 0-b 32 1bh u3 322. 6 ./ : ) ,79)85, off positio d. many buoys and marks have been withdrawn. repair works will take several weeks",
      "Navigate with caution"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-04-02 23:44:03 AREA: E",
    "published_at": "2026-04-02 23:44:03",
    "area": "E",
    "message_id": "EA40",
    "text": "ZCZC EA40\nWZ 21 ,_$9=34. \nMF R/T_J\nY\nF__M6+_.)_2(0_.*(Q\n__H__GII_MKCR_NOA_\nA_ZCZM\nEA27\nWZ 192/2_ \nLU_DT\nO_GS_\nPY_Z_MMJFHML_ZEM_HCPN .03-10.8_2 7,)85. \n \nNNNN",
    "clean_text": "ZCZC EA40\nWZ 21 ,_$9=34.\nMF R/T_J\nY\nF__M6+_.)_2(0_.*(Q\n__H__GII_MKCR_NOA_\nA_ZCZM\nEA27\nWZ 192/2_\nLU_DT\nO_GS_\nPY_Z_MMJFHML_ZEM_HCPN .03-10.8_2 7,)85.\n\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 6,
    "heading": "2026-04-02 23:43:09 AREA: E",
    "published_at": "2026-04-02 23:43:09",
    "area": "E",
    "message_id": "EA49",
    "text": "ZCZC EA49\n27-___-\n_-4=2026 \nEA49 \nWZ WWRPXWY \nFASTNET_YHQ_\nW_TYZL_DDYAZ__HZF QV06_8,-) _796 51-55.3__9\n__:_!___7\n:+'!___.9,9,_9,,888_\n*__3!__-__\nSOUTH CARDINAL_BUOY 50-01.2N 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA49\n27-___-\n_-4=2026\nEA49\nWZ WWRPXWY\nFASTNET_YHQ_\nW_TYZL_DDYAZ__HZF QV06_8,-) _796 51-55.3__9\n__:_!___7\n:+'!___.9,9,_9,,888_\n*__3!__-__\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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "South cardinal buoy 50-01.2n 005-40.4w unlit",
      "Wz wwrpxwy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-04-02 23:20:48 AREA: T",
    "published_at": "2026-04-02 23:20:48",
    "area": "T",
    "message_id": "",
    "text": "_CZC CB1_-_0__U_EY_MG_H_MXCK_ \nG\nU_\nGO_E_EN_WA_VO__RW___MRML OF_0.\n_2++_+:2\n8!778)86' 3 ..:__\n1. FRO\nU_W__W_25\nUKRA_NE CTAWZOHTA_T O_ESA-NAVTDX\nBLECK SEAONMZY\n_\nNWD_N 030-39.7E\n4_5-48.2':3) ,4 38/25\n_\n7,,,,\n. 0____*--_2__-+_--9797__+_: 24\n_7(4-8,3 :9-_5-) 2-4-=5/\n_)_ ODESA-\nAVTEX\n__B___ Z\n__AJC__NC\n___\nPXQQWPBB_UZ_ZC\nCL67\n_301130_Q K D\n_S_CKVFLA\nIADTERNEU_K_T_\n_ED BY\nRT45-29:_2N  29-45___3\n -, __-__'0)*,3_9):3_\n_9_._$.6$:_8__6_:+_87__-\n) 2-4_,8,_ ,25/19 ODE_SA-NA_ X\nBLACK FRAVA_D SEA OF AZOV\n\nINTTR_AL SEAWATERS_AND T_R_RITORIAL SEA\nOF Z_QK__IVE_BZITT\nC RAIN. MOWVOKM_ZZWONON_VM_FHRJ___N SE_ 4. M_ OR SW 4  59 6, INCR 7 AT TIMES. ROUGH OR VERY ROUGH IN W SOLV, SLT OR MOD OCNL R__GH IN LUNDY AND IRISH SEA, ELSKWHERE MOD OR _OUGH BECMG ROUGH O_ VERY ROUGH. OCCASIONAL RAIN OR SHWRS. GOOD,_!)_ !-'5,35 285_ _-)\n'_$\n_)6._75_ -,$ !85+496__ _'\n__._+_$06.6KQ_U_UZCZC",
    "clean_text": "_CZC CB1_-_0__U_EY_MG_H_MXCK_\nG\nU_\nGO_E_EN_WA_VO__RW___MRML OF_0.\n_2++_+:2\n8!778)86' 3 ..:__\n1. FRO\nU_W__W_25\nUKRA_NE CTAWZOHTA_T O_ESA-NAVTDX\nBLECK SEAONMZY\n_\nNWD_N 030-39.7E\n4_5-48.2':3) ,4 38/25\n_\n7,,,,\n. 0____*--_2__-+_--9797__+_: 24\n_7(4-8,3 :9-_5-) 2-4-=5/\n_)_ ODESA-\nAVTEX\n__B___ Z\n__AJC__NC\n___\nPXQQWPBB_UZ_ZC\nCL67\n_301130_Q K D\n_S_CKVFLA\nIADTERNEU_K_T_\n_ED BY\nRT45-29:_2N 29-45___3\n-, __-__'0)*,3_9):3_\n_9_._$.6$:_8__6_:+_87__-\n) 2-4_,8,_ ,25/19 ODE_SA-NA_ X\nBLACK FRAVA_D SEA OF AZOV\n\nINTTR_AL SEAWATERS_AND T_R_RITORIAL SEA\nOF Z_QK__IVE_BZITT\nC RAIN. MOWVOKM_ZZWONON_VM_FHRJ___N SE_ 4. M_ OR SW 4 59 6, INCR 7 AT TIMES. ROUGH OR VERY ROUGH IN W SOLV, SLT OR MOD OCNL R__GH IN LUNDY AND IRISH SEA, ELSKWHERE MOD OR _OUGH BECMG ROUGH O_ VERY ROUGH. OCCASIONAL RAIN OR SHWRS. GOOD,_!)_ !-'5,35 285_ _-)\n'_$\n_)6._75_ -,$ !85+496__ _'\n__._+_$06.6KQ_U_UZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text says: C rain. mowvokm zzwonon vm fhrj n se 4. m or sw 4 59 6, incr 7 at times. rough or very rough in w solv, slt or mod ocnl r gh in lundy and irish sea, elskwhere mod or ough becmg rough o very rough. occasional rain or shwrs. good, !) !-'5,35 285 -). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "C rain. mowvokm zzwonon vm fhrj n se 4. m or sw 4 59 6, incr 7 at times. rough or very rough in w solv, slt or mod ocnl r gh in lundy and irish sea, elskwhere mod or ough becmg rough o very rough. occasional rain or shwrs. good, !) !-'5,35 285 -)",
      "Ukra ne ctawzohta t o esa-navtdx",
      "Black frava d sea of azov"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-04-02 22:31:22 AREA: V",
    "published_at": "2026-04-02 22:31:22",
    "area": "V",
    "message_id": "VA63",
    "text": "ZCZC VA63\n4\n_RRLRHCM__Y\nI_MON_183/26 \n:5'.3'. \nEAST ANGL__ FARXTURBINE G_ TWAPOMIN 002-33.5E, FOG SIGNAL INOPERAT_VW_,\n__,,,,\n\n7_((((((((((((((___(_9\n5\n6)2_7__-___)FYIH8_!_'/1+_4$ -ISOLJTE_MHDNJPZJ_CO_FDMY_IHDXJPMKMW_EA\nV__X_ARIABLE 5 SEA -/_ORTHER_Y 5 SEA _R\nM_IZOUTHERN JONI 6 S_AV4/NORTHWE_TECLY 5 SEA\nRX_ BR\nPWE\n_HIEDW_JQO_\n_VW_F\nP_ONONGPW_SY\nK__A__U\n\n__W_BKS_YSC_C_ABJCP\nFL_.3I _:7$36.0:7_'___+:+/.__UC_\n_WQOEI UTC APR 26\nGALEWARNING, 02 APR 19:31 UTC.\nDOGGER. HUMBER. THAMES.\nSOUTHWEST 7.\nGERMAN BIGHT. DOVER.\nNO WARNING.\n\nEND OF GALEWARNING\n\nNNNN",
    "clean_text": "ZCZC VA63\n4\n_RRLRHCM__Y\nI_MON_183/26\n:5'.3'.\nEAST ANGL__ FARXTURBINE G_ TWAPOMIN 002-33.5E, FOG SIGNAL INOPERAT_VW_,\n__,,,,\n\n7_((((((((((((((___(_9\n5\n6)2_7__-___)FYIH8_!_'/1+_4$ -ISOLJTE_MHDNJPZJ_CO_FDMY_IHDXJPMKMW_EA\nV__X_ARIABLE 5 SEA -/_ORTHER_Y 5 SEA _R\nM_IZOUTHERN JONI 6 S_AV4/NORTHWE_TECLY 5 SEA\nRX_ BR\nPWE\n_HIEDW_JQO_\n_VW_F\nP_ONONGPW_SY\nK__A__U\n\n__W_BKS_YSC_C_ABJCP\nFL_.3I _:7$36.0:7_'___+:+/.__UC_\n_WQOEI UTC APR 26\nGALEWARNING, 02 APR 19:31 UTC.\nDOGGER. HUMBER. THAMES.\nSOUTHWEST 7.\nGERMAN BIGHT. 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",
    "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. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "East angl farxturbine g twapomin 002-33.5e, fog signal inoperat vw",
      "M izouthern joni 6 s av4/northwe tecly 5 sea",
      "Galewarning, 02 apr 19:31 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-02 22:20:15 AREA: U",
    "published_at": "2026-04-02 22:20:15",
    "area": "U",
    "message_id": "UE37",
    "text": "ZCZC UE37\n021920 UTC APR 26\nMONDOLFO RADIO\n\nWEATHER FORECAST OVER MEDITERRANEAN AREAS ISSUED BY ROME METEOROLOGY CEN\nYPMHM_ FT_CH__Z.\nUT_TU_U_ONGWM_SFWMC_MH_M\n_TG_H_MZ._PTYTUUE_ WARN,3,_,_206*_+6_*.:206._+:6*0\n_._+_06.*+:_$06.__66$0!.*+_* __ _._'8:8)6 '54-85, LIBYAN SEA, IONIAN SEA AND AEGEAN AND SOUTHMCYPHPONJPJ\n_ONGHDCWPC__PC_G_ECALXFUQP\nKZ_QO_Z__L_ZF\nQ_LUBR_L__XF\nQP_\nW_TY__ EAST SIDE, EASTERNVMEDITERRANEAN SEA AND IONIAN SEA.\nGALES UNDER COURSE: SOUTHWESTERLY 7 IN THE LIBYAN SEA, SOUTHERN JONIAN SEA WMP_PONWMJZCHDM_YP_P\n__KQ_7 N THE SICILY STRAIT._+6_$.)'06!.*0.+.)_2\n_)!+ -, -,$ :_-,,3).\nGAL _AST:  NORTHW_STERLY 7 IN THE SICILY STRAIT, SOUTHERN JONIAN SEA, NORTH\nBALEARI SEMWMJYWFFMJPMWM_DPS_UTRWPBXBH__'!)2_)6+1+0_7_(EKLBVICLZVZ\n_ETE SEAS.\n2. WEATHER SITUATION:\nA LOW OF 992 HPA OVER NORTHERN IONIAN SEA. INSTABILITY AREA OVER\nCENTRAL MEDITERRANEAN SEA. OCCLUDED FRONT OVER SOUTH-CENTRAL ITALY.\n3. FORECAST TO 06/UTC OF 03/04/2026 AND 12 HOURS OUTLOOK:\nZYHDPYMWYFHF_MJP_B\nH-__2_Q_RJQBRBH_LLY INCREASING EAST\nSECTOR -MOSTLY CLOUDY WEAKENING -GOOD VISIBILITY -MODERATE SEA\nWEAKENING OFFSHORE / OUTLOOK: NORTHEASTERLY 5 -FAIR.\nCENTRAL ADRIATIC SEA: NORTHEASTERLY 5 LOCALLDNSCYPJFM_GJDZ_PYJONJSZUSEM__VP_M__GZZWMSZ_SSEM_ZZ_M_FJFLFSFHEM__GBZWPYHPMJPM_OUTLOOK: NORTHEASTERL_N_._'+_'.6!._0*_.*0__+/__9,:_$06.26!_!_.*__,9_5_=-'534)6 4 BECOMING NORTHERLY -RAIN\nSLOWLY WEAKENING_GRHOW\n_OK__WN_K_BB1_'*__1_\n_3KQGEBCP_32$_1KB_3KQGEBAE_WBK_Q_BQ_R / OUTLOOK: NORTHERLY 3 -MOSTLY\nCLOUDY.\n4. WIND AND SEA OUTLOOK OVER ITALIAN SEAS FROM 1.)_.__:2!9_\n_$__/6___: NORTHEASTERL_E_LGXLD 2/KAH_Y 2 SEA\n2/NORTHERLY 1 SEA 1/EASTERLT_DJV___J\nN_O G_PHYSMWYFHF_MJ__NORTHERLY 4 SEA 4/NTHETHELJR R SEA 3/NORTHERLY\nN\nY_A 3/NORTHWESTE_LY 3 SEA 2.\nSOUTHERN ADRIATIC SEA: NORTHERLY 3 SEA 4/NORTHERLY 5 SEA\n4/NORTHERLY 3 SEA 3/NORTHWESTERLY 4 SEA 3.\n\nE_DMPH_Z_Y\n_ONGONN_Z__ZCZC",
    "clean_text": "ZCZC UE37\n021920 UTC APR 26\nMONDOLFO RADIO\n\nWEATHER FORECAST OVER MEDITERRANEAN AREAS ISSUED BY ROME METEOROLOGY CEN\nYPMHM_ FT_CH__Z.\nUT_TU_U_ONGWM_SFWMC_MH_M\n_TG_H_MZ._PTYTUUE_ WARN,3,_,_206*_+6_*.:206._+:6*0\n_._+_06.*+:_$06.__66$0!.*+_* __ _._'8:8)6 '54-85, LIBYAN SEA, IONIAN SEA AND AEGEAN AND SOUTHMCYPHPONJPJ\n_ONGHDCWPC__PC_G_ECALXFUQP\nKZ_QO_Z__L_ZF\nQ_LUBR_L__XF\nQP_\nW_TY__ EAST SIDE, EASTERNVMEDITERRANEAN SEA AND IONIAN SEA.\nGALES UNDER COURSE: SOUTHWESTERLY 7 IN THE LIBYAN SEA, SOUTHERN JONIAN SEA WMP_PONWMJZCHDM_YP_P\n__KQ_7 N THE SICILY STRAIT._+6_$.)'06!.*0.+.)_2\n_)!+ -, -,$ :_-,,3).\nGAL _AST: NORTHW_STERLY 7 IN THE SICILY STRAIT, SOUTHERN JONIAN SEA, NORTH\nBALEARI SEMWMJYWFFMJPMWM_DPS_UTRWPBXBH__'!)2_)6+1+0_7_(EKLBVICLZVZ\n_ETE SEAS.\n2. WEATHER SITUATION:\nA LOW OF 992 HPA OVER NORTHERN IONIAN SEA. INSTABILITY AREA OVER\nCENTRAL MEDITERRANEAN SEA. OCCLUDED FRONT OVER SOUTH-CENTRAL ITALY.\n3. FORECAST TO 06/UTC OF 03/04/2026 AND 12 HOURS OUTLOOK:\nZYHDPYMWYFHF_MJP_B\nH-__2_Q_RJQBRBH_LLY INCREASING EAST\nSECTOR -MOSTLY CLOUDY WEAKENING -GOOD VISIBILITY -MODERATE SEA\nWEAKENING OFFSHORE / OUTLOOK: NORTHEASTERLY 5 -FAIR.\nCENTRAL ADRIATIC SEA: NORTHEASTERLY 5 LOCALLDNSCYPJFM_GJDZ_PYJONJSZUSEM__VP_M__GZZWMSZ_SSEM_ZZ_M_FJFLFSFHEM__GBZWPYHPMJPM_OUTLOOK: NORTHEASTERL_N_._'+_'.6!._0*_.*0__+/__9,:_$06.26!_!_.*__,9_5_=-'534)6 4 BECOMING NORTHERLY -RAIN\nSLOWLY WEAKENING_GRHOW\n_OK__WN_K_BB1_'*__1_\n_3KQGEBCP_32$_1KB_3KQGEBAE_WBK_Q_BQ_R / OUTLOOK: NORTHERLY 3 -MOSTLY\nCLOUDY.\n4. WIND AND SEA OUTLOOK OVER ITALIAN SEAS FROM 1.)_.__:2!9_\n_$__/6___: NORTHEASTERL_E_LGXLD 2/KAH_Y 2 SEA\n2/NORTHERLY 1 SEA 1/EASTERLT_DJV___J\nN_O G_PHYSMWYFHF_MJ__NORTHERLY 4 SEA 4/NTHETHELJR R SEA 3/NORTHERLY\nN\nY_A 3/NORTHWESTE_LY 3 SEA 2.\nSOUTHERN ADRIATIC SEA: NORTHERLY 3 SEA 4/NORTHERLY 5 SEA\n4/NORTHERLY 3 SEA 3/NORTHWESTERLY 4 SEA 3.\n\nE_DMPH_Z_Y\n_ONGONN_Z__ZCZC",
    "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 gales, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gales under course: southwesterly 7 in the libyan sea, southern jonian sea wmp ponwmjzchdm yp p",
      "Sector -mostly cloudy weakening -good visibility -moderate sea",
      "Weather forecast over mediterranean areas issued by rome meteorology cen"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-04-02 22:18:50 AREA: T",
    "published_at": "2026-04-02 22:18:50",
    "area": "T",
    "message_id": "",
    "text": "ZCZC TA_9\n__1_UTC APR \nOOSTENUP__IB MSI\n1!3\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVEYSF_WP__JHLSFJDPWML_H_B_K_WB_KIBN_XKMNC_EHLO::_/___Z__EOIBK_+6_$._62!'888_96 'JDN'\nUNDEYAH\nYF_PSFPMSZ_LYWJF_WPMPJHLSFJDPWMLPH_PPMLP_DMONGWM_ZJM\nH _ _ _UN 0_(.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUPJHPWMZHMDAB_OR NOR TO FISH ABOVE \n_ESE PIPELINES\nNNNN",
    "clean_text": "ZCZC TA_9\n__1_UTC APR\nOOSTENUP__IB MSI\n1!3\nSEAAREA (COAST)\nUNDERWATERPIPELINE RAVEYSF_WP__JHLSFJDPWML_H_B_K_WB_KIBN_XKMNC_EHLO::_/___Z__EOIBK_+6_$._62!'888_96 'JDN'\nUNDEYAH\nYF_PSFPMSZ_LYWJF_WPMPJHLSFJDPWMLPH_PPMLP_DMONGWM_ZJM\nH _ _ _UN 0_(.01E MARKED\nMARKED WITH NORTH CARDINAL BUOY 'DC1'\nSHIPPING IS REQUPJHPWMZHMDAB_OR NOR TO FISH ABOVE\n_ESE PIPELINES\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 reports a pipeline-related hazard with local restrictions for nearby traffic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requpjhpwmzhmdab or nor to fish above",
      "Underwaterpipeline raveysf wp jhlsfjdpwml h b k wb kibn xkmnc ehlo:: / z eoibk 6 $. 62!'888 96 'jdn'",
      "Marked with north cardinal buoy 'dc1'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-02 22:18:12 AREA: T",
    "published_at": "2026-04-02 22:18:12",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n141__MREKU-_1_9,:._:1+_'___*_6:_0_._1$('!(!___09,$/8_._/_4'___////'_4__)4_78__=_3__3XXMHDPM\nF_F_H_ONGONNIII_ZCZC",
    "clean_text": "ZCZC TA99\n141__MREKU-_1_9,:._:1+_'___*_6:_0_._1$('!(!___09,$/8_._/_4'___////'_4__)4_78__=_3__3XXMHDPM\nF_F_H_ONGONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code T. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 14,
    "heading": "2026-04-02 22:04:29 AREA: S",
    "published_at": "2026-04-02 22:04:29",
    "area": "S",
    "message_id": "SA81",
    "text": "ZCZC SA81\nHAM9,\n6___00 UTMVOY\nZCHDP_SRNZ_ITY DURIN_ ZFPYSFL_Z_U_L_ONN_O_L_OFL_\nF\nJ\nA\n_\nZ\n_\nZ_SVVVVVVOOOOOOO\n___O__ASA80\n!3--09_QVRIV_FY_JYY_Q_WXUQ _DER _ARY.\n'EIDER)1LIGKL__N UPPIAWOE\n_T_F\nZBR_Y__D BY CSFHMLC\nCF V_ONNKKKKKKKKKKKKKKKK BIGHT\n_OTSHOR_M_ZPARK TJGZYBLEE OSTJOAS_\nHM_J_MSIGHTING _ATIVE MYZ_J_O_\n_U\n\n__ZCA_MJ__AST FRISI___MO5_*78'5.\n 'JUIAN'.._'!_$_):+_..S_C_RN  _EHHGPMZKJ_IN__9,_29,_ 72-4__-_*_!_. 1299,__**._03(__32_9($\n_P_LX_ACH\n'GW/EMS' LIGHT-_\n0**0_.__6:/)97/__4)2_8_9\n_7_7_7!_2)___7777!_7_\n7\n_7_AMAMHPIJW___QP UHXM_YONGZZQNGP_IC_ TH__MHCYF_MH_KBKUB_4_ 2_9__:6!__._+9___(8:)_8_=))_)_8\n__BE__FB__KPN_ TONIGS\nMPHA_ALL ARPI_I _K__LI___WU_ \n\n_JHAZ_QWU_CANCEL THIS _PJJ_I_FAA_UU_KA_A_QY\n291851 UMAR\n MAO\n _O MSI 134/__. CLE_PJONIIVHOR A_HAIM _ZJHMFQO__2-39__:_09,9,_9,,888:_(77=-/-_2069XX__C_UI__DN\nES REQUPJ_P__UU  C K\nOOSTPD_ RA__A_IC _OKCOMHD__YFHZY_L INSTRUU__HMPJHLJ_QWUB_4(3$9,_*$!__!_.!_./PK_ PASS \nMMF_S_ __\n\nUK_  _ XAFMH_261_UMG_HXM_Y_ONGZZJNNWN_OOSTENDE-ZEEBRU_M\n GZ_JZ_S ON THE SEABPMF_LLOWING POSI_F_JON\nH_M CPDK__O___ QUNW_GPON_MFMHDPM\nF_U__U_ZCZ_\nTUW_\n\nUYFPYMGCHXM_YONGZZQB\nU_EK_119__-=9_._+(_'.6+:_0.)._20.__,*6_-_.9888_:8-) 07409'3 _796 (6.,_ Y. __0_._\n___,!2 )) -7_7\n_\n,_3\n7.95\n_)93_1_))(+__+.92\n '7_.-48,3 :-_)3 )-68,_, THEY MUST BE CONSIDERED VESSELS RESTRICTED IN THEM ABILITY T_V_ZPC_YPMJB__DFW_____U_81\n13215___ )/._69,_--'77EKU-__9_/_9$/____-_$!206._0*:6!_88_(.ZSV_N 002-26.2__\nLIGHT UNRELIABLE\nNNNN",
    "clean_text": "ZCZC SA81\nHAM9,\n6___00 UTMVOY\nZCHDP_SRNZ_ITY DURIN_ ZFPYSFL_Z_U_L_ONN_O_L_OFL_\nF\nJ\nA\n_\nZ\n_\nZ_SVVVVVVOOOOOOO\n___O__ASA80\n!3--09_QVRIV_FY_JYY_Q_WXUQ _DER _ARY.\n'EIDER)1LIGKL__N UPPIAWOE\n_T_F\nZBR_Y__D BY CSFHMLC\nCF V_ONNKKKKKKKKKKKKKKKK BIGHT\n_OTSHOR_M_ZPARK TJGZYBLEE OSTJOAS_\nHM_J_MSIGHTING _ATIVE MYZ_J_O_\n_U\n\n__ZCA_MJ__AST FRISI___MO5_*78'5.\n'JUIAN'.._'!_$_):+_..S_C_RN _EHHGPMZKJ_IN__9,_29,_ 72-4__-_*_!_. 1299,__**._03(__32_9($\n_P_LX_ACH\n'GW/EMS' LIGHT-_\n0**0_.__6:/)97/__4)2_8_9\n_7_7_7!_2)___7777!_7_\n7\n_7_AMAMHPIJW___QP UHXM_YONGZZQNGP_IC_ TH__MHCYF_MH_KBKUB_4_ 2_9__:6!__._+9___(8:)_8_=))_)_8\n__BE__FB__KPN_ TONIGS\nMPHA_ALL ARPI_I _K__LI___WU_\n\n_JHAZ_QWU_CANCEL THIS _PJJ_I_FAA_UU_KA_A_QY\n291851 UMAR\nMAO\n_O MSI 134/__. CLE_PJONIIVHOR A_HAIM _ZJHMFQO__2-39__:_09,9,_9,,888:_(77=-/-_2069XX__C_UI__DN\nES REQUPJ_P__UU C K\nOOSTPD_ RA__A_IC _OKCOMHD__YFHZY_L INSTRUU__HMPJHLJ_QWUB_4(3$9,_*$!__!_.!_./PK_ PASS\nMMF_S_ __\n\nUK_ _ XAFMH_261_UMG_HXM_Y_ONGZZJNNWN_OOSTENDE-ZEEBRU_M\nGZ_JZ_S ON THE SEABPMF_LLOWING POSI_F_JON\nH_M CPDK__O___ QUNW_GPON_MFMHDPM\nF_U__U_ZCZ_\nTUW_\n\nUYFPYMGCHXM_YONGZZQB\nU_EK_119__-=9_._+(_'.6+:_0.)._20.__,*6_-_.9888_:8-) 07409'3 _796 (6.,_ Y. __0_._\n___,!2 )) -7_7\n_\n,_3\n7.95\n_)93_1_))(+__+.92\n'7_.-48,3 :-_)3 )-68,_, THEY MUST BE CONSIDERED VESSELS RESTRICTED IN THEM ABILITY T_V_ZPC_YPMJB__DFW_____U_81\n13215___ )/._69,_--'77EKU-__9_/_9$/____-_$!206._0*:6!_88_(.ZSV_N 002-26.2__\nLIGHT UNRELIABLE\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": [
      "GW EMS"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text reports an aid-to-navigation fault. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'gw/ems' light-",
      "Light unreliable",
      "'7 .-48,3 :- )3 )-68, , they must be considered vessels restricted in them ability t v zpc ypmjb dfw u 81"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 15,
    "heading": "2026-04-02 22:02:38 AREA: S",
    "published_at": "2026-04-02 22:02:38",
    "area": "S",
    "message_id": "SA83",
    "text": "ZCZC SA83\nNCC-HAMBURG\n02YUMG_H_MRONKQ_SS_JKELBHLAG_AS_U_GU____570!__0.*0.)_\nSURVEY OPERATIOJMLEM_\nM\n__XEE_OQQNRRQPLAI_ _HZ_NQL__R_Q_TI_SIHFZMHEKEXXF_PTATIPGPONGYPJHYF_HPK_HMW__JS TY DCYF_MZ_CD_'1_7_+__BERTH OF )(_88)_GT_M\nNNNN",
    "clean_text": "ZCZC SA83\nNCC-HAMBURG\n02YUMG_H_MRONKQ_SS_JKELBHLAG_AS_U_GU____570!__0.*0.)_\nSURVEY OPERATIOJMLEM_\nM\n__XEE_OQQNRRQPLAI_ _HZ_NQL__R_Q_TI_SIHFZMHEKEXXF_PTATIPGPONGYPJHYF_HPK_HMW__JS TY DCYF_MZ_CD_'1_7_+__BERTH OF )(_88)_GT_M\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: Survey operatiojmlem. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey operatiojmlem",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-04-02 21:31:19 AREA: P",
    "published_at": "2026-04-02 21:31:19",
    "area": "P",
    "message_id": "PA38",
    "text": "ZCZC PA38\n0117 6._:__.YM\n_MSI 106/26\nWINDFARM HOLLANDSE KUST ZUID\nYELLOW SPECIAL MARK LICHT BUOYS FL(5) Y20S\nESTABLISHED IN THE FOLLOWING POSITIONS\nMT-HKZ 3 52-10,4420N 003-56,3420E\nMT-HKZ 4 52-10,3910N 003-56,4450E..\n\nNNNN",
    "clean_text": "ZCZC PA38\n0117 6._:__.YM\n_MSI 106/26\nWINDFARM HOLLANDSE KUST ZUID\nYELLOW SPECIAL MARK LICHT BUOYS FL(5) Y20S\nESTABLISHED IN THE FOLLOWING POSITIONS\nMT-HKZ 3 52-10,4420N 003-56,3420E\nMT-HKZ 4 52-10,3910N 003-56,4450E..\n\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: Yellow special mark licht buoys fl(5) y20s.",
    "decoded_highlights": [
      "Yellow special mark licht buoys fl(5) y20s",
      "Windfarm hollandse kust zuid",
      "Established in the following positions"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 19,
    "heading": "2026-04-02 21:30:20 AREA: P",
    "published_at": "2026-04-02 21:30:20",
    "area": "P",
    "message_id": "PA33",
    "text": "ZCZC PA33\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF4 UNLIT\n\nHOLLANDSE KUST ZUID\n52-19.2N 004-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52-11.4N 004-00.9E HZR FOGHORN INOPERATIVE\n\nCANCEL MSI 302/25\n\nNNNN",
    "clean_text": "ZCZC PA33\n021123 UTC APR 26\nMSI 107/26\nNORTHSEA\nTHE FOLLOWING WIND TURBINES HAVE DEFECTS\n\nHOLLANDSE KUST NOORD\n52-40.3N 004-09.8E HNI4 FOGHORN INOPERATIVE\n52-44.9N 004-12.2E HNF4 UNLIT\n\nHOLLANDSE KUST ZUID\n52-19.2N 004-06.5E HZZ6 UNLIT\n52-22.6N 004-11.3E HZX2 UNLIT\n52-11.4N 004-00.9E HZR FOGHORN INOPERATIVE\n\nCANCEL MSI 302/25\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": "regional-context",
    "resolved_match_terms": [
      "NORTHSEA"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Netherlands - Dutch EEZ and southern North Sea. This is a weather bulletin; readable sections mention fog across the covered waters.",
    "decoded_highlights": [
      "52-40.3n 004-09.8e hni4 foghorn inoperative",
      "52-11.4n 004-00.9e hzr foghorn inoperative",
      "The following wind turbines have defects"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 20,
    "heading": "2026-04-02 20:09:36 AREA: G",
    "published_at": "2026-04-02 20:09:36",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GPI_\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPRRATIV_.\n2. CANCEL C_ PZTM__ZCZFVGA82\nWZ =43/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOYM\nHZ_P_N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GPI_\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPRRATIV_.\n2. CANCEL C_ PZTM__ZCZFVGA82\nWZ =43/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOYM\nHZ_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": [
      "CROMARTY",
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention fog across the covered waters.",
    "decoded_highlights": [
      "1. turbine hs2, 57-29.4n 001-21.1w, fog signal inoprrativ",
      "Beryl spm3 buoym",
      "Hz p n 001-33.5e temporarily removed"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 21,
    "heading": "2026-04-02 20:09:13 AREA: G",
    "published_at": "2026-04-02 20:09:13",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 001-25_6_0.:'!__(1_0\n_\n\n=_ZCZC",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 001-25_6_0.:'!__(1_0\n_\n\n=_ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "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 6 0.:'! (1 0. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 001-25 6 0.:'! (1 0",
      "Dudgeon wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-04-02 20:08:41 AREA: G",
    "published_at": "2026-04-02 20:08:41",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/26 \nNORTH SEA. \nTEAL AND GUILLEMOT OIL FIELDS. \nCHART GB _M \nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.__0\nNNNN",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/26\nNORTH SEA.\nTEAL AND GUILLEMOT OIL FIELDS.\nCHART GB _M\nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHED IN 57-16.48N 000-46.__0\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Safety zone, radius 500 metres, established in 57-16.48n 000-46. 0.",
    "decoded_highlights": [
      "Safety zone, radius 500 metres, established in 57-16.48n 000-46. 0",
      "Navarea i 43/26",
      "North sea"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 23,
    "heading": "2026-04-02 20:08:03 AREA: G",
    "published_at": "2026-04-02 20:08:03",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND FARM. \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 FARM.\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 farm",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-02 20:07:32 AREA: G",
    "published_at": "2026-04-02 20:07:32",
    "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 CSFHMWMSSM_FWJMFZ_PYHF\nP_BO_ CANCEL WV_IWXWY KGA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E CSFHMWMSSM_FWJMFZ_PYHF\nP_BO_ CANCEL WV_IWXWY KGA42).\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 csfhmwmssm fwjmfz pyhf.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e csfhmwmssm fwjmfz pyhf",
      "P bo cancel wv iwxwy kga42)",
      "Orwell gas field northwestwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 25,
    "heading": "2026-04-02 20:07:02 AREA: G",
    "published_at": "2026-04-02 20:07:02",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPUYO_FZRTH GAS FIELD. 9___'__+6_.+6_2_RNHKQKHP_K_PEMWSG__MYIUS_3,__(81___C_9,LBZ__I_IA__ZCZC",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPUYO_FZRTH GAS FIELD. 9___'__+6_.+6_2_RNHKQKHP_K_PEMWSG__MYIUS_3,__(81___C_9,LBZ__I_IA__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. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 26,
    "heading": "2026-04-02 20:06:37 AREA: G",
    "published_at": "2026-04-02 20:06:37",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/2_.\n___'. \nMRCC HUMBER. \nMJ R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27._/=+_84. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/2_.\n___'.\nMRCC HUMBER.\nMJ R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27._/=+_84.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mj r/t service from cullercoats site 55-04.4n 001-27. / 84",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 27,
    "heading": "2026-04-02 20:06:13 AREA: T",
    "published_at": "2026-04-02 20:06:13",
    "area": "T",
    "message_id": "",
    "text": "ZC_C\nGMDSS. \nMRCC DOVER.\n9\n___.\n_'34=8:3 !49. _-2$'36.*!_0.\n_____ ___.::4._(_4B_ONNIIIUZCZC",
    "clean_text": "ZC_C\nGMDSS.\nMRCC DOVER.\n9\n___.\n_'34=8:3 !49. _-2$'36.*!_0.\n_____ ___.::4._(_4B_ONNIIIUZCZC",
    "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: Mrcc dover. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mrcc dover"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-04-02 20:05:13 AREA: G",
    "published_at": "2026-04-02 20:05:13",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 53-03.6N 002-(7=_.6E, UNLIT AND ALZ 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 53-03.6N 002-(7=_.6E, UNLIT AND ALZ 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 53-03.6n 002-(7 .6e, unlit and alz navaids inoperative.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03.6n 002-(7 .6e, unlit and alz navaids inoperative",
      "Leman gas field",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 29,
    "heading": "2026-04-02 20:04:42 AREA: G",
    "published_at": "2026-04-02 20:04:42",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA0__+ 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 GA0__+ 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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "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"
  }
]