[
  {
    "index": 1,
    "heading": "2026-04-03 20:09:35 AREA: G",
    "published_at": "2026-04-03 20:09:35",
    "area": "G",
    "message_id": "GA899",
    "text": "ZCZC GA899\n+(9,.1._:0+56.\nY_UF_M_SZHFM_F_M_YB_PMDJ_TUAWOMRN 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "clean_text": "ZCZC GA899\n+(9,.1._:0+56.\nY_UF_M_SZHFM_F_M_YB_PMDJ_TUAWOMRN 001-21.1W, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text reports a fog signal outage. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Y uf m szhfm f m yb pmdj tuawomrn 001-21.1w, fog signal inoperative",
      "2. cancel wz 39/26 (ga12)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 2,
    "heading": "2026-04-03 20:09:13 AREA: G",
    "published_at": "2026-04-03 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.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": 3,
    "heading": "2026-04-03 20:08:41 AREA: T",
    "published_at": "2026-04-03 20:08:41",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMO_ZCOJGZ_ENKBMFM_YPT_AMONGZYHDMJP__\nTEAL AND GUILLEMOT OIL FIELDS. \nCHART GB 278. \nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHEDMFM_HCU _N 000-46.38E\n NNNN",
    "clean_text": "ZCZCMO_ZCOJGZ_ENKBMFM_YPT_AMONGZYHDMJP__\nTEAL AND GUILLEMOT OIL FIELDS.\nCHART GB 278.\nSAFETY ZONE, RADIUS 500 METRES, ESTABLISHEDMFM_HCU _N 000-46.38E\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: Safety zone, radius 500 metres, establishedmfm hcu n 000-46.38e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Safety zone, radius 500 metres, establishedmfm hcu n 000-46.38e",
      "Teal and guillemot oil fields"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 4,
    "heading": "2026-04-03 20:08:03 AREA: G",
    "published_at": "2026-04-03 20:08:03",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\n__-== :T_EMONGDC_LP__DMONGY_PMLVM_FM__YLZOOONXOHDXES___'8_,-)' 8,9034-58=3: \nA. D01, 53-20.1N 000-49.1E. \nB. S01, 53-7_, 000_\n_+E. \n2. CANCEL WZ 58/\n__ (__0_+). \nNNNN",
    "clean_text": "ZCZC GA61\n__-== :T_EMONGDC_LP__DMONGY_PMLVM_FM__YLZOOONXOHDXES___'8_,-)' 8,9034-58=3:\nA. D01, 53-20.1N 000-49.1E.\nB. S01, 53-7_, 000_\n_+E.\n2. CANCEL WZ 58/\n__ (__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: 2. cancel wz 58/. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel wz 58/"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 5,
    "heading": "2026-04-03 20:07:31 AREA: G",
    "published_at": "2026-04-03 20:07:31",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CA_ WZ _\nVXGA RWLRWLM\nNGONNIIIKZCZC",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CA_ WZ _\nVXGA RWLRWLM\nNGONNIIIKZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "ORWELL GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative",
      "Orwell gas field northwestwards",
      "Vxga rwlrwlm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 6,
    "heading": "2026-04-03 20:07:02 AREA: G",
    "published_at": "2026-04-03 20:07:02",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZV\n__TU_M_NGDC_LP___M\nNGY_PJ_CYMZYHDM_JM_FP_W\n_O_LATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLITCA_DNSSM_FWJMF_Z_PYHF\nPIBMONGONNIIIIZCZC",
    "clean_text": "ZCZC GA74\nWZV\n__TU_M_NGDC_LP___M\nNGY_PJ_CYMZYHDM_JM_FP_W\n_O_LATFORM NORTH 43/26-ST2, 54-03.2N 001-02.0E, UNLITCA_DNSSM_FWJMF_Z_PYHF\nPIBMONGONNIIIIZCZC",
    "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: O latform north 43/26-st2, 54-03.2n 001-02.0e, unlitca dnssm fwjmf z pyhf. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "O latform north 43/26-st2, 54-03.2n 001-02.0e, unlitca dnssm fwjmf z pyhf",
      "Pibmongonniiiizczc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 7,
    "heading": "2026-04-03 20:06:37 AREA: G",
    "published_at": "2026-04-03 20:06:37",
    "area": "G",
    "message_id": "GA81",
    "text": "ZCZC GA81\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROMMFCSS_Y_ZHJMJFHPM_HH_II_KYBYG_M\n_ UC__GUMZ_4. \nNNNN",
    "clean_text": "ZCZC GA81\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROMMFCSS_Y_ZHJMJFHPM_HH_II_KYBYG_M\n_ UC__GUMZ_4.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mf r/t service frommfcss y zhjmjfhpm hh ii kybyg m",
      "Mrcc humber"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 8,
    "heading": "2026-04-03 20:06:13 AREA: G",
    "published_at": "2026-04-03 20:06:13",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N 001-24.5E OFF AIR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 9,
    "heading": "2026-04-03 20:05:45 AREA: G",
    "published_at": "2026-04-03 20:05:45",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N  _ 2193_7.:'!_.2.+_.*!_'.!+_06_!_09,_9,,8887ZCZC",
    "clean_text": "ZCZC GA94\nWZ 220/26\nTYNE.\nBLYTH OFFSHORE DEMONSTRATOR WIND FARM.\nTURBINE B10 55-06.8N _ 2193_7.:'!_.2.+_.*!_'.!+_06_!_09,_9,,8887ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "TYNE"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Turbine b10 55-06.8n 2193 7.:'! .2. . ! '.! 06 ! 09, 9,,8887zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine b10 55-06.8n 2193 7.:'! .2. . ! '.! 06 ! 09, 9,,8887zczc",
      "Blyth offshore demonstrator wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 10,
    "heading": "2026-04-03 20:04:42 AREA: G",
    "published_at": "2026-04-03 20:04:42",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZM\nVKXWY KGA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZM\nVKXWY KGA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2w off air",
      "Mrcc shetland",
      "2. cancel wzm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 11,
    "heading": "2026-04-03 20:04:12 AREA: T",
    "published_at": "2026-04-03 20:04:12",
    "area": "T",
    "message_id": "",
    "text": "ZCZV ___\nWZ 226/2_9,5$:_)_\nBESSEMER GAS FIELD.\n9/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA56'_9,_9,,888(ZCZC",
    "clean_text": "ZCZV ___\nWZ 226/2_9,5$:_)_\nBESSEMER GAS FIELD.\n9/23E, 53-11.9N 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 104/26 (GA56'_9,_9,,888(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 reports a fog signal outage near 53-11.9N 002-29.1E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "9/23e, 53-11.9n 002-29.1e, fog signal inoperative",
      "2. cancel wz 104/26 (ga56' 9, 9,,888(zczc",
      "Bessemer gas field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 12,
    "heading": "2026-04-03 20:03:46 AREA: G",
    "published_at": "2026-04-03 20:03:46",
    "area": "G",
    "message_id": "GA12",
    "text": "ZCZC GA12\nWZ_\nUPUT_EMONGDC_LP_\n_MONGFPYMLV_\nPLAT SOUTHWARK _11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "clean_text": "ZCZC GA12\nWZ_\nUPUT_EMONGDC_LP_\n_MONGFPYMLV_\nPLAT SOUTHWARK _11.0N 002-05.8E UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Plat southwark 11.0n 002-05.8e unlit and all navaids inoperative. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Plat southwark 11.0n 002-05.8e unlit and all navaids inoperative"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 13,
    "heading": "2026-04-03 20:03:11 AREA: G",
    "published_at": "2026-04-03 20:03:11",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/262._!!'_943 28,$ !-4.. \n1. BUOYS UNLIT: \nA. N_=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/262._!!'_943 28,$ !-4..\n1. BUOYS UNLIT:\nA. N_=55-08.1N 002-09.5E.\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (GA50).\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. buoys unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. buoys unlit",
      "2. cancel wz 95/26 (ga50)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 14,
    "heading": "2026-04-03 20:00:14 AREA: G",
    "published_at": "2026-04-03 20:00:14",
    "area": "G",
    "message_id": "GA20",
    "text": "ZCZC GA20\nNAVAREA I 68/26\n1. NAVAREA I WARNINGS IN FORCE AT 031000 UTC A_R 2026:\n\n2026 SERIES: 43, 61, 67, 68.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISDPWMPAMUPPVMYPM_CLSFIIIWEEKLY EDITIONS OF THE ADMIRALTY NOTICES TO MARIN_BULLETIN (ANMBQSMONONGL_NAVA_CWARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATE_M_F_PD_PWM_YZCM_(EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\n\nC. THE COMPLETE TEXTS OF ALL IN-FORCE NAVARE I WA_RNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEING BROA_CAST, ARE REPRINTEWMFMJP_HFZMFFFMZ_M__IICIN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILLSPM_YZBMHDPMC_DZM_PLJFHPMH_HTTPS://MSI.A_KA_FYSH_.UK/RADP_NAVIGATIONALWARNINGS.\n\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR AT: NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCELVFAVAREA I 62/26 (EAG_ULKGA13)(OA74).\nNNNN",
    "clean_text": "ZCZC GA20\nNAVAREA I 68/26\n1. NAVAREA I WARNINGS IN FORCE AT 031000 UTC A_R 2026:\n\n2026 SERIES: 43, 61, 67, 68.\n\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISDPWMPAMUPPVMYPM_CLSFIIIWEEKLY EDITIONS OF THE ADMIRALTY NOTICES TO MARIN_BULLETIN (ANMBQSMONONGL_NAVA_CWARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATE_M_F_PD_PWM_YZCM_(EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\n\nC. THE COMPLETE TEXTS OF ALL IN-FORCE NAVARE I WA_RNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEING BROA_CAST, ARE REPRINTEWMFMJP_HFZMFFFMZ_M__IICIN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILLSPM_YZBMHDPMC_DZM_PLJFHPMH_HTTPS://MSI.A_KA_FYSH_.UK/RADP_NAVIGATIONALWARNINGS.\n\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR AT: NAVWARNINGS(AT)UKHO.GOV.UK\n\n2. CANCELVFAVAREA I 62/26 (EAG_ULKGA13)(OA74).\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": [
      "1. navarea i warnings in force at 031000 utc a r 2026",
      "A. texts of navarea i warnings isdpwmpamuppvmypm clsfiiiweekly editions of the admiralty notices to marin bulletin (anmbqsmonongl nava cwarnings less than 42 days old (43/26 onward) are promulgate m f pd pwm yzcm (egc) and/or relevant navtex transmitters",
      "C. the complete texts of all in-force navare i wa rnings, including those which are no longer being broa cast, are reprintewmfmjp hfzmfffmz m iicin weeks 1, 13, 26 and 39 and are also availlspm yzbmhdpmc dzm pljfhpmh https://msi.a ka fysh .uk/radp navigationalwarnings"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 16,
    "heading": "2026-04-03 18:30:19 AREA: V",
    "published_at": "2026-04-03 18:30:19",
    "area": "V",
    "message_id": "VA15",
    "text": "ZCZC VA15\n301531 UHMM_XWY \nTHAMES. \nGUNFLEET SAIDS WIND FARM. \n(1_.0N 001-14.6\nFOG SIGNAL\n_NZ_WF\nF_PLBM__CU_CXWY\nGMDSS.\n_.4:: $9=34\nMF R/T_SE_V CE FROM BAWDSEY SITE 51-59.6N 00\n-24.5E OFF AIR_NNCN\n\nUFJZCZC",
    "clean_text": "ZCZC VA15\n301531 UHMM_XWY\nTHAMES.\nGUNFLEET SAIDS WIND FARM.\n(1_.0N 001-14.6\nFOG SIGNAL\n_NZ_WF\nF_PLBM__CU_CXWY\nGMDSS.\n_.4:: $9=34\nMF R/T_SE_V CE FROM BAWDSEY SITE 51-59.6N 00\n-24.5E OFF AIR_NNCN\n\nUFJZCZC",
    "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": [
      "Fog signal",
      "Mf r/t se v ce from bawdsey site 51-59.6n 00",
      "Gunfleet saids wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 18,
    "heading": "2026-04-03 18:18:11 AREA: T",
    "published_at": "2026-04-03 18:18:11",
    "area": "T",
    "message_id": "TA53",
    "text": "ZCZC TA53\n _1*(3_._:__.2_-9,__+**!)'0.0__'+!_0.+__$0.*888_3$\nIN POS 51-36.__$ ,95 59_-,:_94 ,9__59 !8'_ 8! 5_3 =8:8,856.\n\nNNNN",
    "clean_text": "ZCZC TA53\n_1*(3_._:__.2_-9,__+**!)'0.0__'+!_0.+__$0.*888_3$\nIN POS 51-36.__$ ,95 59_-,:_94 ,9__59 !8'_ 8! 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. 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": 19,
    "heading": "2026-04-03 18:17:30 AREA: T",
    "published_at": "2026-04-03 18:17:30",
    "area": "T",
    "message_id": "TA45",
    "text": "ZCZC TA45\n0111 OOSTENDERADIO MSI 311/25\nBE__EZ\nEXPLOSI_OSTON THE LINE BETWEEN POSITIONS 51-20.04N 003-05.47E \n51-20.990N _P\nE_G_X_NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\n___U_\nU_ZCZC",
    "clean_text": "ZCZC TA45\n0111 OOSTENDERADIO MSI 311/25\nBE__EZ\nEXPLOSI_OSTON THE LINE BETWEEN POSITIONS 51-20.04N 003-05.47E\n51-20.990N _P\nE_G_X_NOT TO ANCHOR NOR TO FISH IN THE VICINITY.\n___U_\nU_ZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions near 51-20.04N 003-05.47E, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "E g x not to anchor nor to fish in the vicinity",
      "Explosi oston the line between positions 51-20.04n 003-05.47e",
      "0111 oostenderadio msi 311/25"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 20,
    "heading": "2026-04-03 18:16:52 AREA: T",
    "published_at": "2026-04-03 18:16:52",
    "area": "T",
    "message_id": "TA79",
    "text": "ZCZC TA79\n270420 UTC SEPC_MSI 350/25\nOOS__NDE3ZEEBRUGGE\nCHAIN ON TH_ABED IN THE VICINIT\nMZ.)_ _-___5N 00_-__,75E\nSHIPPING IS REQUESTED NOT TO ANCH__MONGZYMHZMICK_!_$.!._$0.__!+R_Z_UZCZC",
    "clean_text": "ZCZC TA79\n270420 UTC SEPC_MSI 350/25\nOOS__NDE3ZEEBRUGGE\nCHAIN ON TH_ABED IN THE VICINIT\nMZ.)_ _-___5N 00_-__,75E\nSHIPPING IS REQUESTED NOT TO ANCH__MONGZYMHZMICK_!_$.!._$0.__!+R_Z_UZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "ZEEBRUGGE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Chain on th abed in the vicinit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Chain on th abed in the vicinit",
      "Oos nde3zeebrugge"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 21,
    "heading": "2026-04-03 18:16:05 AREA: T",
    "published_at": "2026-04-03 18:16:05",
    "area": "T",
    "message_id": "",
    "text": "ZCZC TAO_\nXWJOQY PLYCHYP_NGZLJH_SP_MZMHDPIIU__SZE FOLLOWING POS\n5117.431N  00302.602E\n51_7.259N  00302.007E\nQTQQYMEPRN  0_0+_9__44E\nSHIPPING_IS REQUESTED NOT TO ANCHOR NOR_TO FC_\nUEZCZC",
    "clean_text": "ZCZC TAO_\nXWJOQY PLYCHYP_NGZLJH_SP_MZMHDPIIU__SZE FOLLOWING POS\n5117.431N 00302.602E\n51_7.259N 00302.007E\nQTQQYMEPRN 0_0+_9__44E\nSHIPPING_IS REQUESTED NOT TO ANCHOR NOR_TO FC_\nUEZCZC",
    "display_region_heading": "Unresolved B1 code T",
    "display_region_label": "B1 code T",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code T. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shipping is requested not to anchor nor to fc",
      "Xwjoqy plychyp ngzljh sp mzmhdpiiu sze following pos"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 22,
    "heading": "2026-04-03 18:15:23 AREA: T",
    "published_at": "2026-04-03 18:15:23",
    "area": "T",
    "message_id": "TA02",
    "text": "ZCZC TA02\n0_ 544/24\nOOSTENDE-ZEEBRUGGE\nO_POS\n5115.938N  00258.482K_\n_TQQTMOREN  00258.492E\n_PING IS REQUJSTED NOT TZ ANCHOR NOR TO FISH IN _HE VICINITY\n_NNNN",
    "clean_text": "ZCZC TA02\n0_ 544/24\nOOSTENDE-ZEEBRUGGE\nO_POS\n5115.938N 00258.482K_\n_TQQTMOREN 00258.492E\n_PING IS REQUJSTED NOT TZ ANCHOR NOR TO FISH IN _HE VICINITY\n_NNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Ping is requjsted not tz anchor nor to fish in he vicinity. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ping is requjsted not tz anchor nor to fish in he vicinity",
      "Oostende-zeebrugge",
      "Tqqtmoren 00258.492e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 23,
    "heading": "2026-04-03 18:13:56 AREA: T",
    "published_at": "2026-04-03 18:13:56",
    "area": "T",
    "message_id": "",
    "text": "ZCZCMH_P_YDROGR_P_ICAL INSTRUMENT ESTABLI_HED I_S 51-2_-663N 003-06,817E  UN_AY_PWONGJDFJIKK0.2!*__1.2.+_._+._$+6.+6._!*$.!.+$0_\n!/!___9,_,_+_!!_____+*+:._7:\n__!1002 UTC MA_ \nOOSTENDERADIO MSI 130/26\nOOSTE\n_AU_EEBRUGGE\nOBST_CLES ON THE SEABED\nI._+'_+_!.__281N 0_2TYNTTEE\nSHI\nPINUG IS REQUESTED NOT TO ANCHOR NOR FISH_IN _H VICINITY\n\n\nNNNN",
    "clean_text": "ZCZCMH_P_YDROGR_P_ICAL INSTRUMENT ESTABLI_HED I_S 51-2_-663N 003-06,817E UN_AY_PWONGJDFJIKK0.2!*__1.2.+_._+._$+6.+6._!*$.!.+$0_\n!/!___9,_,_+_!!_____+*+:._7:\n__!1002 UTC MA_\nOOSTENDERADIO MSI 130/26\nOOSTE\n_AU_EEBRUGGE\nOBST_CLES ON THE SEABED\nI._+'_+_!.__281N 0_2TYNTTEE\nSHI\nPINUG IS REQUESTED NOT TO ANCHOR NOR FISH_IN _H VICINITY\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. Readable text sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Pinug is requested not to anchor nor fish in h vicinity",
      "Obst cles on the seabed"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 24,
    "heading": "2026-04-03 18:13:21 AREA: T",
    "published_at": "2026-04-03 18:13:21",
    "area": "T",
    "message_id": "TA13",
    "text": "ZCZC TA13\n262038 U _ MAA_\nOOSTENDERANLO_ L\nQ__Y_C_Y\nVAARGEKL _\nLIGHTBUOY VG5,_5 _N 002-56.78'3 $48!5_,_ \nSHIPPING IS REQUEST_D TO REPORT SIGHTI_G UARD\n_NNNN",
    "clean_text": "ZCZC TA13\n262038 U _ MAA_\nOOSTENDERANLO_ L\nQ__Y_C_Y\nVAARGEKL _\nLIGHTBUOY VG5,_5 _N 002-56.78'3 $48!5_,_\nSHIPPING IS REQUEST_D TO REPORT SIGHTI_G UARD\n_NNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Lightbuoy vg5, 5 n 002-56.78'3 $48!5. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Lightbuoy vg5, 5 n 002-56.78'3 $48!5",
      "Shipping is request d to report sighti g uard",
      "Oostenderanlo l"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 25,
    "heading": "2026-04-03 18:10:55 AREA: T",
    "published_at": "2026-04-03 18:10:55",
    "area": "T",
    "message_id": "",
    "text": "ZCZCUTAXJU\n!3**_1__2(-_*_02062!_.9:(\n_19_/26\nTSS-_20*_$!2069,_'!)6_!+.)08_'57,2\n_4E\nSHUPPICMED NOTTO ANCHO_ _OR TO F_SZ \n_IVICCNITY\nNNNN",
    "clean_text": "ZCZCUTAXJU\n!3**_1__2(-_*_02062!_.9:(\n_19_/26\nTSS-_20*_$!2069,_'!)6_!+.)08_'57,2\n_4E\nSHUPPICMED NOTTO ANCHO_ _OR TO F_SZ\n_IVICCNITY\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: Shuppicmed notto ancho or to f sz. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Shuppicmed notto ancho or to f sz",
      "Zczcutaxju",
      "Iviccnity"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 26,
    "heading": "2026-04-03 18:10:19 AREA: T",
    "published_at": "2026-04-03 18:10:19",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_ TA_\n0$1437 _TC APR\nOOSTENDERADI_ _XWY \nEE\n_N THE SEABED 51-27.16N 0____3,//'0U_U_OJ_LMU_I_P_U_YZWFHO__D_T_W_WWAJZCZC",
    "clean_text": "ZCZ_ TA_\n0$1437 _TC APR\nOOSTENDERADI_ _XWY\nEE\n_N THE SEABED 51-27.16N 0____3,//'0U_U_OJ_LMU_I_P_U_YZWFHO__D_T_W_WWAJZCZC",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium - Belgian coast and southern North Sea. Readable text says: Oostenderadi xwy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Oostenderadi xwy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 27,
    "heading": "2026-04-03 18:08:04 AREA: S",
    "published_at": "2026-04-03 18:08:04",
    "area": "S",
    "message_id": "SE68",
    "text": "ZCZC SE68\n031500 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\n(28,$: SOUTH 9 IZ_SSEM_CMGJDF_HF_M_PJHMHZMZY\nD_PE_PO G_FJFLFSFH__HKNK_OWER WITH PARTLY POOR\n_IFI_FSF\nD__\nSEA: 3 METER.\n\nSATURDAY:\n___!__534)6 28,$' 6, LOCALLY 7, FOR A TIMPM_IESKQ4_RBQ__$)SOUTH LATER.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METVYLMG_PJHPYM_YHMSHPYM_PMG_PH_\nNNNN",
    "clean_text": "ZCZC SE68\n031500 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\n(28,$: SOUTH 9 IZ_SSEM_CMGJDF_HF_M_PJHMHZMZY\nD_PE_PO G_FJFLFSFH__HKNK_OWER WITH PARTLY POOR\n_IFI_FSF\nD__\nSEA: 3 METER.\n\nSATURDAY:\n___!__534)6 28,$' 6, LOCALLY 7, FOR A TIMPM_IESKQ4_RBQ__$)SOUTH LATER.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METVYLMG_PJHPYM_YHMSHPYM_PMG_PH_\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: locally shower with poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: locally shower with poor visibility",
      "Weatherforecast for german bight",
      "031500 navtex-hamburg (ncc)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 28,
    "heading": "2026-04-03 18:07:26 AREA: S",
    "published_at": "2026-04-03 18:07:26",
    "area": "S",
    "message_id": "SA34",
    "text": "ZCZC SA34\nNCC-HAMBURG\n_PTPOEP UTC MAR 26\nNA__M WARN. NO. 129\nTSS\nGVY_MLF_DHM_PJHPYM_ACH\n'GW/EMS' LIGH\n-VESSEL 54-10N 006-21E TEMPORARILY REMZVED\nNNNN",
    "clean_text": "ZCZC SA34\nNCC-HAMBURG\n_PTPOEP UTC MAR 26\nNA__M WARN. NO. 129\nTSS\nGVY_MLF_DHM_PJHPYM_ACH\n'GW/EMS' LIGH\n-VESSEL 54-10N 006-21E TEMPORARILY REMZVED\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: -vessel 54-10n 006-21e temporarily remzved. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "-vessel 54-10n 006-21e temporarily remzved",
      "Ptpoep utc mar 26",
      "Ncc-hamburg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 29,
    "heading": "2026-04-03 18:06:52 AREA: S",
    "published_at": "2026-04-03 18:06:52",
    "area": "S",
    "message_id": "SA75",
    "text": "ZCZC SA75\nNCC-HAMBURG\n2:HMGVHXM_Y_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUIST.\n 'JUIST-N'  LIGHTBUOY  5_66_..\n_EHHGPM_FJJF__NNNN",
    "clean_text": "ZCZC SA75\nNCC-HAMBURG\n2:HMGVHXM_Y_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUIST.\n'JUIST-N' LIGHTBUOY 5_66_..\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: 'juist-n' lightbuoy 5 66. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'juist-n' lightbuoy 5 66",
      "East frisian islands.juist",
      "Nav. warn. no. 183"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 30,
    "heading": "2026-04-03 18:05:39 AREA: S",
    "published_at": "2026-04-03 18:05:39",
    "area": "S",
    "message_id": "SA80",
    "text": "ZCZC SA80\nNCC_BURG\n301330 UTC MAC 26\nNAV. WARN. NO. 189\nEI_ER ESTUARY.\n'EIDER' LIGHTT_Z_MM\nHY__PIAWOE\nTEMPORARILY REPLACED BY UNH_\nMLCZE_NNNN",
    "clean_text": "ZCZC SA80\nNCC_BURG\n301330 UTC MAC 26\nNAV. WARN. NO. 189\nEI_ER ESTUARY.\n'EIDER' LIGHTT_Z_MM\nHY__PIAWOE\nTEMPORARILY REPLACED BY UNH_\nMLCZE_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 says: 'eider' lightt z mm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'eider' lightt z mm",
      "Ei er estuary",
      "Temporarily replaced by unh"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 32,
    "heading": "2026-04-03 18:01:57 AREA: S",
    "published_at": "2026-04-03 18:01:57",
    "area": "S",
    "message_id": "SA85",
    "text": "ZCZC SA85\nNCC-HAMBURG\n020610 UTC AN__\n_NAV. WARN. NO. 196\nGER_AN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BY\nVZ\nM\nJGZ_PMYPJPY_DPY_J_G_JM\nJGSWSJ_JMGYZCWMJ_J9!+9,__6_00_.\n!__(_6__09,_60*_6!__0_._+0:_6)!'!__.2:6!_.+PYHFZJ_SAFE_TH OF 1 NM REQUESTED.\nNNNN",
    "clean_text": "ZCZC SA85\nNCC-HAMBURG\n020610 UTC AN__\n_NAV. WARN. NO. 196\nGER_AN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BY\nVZ\nM\nJGZ_PMYPJPY_DPY_J_G_JM\nJGSWSJ_JMGYZCWMJ_J9!+9,__6_00_.\n!__(_6__09,_60*_6!__0_._+0:_6)!'!__.2:6!_.+PYHFZJ_SAFE_TH OF 1 NM REQUESTED.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NCC HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Uxo survey by. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Uxo survey by",
      "Ger an bight. northwesterly owf 'bard offshore 1'",
      "Nav. warn. no. 196"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 33,
    "heading": "2026-04-03 18:00:13 AREA: S",
    "published_at": "2026-04-03 18:00:13",
    "area": "S",
    "message_id": "",
    "text": "ZCZC SA8_9,_/__-._74_\n030615 UTC APR 26\nNAV. WARN. NO..:++\n,\n_9=__-=53/- AREA (S) WARNINGS IN FORCE AT 030615 UTC APR 26:\n2026:  1_83 187 189 191 192 194 196\nNOTES:\nA. _,-=53/- AREAV_CGJLSV_AYF_OGS LESS THAN 42 DAYS CPF__ ONWARD) ARE\nPROMULGATED\nBY NAVTEX TRANJMFHHPYM_FPLPY_ON_L__ COMPLE\n_XTS OF ALL IN- FORCE NAVTEX- AREA _KS) _2-4,8,_',\nINCLUDING THOSE WHICH ARE NO\nLONGER BEING BROADCAST, ARE AVAILABLE FRZBMHDPMLJDM_PLJFHPMH_WWW2.BSH.DE/AKTDAT/NWN/NWN-FZYWDF\nWWW2.BSH.DE/AKTDAT/NWN/NWN-OT.PDF\n2. CANCEL NAV. WA__PO O_BM __OONGONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKVKZCZC",
    "clean_text": "ZCZC SA8_9,_/__-._74_\n030615 UTC APR 26\nNAV. WARN. NO..:++\n,\n_9=__-=53/- AREA (S) WARNINGS IN FORCE AT 030615 UTC APR 26:\n2026: 1_83 187 189 191 192 194 196\nNOTES:\nA. _,-=53/- AREAV_CGJLSV_AYF_OGS LESS THAN 42 DAYS CPF__ ONWARD) ARE\nPROMULGATED\nBY NAVTEX TRANJMFHHPYM_FPLPY_ON_L__ COMPLE\n_XTS OF ALL IN- FORCE NAVTEX- AREA _KS) _2-4,8,_',\nINCLUDING THOSE WHICH ARE NO\nLONGER BEING BROADCAST, ARE AVAILABLE FRZBMHDPMLJDM_PLJFHPMH_WWW2.BSH.DE/AKTDAT/NWN/NWN-FZYWDF\nWWW2.BSH.DE/AKTDAT/NWN/NWN-OT.PDF\n2. CANCEL NAV. WA__PO O_BM __OONGONNKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKVKZCZC",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code S. Readable text says: A. ,- 53/- areav cgjlsv ayf ogs less than 42 days cpf onward) are. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A. ,- 53/- areav cgjlsv ayf ogs less than 42 days cpf onward) are",
      "Xts of all in- force navtex- area ks) 2-4,8, '",
      "Longer being broadcast, are available frzbmhdpmljdm pljfhpmh www2.bsh.de/aktdat/nwn/nwn-fzywdf"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 34,
    "heading": "2026-04-03 17:41:24 AREA: P",
    "published_at": "2026-04-03 17:41:24",
    "area": "P",
    "message_id": "PA34",
    "text": "ZCZC PA34\n1417143753__-*+_MSI 310/25\nBUOY HWP14 IN 52-40N 003-56E TEMPORARILY WITHDRAWN.\nCANCEL MSI 308/25\nNNNN",
    "clean_text": "ZCZC PA34\n1417143753__-*+_MSI 310/25\nBUOY HWP14 IN 52-40N 003-56E TEMPORARILY WITHDRAWN.\nCANCEL MSI 308/25\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: Buoy hwp14 in 52-40n 003-56e temporarily withdrawn. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Buoy hwp14 in 52-40n 003-56e temporarily withdrawn"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 36,
    "heading": "2026-04-03 17:29:55 AREA: P",
    "published_at": "2026-04-03 17:29:55",
    "area": "P",
    "message_id": "PE79",
    "text": "ZCZC PE79\n031306 UTC APR 26\nFORECAST DUTCH EEZ ISSUED AT 11:07 UTC 030426\nALL DISTRICTS SOUTHWEST 7\n\nSYNOPSIS\nLOW, 981,._+_06._$0._6+06._+_/__-_$2_AEKE(_1,:B_PWMHYZC_DJ_Z_PYMHDPMZYHDMJPM_FS_MBZ_PMPJH_Y_J_\nWEAK RIDGE MOVING TO TDPMJZCHDPYM_YHMZ_MHDPMZYHDMJPMFMONHDNM_EGLGLR_ZAE__KQ_BB_QGB_KE_(1_(0_M_LG_FSSMJHCYWEM_PX__C\n\nTHAMES \nSOUTHWEST 6-7, SOON DECREASING 5-6, LAHPYM_PPYFM_PJ_M_YH_ONG_FYJHMZ_ZSS_MSF_DHMYFMZYMWYFAASP_MGHDPMZ_ONAL \nSHOWER.\nGOOD, IN PRECIPIATION MODERATE, FIRST POSSIBLY POOR AND \nSMALL RISK FOG.\nW_PD_F_DH_\nU__UBH_G_PH_Y_MGSHPYMWP_YPJFM\n __P METER_\n,9,_$:_)06.9,*+:_$_0*_._, SOON DECREASING 5-6, VEERING WEST.\nFIRST OCCASIONALLY LIGHT RAIN OR DRIZZLE, THEN OCCASIONAL \nSHOWER.\nGOOD, IN PRECIPIATION MODERATE, FIRST POSSIBLY POOR AND \nSMALL RISK FOG.\nWAVEHEIGHT 2.0-2.5 METER, LATER DEEUED\nX__CC9)_NR_ZZZENEKB_32$_+1-__2(_1__QKXBU_EKQ3_(,1$__-__-__2(_1__DKP__IRST OCCASIONALLY LIGHT RAIN OR DRIZZLE, THEN OCCASIONAL \nSHOWER.\nGOOD, IN PRECIPIATION MODERTP_MG_FYJHM_ZJJFLSEM_ZZYMWMONJ_SSMYFJVM_\n_2-=3_38__5 2.0-3.0 METER.\n\n\nDOGGER \nSOUTHWEST 6-7, SOON TEMPORARILY DECREASING 4-5, VEERING \nWEST.\nOCCASIONAL SHOWER.\n __++2_._!._60/!_!_!+._+206_0_.__!6*_._+**!)'3._++__WAVEHEIGHT 2.0-3.0 METER.\n\n\nFORECAJ_M_SFWMJHCYWEM_PX_MGHFSSMJHCYWEM_ _X_MG_H_ONONHD_PJMON_BKAQDAE_WKAJ_BK_K_BB_K_B_DECREASING 3-4, BACKING \nSOUTHWEST, LATER INCREASING SOUTH 4-5.\nFIRST RISK OF A SHOWER.\nGOOD.\nWAVEHEIGHT 1.5-2.0 METER, DECREASING 1.0-1.5 METER.\n\n\nHUMBER \nWEST TO NORTHWEST 5-6, SOON DECREASING 4-5, DECREASING 3_, \nLATER INCREASING SOUTH 4-5.\nGOOD.\nWAVEHEIGHT 1.5_7_.3534, DECREASING 1.0-1.5 METER.\n\n\n_EYBMLF_DHMON_PJ_M_YHMGFMHDPMJZCHDPYM_Y_M_HEMGJZZMF_YPJFM___M__JK_EBU_EKQ4_RKD_HKDB_E_GOOD.\nWAVEHEIGHT 2.0-3.0 M934, DECREASING 1.5-2.0 METER.\n\n\nDOGGER \nWEST 5-6, SOON DECREASING 4-5, DECREASING 3-4, LATER \nINCREASING SOUTH 4-5.\nFIRST RISK OF A SHOWER.\nGOOD.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\n\n\n\nNNNN",
    "clean_text": "ZCZC PE79\n031306 UTC APR 26\nFORECAST DUTCH EEZ ISSUED AT 11:07 UTC 030426\nALL DISTRICTS SOUTHWEST 7\n\nSYNOPSIS\nLOW, 981,._+_06._$0._6+06._+_/__-_$2_AEKE(_1,:B_PWMHYZC_DJ_Z_PYMHDPMZYHDMJPM_FS_MBZ_PMPJH_Y_J_\nWEAK RIDGE MOVING TO TDPMJZCHDPYM_YHMZ_MHDPMZYHDMJPMFMONHDNM_EGLGLR_ZAE__KQ_BB_QGB_KE_(1_(0_M_LG_FSSMJHCYWEM_PX__C\n\nTHAMES\nSOUTHWEST 6-7, SOON DECREASING 5-6, LAHPYM_PPYFM_PJ_M_YH_ONG_FYJHMZ_ZSS_MSF_DHMYFMZYMWYFAASP_MGHDPMZ_ONAL\nSHOWER.\nGOOD, IN PRECIPIATION MODERATE, FIRST POSSIBLY POOR AND\nSMALL RISK FOG.\nW_PD_F_DH_\nU__UBH_G_PH_Y_MGSHPYMWP_YPJFM\n__P METER_\n,9,_$:_)06.9,*+:_$_0*_._, SOON DECREASING 5-6, VEERING WEST.\nFIRST OCCASIONALLY LIGHT RAIN OR DRIZZLE, THEN OCCASIONAL\nSHOWER.\nGOOD, IN PRECIPIATION MODERATE, FIRST POSSIBLY POOR AND\nSMALL RISK FOG.\nWAVEHEIGHT 2.0-2.5 METER, LATER DEEUED\nX__CC9)_NR_ZZZENEKB_32$_+1-__2(_1__QKXBU_EKQ3_(,1$__-__-__2(_1__DKP__IRST OCCASIONALLY LIGHT RAIN OR DRIZZLE, THEN OCCASIONAL\nSHOWER.\nGOOD, IN PRECIPIATION MODERTP_MG_FYJHM_ZJJFLSEM_ZZYMWMONJ_SSMYFJVM_\n_2-=3_38__5 2.0-3.0 METER.\n\nDOGGER\nSOUTHWEST 6-7, SOON TEMPORARILY DECREASING 4-5, VEERING\nWEST.\nOCCASIONAL SHOWER.\n__++2_._!._60/!_!_!+._+206_0_.__!6*_._+**!)'3._++__WAVEHEIGHT 2.0-3.0 METER.\n\nFORECAJ_M_SFWMJHCYWEM_PX_MGHFSSMJHCYWEM_ _X_MG_H_ONONHD_PJMON_BKAQDAE_WKAJ_BK_K_BB_K_B_DECREASING 3-4, BACKING\nSOUTHWEST, LATER INCREASING SOUTH 4-5.\nFIRST RISK OF A SHOWER.\nGOOD.\nWAVEHEIGHT 1.5-2.0 METER, DECREASING 1.0-1.5 METER.\n\nHUMBER\nWEST TO NORTHWEST 5-6, SOON DECREASING 4-5, DECREASING 3_,\nLATER INCREASING SOUTH 4-5.\nGOOD.\nWAVEHEIGHT 1.5_7_.3534, DECREASING 1.0-1.5 METER.\n\n_EYBMLF_DHMON_PJ_M_YHMGFMHDPMJZCHDPYM_Y_M_HEMGJZZMF_YPJFM___M__JK_EBU_EKQ4_RKD_HKDB_E_GOOD.\nWAVEHEIGHT 2.0-3.0 M934, DECREASING 1.5-2.0 METER.\n\nDOGGER\nWEST 5-6, SOON DECREASING 4-5, DECREASING 3-4, LATER\nINCREASING SOUTH 4-5.\nFIRST RISK OF A SHOWER.\nGOOD.\nWAVEHEIGHT 2.0-3.0 METER, DECREASING 1.5-2.0 METER.\n\nNNNN",
    "resolved_station_name": "Netherlands Coastguard Radio",
    "resolved_country": "Netherlands",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Dutch EEZ and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "DUTCH EEZ"
    ],
    "display_region_heading": "Netherlands - Dutch EEZ and southern North Sea",
    "display_region_label": "Netherlands Coastguard Radio, Netherlands",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Netherlands - Dutch EEZ and southern North Sea. This is a weather bulletin; readable sections mention fog, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "First occasionally light rain or drizzle, then occasional",
      "X cc9) nr zzzenekb 32$ 1- 2( 1 qkxbu ekq3 (,1$ - - 2( 1 dkp irst occasionally light rain or drizzle, then occasional",
      "Small risk fog"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 37,
    "heading": "2026-04-03 16:09:33 AREA: G",
    "published_at": "2026-04-03 16:09:33",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMO_ D. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMO_ D.\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 remo d.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily remo d",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 38,
    "heading": "2026-04-03 16:09:02 AREA: G",
    "published_at": "2026-04-03 16:09:02",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n_19_.\n74_8,0.$*_-._:7+_6__._01-21.1W_N FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "clean_text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n_19_.\n74_8,0.$*_-._:7+_6__._01-21.1W_N FOG SIGNAL INOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CROMARTY"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "74 8,0.$ -. :7 6 . 01-21.1w n fog signal inoperative",
      "Cromarty",
      "Hywind floating wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 39,
    "heading": "2026-04-03 16:08:39 AREA: G",
    "published_at": "2026-04-03 16:08:39",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEZNMJZCHDMLCZEM__P_TN 007-5.6E UNLIT. \nNNNN",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEZNMJZCHDMLCZEM__P_TN 007-5.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 wind farm.",
    "decoded_highlights": [
      "Dudgeon wind farm",
      "Dudgeznmjzchdmlczem p tn 007-5.6e unlit"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 40,
    "heading": "2026-04-03 16:08:02 AREA: G",
    "published_at": "2026-04-03 16:08:02",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ _QK_B_\nHUMBER. \nNACE BANK WIND FARM. 9 ,3 !9_ '8_,-)' 8,9034-58=3_:\nA. D01, 53-20.1N 000-49.1E. \nBQO\nDMVK_NMH_G M_CGXM\nDZ_HZVC_DV_J_IJE\n_KNDKH_WY K__J29). \nNNNN",
    "clean_text": "ZCZC GA61\nWZ _QK_B_\nHUMBER.\nNACE BANK WIND FARM. 9 ,3 !9_ '8_,-)' 8,9034-58=3_:\nA. D01, 53-20.1N 000-49.1E.\nBQO\nDMVK_NMH_G M_CGXM\nDZ_HZVC_DV_J_IJE\n_KNDKH_WY K__J29).\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. 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 16:07:30 AREA: G",
    "published_at": "2026-04-03 16:07:30",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FCELD NORTZAADTW_RDS.\n_ MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GATCWA_ONGONNII_AZCZC",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FCELD NORTZAADTW_RDS.\n_ MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GATCWA_ONGONNII_AZCZC",
    "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: Met mast 53-10.7n 002-59.1e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Met mast 53-10.7n 002-59.1e unlit and all navaids inoperative",
      "2. cancel wz 82/26 (gatcwa ongonnii azczc",
      "Orwell gas fceld nortzaadtw rds"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 42,
    "heading": "2026-04-03 16:05:44 AREA: T",
    "published_at": "2026-04-03 16:05:44",
    "area": "T",
    "message_id": "",
    "text": "ZCZCNGA94\n2+ 220/26\nTYNE_M\nBL_T\n OFFSHORE DEM_JHY_Z_NI__BMYBP_LFPMLHX__YMIN 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\n_NRHNL_+_-\n____7.+: _-83\nWZBNWKBN_KQTXWY \nSS. 9\n__6_/.___06\n_+! 4/T SERVICE FROM BAW_DK_M_HPM\nH_KZ_N_FF AIR. \nNNNN",
    "clean_text": "ZCZCNGA94\n2+ 220/26\nTYNE_M\nBL_T\nOFFSHORE DEM_JHY_Z_NI__BMYBP_LFPMLHX__YMIN 001-23.6W UNLIT AND FOG SIGNAL INOPERATIVE\n_NRHNL_+_-\n____7.+: _-83\nWZBNWKBN_KQTXWY\nSS. 9\n__6_/.___06\n_+! 4/T SERVICE FROM BAW_DK_M_HPM\nH_KZ_N_FF AIR.\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 fog signal outage. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Offshore dem jhy z ni bmybp lfpmlhx ymin 001-23.6w unlit and fog signal inoperative",
      "! 4/t service from baw dk m hpm",
      "Wzbnwkbn kqtxwy"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 43,
    "heading": "2026-04-03 16:04:41 AREA: G",
    "published_at": "2026-04-03 16:04:41",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA!69___-.\n_7_5_9,___2_\nMRCC SHETLAND\n_\n=_9\n___ !49. _43_,3'' '853 57-07.7N 002-03.2W OFF AIR.\n2. CAN_EL WZ 213/26 (GA80).\nNNNONNI_I_\nU___CZC GA02\nWZ 223/26\nHUMBER. _\nSGOOMZJF_FP___XWUATSVLO_12.6E_ _7,_85 -,$ -)) ,-=-8$' 8,9034-58=3. \n2. CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA!69___-.\n_7_5_9,___2_\nMRCC SHETLAND\n_\n=_9\n___ !49. _43_,3'' '853 57-07.7N 002-03.2W OFF AIR.\n2. CAN_EL WZ 213/26 (GA80).\nNNNONNI_I_\nU___CZC GA02\nWZ 223/26\nHUMBER. _\nSGOOMZJF_FP___XWUATSVLO_12.6E_ _7,_85 -,$ -)) ,-=-8$' 8,9034-58=3.\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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - North Sea and north-east UK coast. Readable text says: 2. can el wz 213/26 (ga80). Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. can el wz 213/26 (ga80)",
      "Mrcc shetland",
      "2. cancel wz 100/26 (ga52)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 44,
    "heading": "2026-04-03 16:03:45 AREA: G",
    "published_at": "2026-04-03 16:03:45",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GAQHUMBER. \nINNER BANK. \nPLATFORM SOUTHWARK 53-8\n.($ 0!T_FG_MCLIT AND ALL NAVAI_SC__ZIPY_O9,L_IIIRLLU_ZXAXMU_CO\nG_AM\nUKE\nCP_WVSNR__BS_Q_\nROEKQB__\n1. PLATFORM 49/23E, __ _, 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. _:-,:3) 2+ 104/26 (GA54).\n,_!!__\n,-ZCZC",
    "clean_text": "ZCZC GAQHUMBER.\nINNER BANK.\nPLATFORM SOUTHWARK 53-8\n.($ 0!T_FG_MCLIT AND ALL NAVAI_SC__ZIPY_O9,L_IIIRLLU_ZXAXMU_CO\nG_AM\nUKE\nCP_WVSNR__BS_Q_\nROEKQB__\n1. PLATFORM 49/23E, __ _, 002-29.1E, FOG SIGNAL INOPERATIVE.\n2. _:-,:3) 2+ 104/26 (GA54).\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",
      "INNER BANK"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. platform 49/23e, , 002-29.1e, fog signal inoperative",
      "Inner bank",
      "Platform southwark 53-8"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 45,
    "heading": "2026-04-03 16:03:10 AREA: T",
    "published_at": "2026-04-03 16:03:10",
    "area": "T",
    "message_id": "",
    "text": "ZCZXM_N _BN_Z_-99!8- 9!!'_943 28,$ !-4.. \n1. BUOYS UNLIT: \nA. NQ_ TTAP__GX_\n_UZ_HHH__OO_MS_N_ 0_27_C_Z 9_(7-S_YV_XY\nNNNN",
    "clean_text": "ZCZXM_N _BN_Z_-99!8- 9!!'_943 28,$ !-4..\n1. BUOYS UNLIT:\nA. NQ_ TTAP__GX_\n_UZ_HHH__OO_MS_N_ 0_27_C_Z 9_(7-S_YV_XY\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: 1. buoys unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. buoys unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 46,
    "heading": "2026-04-03 16:01:58 AREA: G",
    "published_at": "2026-04-03 16:01:58",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GL_PYONMG_S_M_HK3_8 UTC\n\n VIKI_ SEVQCTM_S_M_ZYXPMABHSK__7=__97_7_EKQGEBEK_NB__ET_BD\nI_\nDD_F_S__IISE FORCE 8 VEERING APFHPYS_IIUMMINENT\nHONNINNIIIK_UCZV_XV__L WZ 243/2$\n9___+6_$_\nNEAL_MM_ZK_WINDFARM+=_)/_9-__'_6-14.5N 002-08_-(8RVLR_C_QWQ_W_TYAQWMEN 002-09.8W AFJMFZ_PYHF\nP_BM_\n__M_XKZ\nF_O_EPXWY KGA73). \nNNNN",
    "clean_text": "ZCZC GL_PYONMG_S_M_HK3_8 UTC\n\nVIKI_ SEVQCTM_S_M_ZYXPMABHSK__7=__97_7_EKQGEBEK_NB__ET_BD\nI_\nDD_F_S__IISE FORCE 8 VEERING APFHPYS_IIUMMINENT\nHONNINNIIIK_UCZV_XV__L WZ 243/2$\n9___+6_$_\nNEAL_MM_ZK_WINDFARM+=_)/_9-__'_6-14.5N 002-08_-(8RVLR_C_QWQ_W_TYAQWMEN 002-09.8W AFJMFZ_PYHF\nP_BM_\n__M_XKZ\nF_O_EPXWY KGA73).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code G. Readable text says: Dd f s iise force 8 veering apfhpys iiumminent. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Dd f s iise force 8 veering apfhpys iiumminent"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 50,
    "heading": "2026-04-03 14:30:19 AREA: V",
    "published_at": "2026-04-03 14:30:19",
    "area": "V",
    "message_id": "VA76",
    "text": "ZCZC VA76\n031007 UTC APR 2026 \nWZ 247/26 \n1_ WZ MESSAGES IN FORCE (NAVTEX NUMBERS)(SEA _ AT 051000 UTC APR 2026: \n143/26 (GA82)(1) \n_3 573.=__!+!.*.971/26 (GA96)(4) \n180/26 (GA61)(4) \n182/26 (EA21)(9) \n183/26 (VA63)(5) \n1,_\n1975-3.=_) \n204/26 (GA71)(4) \n207/26 (GA74)(4) \n214/26 (GA81)(2-4) \n_/26 (EA40)(GA83)(VA69)(4-6) \n220/26 (GA94)(3) \n221/26 (GA15)(3) \n223/26 (GA02)(4-5) \n225/26 (GA04)(1-3) \n226/26 (GA07)(4) \n02_,_03.=_+ :\n_\n./*9_CNCHKPO_HECNMKE\nR_EAK__A_LKIL \n240/26 (EA49) \n242/26 (VA75)(5) \n5277__3_=___ !_=_'._,_/26 (Z_N__ HSMON_CANCEL THIS MSG.\nNNNN",
    "clean_text": "ZCZC VA76\n031007 UTC APR 2026\nWZ 247/26\n1_ WZ MESSAGES IN FORCE (NAVTEX NUMBERS)(SEA _ AT 051000 UTC APR 2026:\n143/26 (GA82)(1)\n_3 573.=__!+!.*.971/26 (GA96)(4)\n180/26 (GA61)(4)\n182/26 (EA21)(9)\n183/26 (VA63)(5)\n1,_\n1975-3.=_)\n204/26 (GA71)(4)\n207/26 (GA74)(4)\n214/26 (GA81)(2-4)\n_/26 (EA40)(GA83)(VA69)(4-6)\n220/26 (GA94)(3)\n221/26 (GA15)(3)\n223/26 (GA02)(4-5)\n225/26 (GA04)(1-3)\n226/26 (GA07)(4)\n02_,_03.=_+ :\n_\n./*9_CNCHKPO_HECNMKE\nR_EAK__A_LKIL\n240/26 (EA49)\n242/26 (VA75)(5)\n5277__3_=___ !_=_'._,_/26 (Z_N__ HSMON_CANCEL THIS MSG.\nNNNN",
    "display_region_heading": "Unresolved B1 code V",
    "display_region_label": "B1 code V",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code V. The received text is too corrupted to decode safely. No reliable plain-language extraction was possible.",
    "decoded_highlights": [],
    "decoded_status": "raw",
    "decoded_status_label": "Low-confidence raw text"
  },
  {
    "index": 56,
    "heading": "2026-04-03 14:14:10 AREA: T",
    "published_at": "2026-04-03 14:14:10",
    "area": "T",
    "message_id": "TA13",
    "text": "ZCZC TA13\n262038 UTC MARM\nNGZZJHPWPYW-_19MNCHKP_AARGEUL 1 \n/)8_,__+3.\n____ 76_:0_88_002-56.78_0.2_!__!_.9,_*$!$_ 8' ___:0*_02._+.60_+6_.*!_$___.9,__+.+*_02._+___:629,_9888__ZCZC",
    "clean_text": "ZCZC TA13\n262038 UTC MARM\nNGZZJHPWPYW-_19MNCHKP_AARGEUL 1\n/)8_,__+3.\n____ 76_:0_88_002-56.78_0.2_!__!_.9,_*$!$_ 8' ___:0*_02._+.60_+6_.*!_$___.9,__+.+*_02._+___:629,_9888__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: Ngzzjhpwpyw- 19mnchkp aargeul 1. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Ngzzjhpwpyw- 19mnchkp aargeul 1"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 57,
    "heading": "2026-04-03 14:13:41 AREA: T",
    "published_at": "2026-04-03 14:13:41",
    "area": "T",
    "message_id": "TA16",
    "text": "ZCZC TA16\n2+____=_ .-4\nOOSTENDERADIO MSI 134/26\nTSS-WESTHINDER\nM/V ST. CLEMENS\nANCHOR AND CHAIN LOST IN POS 51-24.40N _02-39.57E\n\nNNNN",
    "clean_text": "ZCZC TA16\n2+____=_ .-4\nOOSTENDERADIO MSI 134/26\nTSS-WESTHINDER\nM/V ST. CLEMENS\nANCHOR AND CHAIN LOST IN POS 51-24.40N _02-39.57E\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Anchor and chain lost in pos 51-24.40n 02-39.57e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Anchor and chain lost in pos 51-24.40n 02-39.57e",
      "Tss-westhinder",
      "M/v st. clemens"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 61,
    "heading": "2026-04-03 14:10:20 AREA: T",
    "published_at": "2026-04-03 14:10:20",
    "area": "T",
    "message_id": "TA26",
    "text": "ZCZC TA26\n031100 UTC__\nOOSTENDERADIO MSI IN FOR_E 14/26\n__ MSI IN FORCE (_AVTTX NUMBERS) AT 031100 M___YMNKA____$_0_44*2_23)\nMSI 143 (TA22)\n_ 142 (TA21)\nMSI 134 (TA16)\nMSI 132 (TA13) \nM___SP_S_IXG_VQ_ZE KTA11)\nMSI 119 (TA04)\nMSI 107 (TA87)\nMSI 101 (TA81)\nMSI 027\n=___++9,__*!._6:3___..____$_*+_=__,90_(_+_85)\nMSI 350/25 ($5-79)\nMSI 311/25 (TA45)\nMSI 544/24 (TA02) \nMSI 543/24 (TA96) \nMSI 189/_, !5-19)\n\n2. CANCEL THIS MSG\nNNNN",
    "clean_text": "ZCZC TA26\n031100 UTC__\nOOSTENDERADIO MSI IN FOR_E 14/26\n__ MSI IN FORCE (_AVTTX NUMBERS) AT 031100 M___YMNKA____$_0_44*2_23)\nMSI 143 (TA22)\n_ 142 (TA21)\nMSI 134 (TA16)\nMSI 132 (TA13)\nM___SP_S_IXG_VQ_ZE KTA11)\nMSI 119 (TA04)\nMSI 107 (TA87)\nMSI 101 (TA81)\nMSI 027\n=___++9,__*!._6:3___..____$_*+_=__,90_(_+_85)\nMSI 350/25 ($5-79)\nMSI 311/25 (TA45)\nMSI 544/24 (TA02)\nMSI 543/24 (TA96)\nMSI 189/_, !5-19)\n\n2. CANCEL THIS MSG\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Oostenderadio msi in for e 14/26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Oostenderadio msi in for e 14/26",
      "2. cancel this msg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 62,
    "heading": "2026-04-03 14:08:03 AREA: S",
    "published_at": "2026-04-03 14:08:03",
    "area": "S",
    "message_id": "SE67",
    "text": "ZCZC SE67\n031100 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST JOR GERMMLF_DHONONG_YF_E_WIND: SOU_SV_$._'+_''3._:._*$!__!._0*_._+.+6_$_0_\nVISIBILITY/WEHDPY_RAIN OR SHOWER_H PARTLY POO_M_FJFLFSFHE_SEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS 6, LOCALLY 7, FOR A TIME DACRAASIN_ 4, SHIFTING\nSOUTH LATER.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METER, WESTERN PART LATER 3 METER.\nNNNN",
    "clean_text": "ZCZC SE67\n031100 NAVTEX-HAMBURG (NCC)\n\nWEATHERFORECAST JOR GERMMLF_DHONONG_YF_E_WIND: SOU_SV_$._'+_''3._:._*$!__!._0*_._+.+6_$_0_\nVISIBILITY/WEHDPY_RAIN OR SHOWER_H PARTLY POO_M_FJFLFSFHE_SEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS 6, LOCALLY 7, FOR A TIME DACRAASIN_ 4, SHIFTING\nSOUTH LATER.\nVISIBILITY/WEATHER: LOCALLY SHOWER WITH POOR VISIBILITY.\nSEA: 2,5 METER, WESTERN PART LATER 3 METER.\nNNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "NAVTEX HAMBURG"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. Readable text says: Visibility/weather: locally shower with poor visibility. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Visibility/weather: locally shower with poor visibility",
      "Visibility/wehdpy rain or shower h partly poo m fjflfsfhe sea: 3 meter",
      "Weatherforecast jor germmlf dhonong yf e wind: sou sv $. ' ''3. :. $! !. 0 . . 6 $ 0"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 64,
    "heading": "2026-04-03 14:06:51 AREA: S",
    "published_at": "2026-04-03 14:06:51",
    "area": "S",
    "message_id": "SA75",
    "text": "ZCZC SA75\nNCC-HOLCY_ON\nUC_HMG_HM_Y_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUIST.\n 'JUI_T_AN'  LIGHTBUOY  53-44N  006-55E MISSING.\nNNNN",
    "clean_text": "ZCZC SA75\nNCC-HOLCY_ON\nUC_HMG_HM_Y_\n_NAV. WARN. NO. 183\nEAST FRISIAN ISLANDS.JUIST.\n'JUI_T_AN' LIGHTBUOY 53-44N 006-55E MISSING.\nNNNN",
    "display_region_heading": "Unresolved B1 code S",
    "display_region_label": "B1 code S",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code S. Readable text says: 'jui t an' lightbuoy 53-44n 006-55e missing. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "'jui t an' lightbuoy 53-44n 006-55e missing",
      "East frisian islands.juist",
      "Nav. warn. no. 183"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 69,
    "heading": "2026-04-03 14:02:52 AREA: S",
    "published_at": "2026-04-03 14:02:52",
    "area": "S",
    "message_id": "SA83",
    "text": "ZCZC SA83\nNCC-HAMBURG\n0204_5: -04 26\nNAV. ___NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY ZVERATIONS BY MV 'FUGRO SYNERGY*=__*.\n*_/_3_56_0*9,_6+:2._+*!_!+.__66:0_.\n_58,3E\nRESTRICTED MANOEVYLFSFH_MWCYF_MZPYHFZJ_ONIIIOF 2__MYP_CPJHPW_NNNN",
    "clean_text": "ZCZC SA83\nNCC-HAMBURG\n0204_5: -04 26\nNAV. ___NO. 194\nGERMAN BIGHT. WEISSE BANK.\nSURVEY ZVERATIONS BY MV 'FUGRO SYNERGY*=__*.\n*_/_3_56_0*9,_6+:2._+*!_!+.__66:0_.\n_58,3E\nRESTRICTED MANOEVYLFSFH_MWCYF_MZPYHFZJ_ONIIIOF 2__MYP_CPJHPW_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: Survey zverations by mv 'fugro synergy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Survey zverations by mv 'fugro synergy",
      "Restricted manoevylfsfh mwcyf mzpyhfzj oniiiof 2 myp cpjhpw nnnn",
      "German bight. weisse bank"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 71,
    "heading": "2026-04-03 13:29:55 AREA: P",
    "published_at": "2026-04-03 13:29:55",
    "area": "P",
    "message_id": "PB31",
    "text": "ZCZC PB31\n030728 UTC APR 26\nGALEWARNING, 03 APR 07:25 UTC.\nDOGGER. GERMAMLF_DH\n_MG_C_LP__THAMES. DOVER.\nSOUTHWEST ,\n,99,9,9,_9,,(((((((((((((((((7_4_,2_\n!4,__\n7_+: '-86\nNCC-HAMBURG\n030615 UTC APR 26\nNAV. WARN. NO. 199\n1. NAVTX- AREA (S) WANGS IN FORCE AT 030615 UTC APN 26:\n2026:  129 183 187 189 191 192 194 196\nNOTES:\nA. NAVTEXV_ AREA (S) W_MFO_S LESS THAN 42 DAYS OLZ_\nV_UZMGZ_YW_SMGYPONIIICKG_ZBCSHPWONGL_M_HPTMHYJ_FHHPYM_FPLPY_ON_L_HE COMPLETE TEXTS OF ALL IN- FORCE NAVTEX- __6)_=_) WARNINGS,\nINCLUDING THOSE WHICH ARE NO\nLONGER BEING BROADCAST, ARE AVAILABLE FRO_MHDPMLJDM_PLJFHPMHI_ONKIIKW2.BSH.DE/AKTDAT/NWN/_7__+62___W_ON_2.BSH.DE/AKTDAT/NWN/NWN-OST.PDF\n2. CANCEL NAV. WARN_NO. 182.\nNNNN",
    "clean_text": "ZCZC PB31\n030728 UTC APR 26\nGALEWARNING, 03 APR 07:25 UTC.\nDOGGER. GERMAMLF_DH\n_MG_C_LP__THAMES. DOVER.\nSOUTHWEST ,\n,99,9,9,_9,,(((((((((((((((((7_4_,2_\n!4,__\n7_+: '-86\nNCC-HAMBURG\n030615 UTC APR 26\nNAV. WARN. NO. 199\n1. NAVTX- AREA (S) WANGS IN FORCE AT 030615 UTC APN 26:\n2026: 129 183 187 189 191 192 194 196\nNOTES:\nA. NAVTEXV_ AREA (S) W_MFO_S LESS THAN 42 DAYS OLZ_\nV_UZMGZ_YW_SMGYPONIIICKG_ZBCSHPWONGL_M_HPTMHYJ_FHHPYM_FPLPY_ON_L_HE COMPLETE TEXTS OF ALL IN- FORCE NAVTEX- __6)_=_) WARNINGS,\nINCLUDING THOSE WHICH ARE NO\nLONGER BEING BROADCAST, ARE AVAILABLE FRO_MHDPMLJDM_PLJFHPMHI_ONKIIKW2.BSH.DE/AKTDAT/NWN/_7__+62___W_ON_2.BSH.DE/AKTDAT/NWN/NWN-OST.PDF\n2. CANCEL NAV. WARN_NO. 182.\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: V uzmgz yw smgyponiiickg zbcshpwongl m hptmhyj fhhpym fplpy on l he complete texts of all in- force navtex- 6) ) warnings. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "V uzmgz yw smgyponiiickg zbcshpwongl m hptmhyj fhhpym fplpy on l he complete texts of all in- force navtex- 6) ) warnings",
      "Galewarning, 03 apr 07:25 utc",
      "A. navtexv area (s) w mfo s less than 42 days olz"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 72,
    "heading": "2026-04-03 12:51:49 AREA: G",
    "published_at": "2026-04-03 12:51:49",
    "area": "G",
    "message_id": "GB34",
    "text": "ZCZC GB34\n GALE WARNING FRIDAY 03 APRIL 0948 UTC\n\n VIKING\n SEVGDVM_SQM_ZYXPM\nZMGL_G SOUTHERLY AND DECREASING GALE FORCE 8 IMMINENT\n\n FAIR ISLE\n GALE FORCQ _FMG_PPYFM_PJHPYS_II_MMINENT\nNNNN",
    "clean_text": "ZCZC GB34\nGALE WARNING FRIDAY 03 APRIL 0948 UTC\n\nVIKING\nSEVGDVM_SQM_ZYXPM\nZMGL_G SOUTHERLY AND DECREASING GALE FORCE 8 IMMINENT\n\nFAIR ISLE\nGALE FORCQ _FMG_PPYFM_PJHPYS_II_MMINENT\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code G. Readable text says: Zmgl g southerly and decreasing gale force 8 imminent. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Zmgl g southerly and decreasing gale force 8 imminent",
      "Gale warning friday 03 april 0948 utc",
      "Gale forcq fmg ppyfm pjhpys ii mminent"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 73,
    "heading": "2026-04-03 12:42:57 AREA: K",
    "published_at": "2026-04-03 12:42:57",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\n_-=6/26_\nDOVER 8__$75 =8_-5 _2,)_ :-_589$\nN_NNO\nN__KK_\nUUU_ZCZC",
    "clean_text": "ZCZC KA26\n_-=6/26_\nDOVER 8__$75 =8_-5 _2,)_ :-_589$\nN_NNO\nN__KK_\nUUU_ZCZC",
    "resolved_station_name": "Niton (France relay)",
    "resolved_country": "United Kingdom / France",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Channel Islands and north-east French coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "DOVER"
    ],
    "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. 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": 74,
    "heading": "2026-04-03 12:07:13 AREA: G",
    "published_at": "2026-04-03 12:07:13",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. \nNNNN",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed",
      "Beryl oil field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 75,
    "heading": "2026-04-03 12:06:42 AREA: G",
    "published_at": "2026-04-03 12:06:42",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n_2. CANCEL WZ _EOXWY KGA12).\nNNNN",
    "clean_text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG SIGNAL INOPERATIVE.\n_2. CANCEL WZ _EOXWY KGA12).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CROMARTY"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text reports a fog signal outage near 57-29.4N 001-21.1W.",
    "decoded_highlights": [
      "1. turbine hs2, 57-29.4n 001-21.1w, fog signal inoperative",
      "Cromarty",
      "Hywind floating wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 76,
    "heading": "2026-04-03 12:06:19 AREA: G",
    "published_at": "2026-04-03 12:06:19",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \nHUMBER. \nDUDGEON WIND FARM. \nDUDGEON SOUTH BUOY 53-12.5N 00 7_8_8(_3_0.:'!_ __9,,888_ZCZC",
    "clean_text": "ZCZC GA96\nWZ 171/26\nHUMBER.\nDUDGEON WIND FARM.\nDUDGEON SOUTH BUOY 53-12.5N 00 7_8_8(_3_0.:'!_ __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: Dudgeon south buoy 53-12.5n 00 7 8 8( 3 0.:'! 9,,888 zczc. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Dudgeon south buoy 53-12.5n 00 7 8 8( 3 0.:'! 9,,888 zczc",
      "Dudgeon wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 77,
    "heading": "2026-04-03 12:05:42 AREA: G",
    "published_at": "2026-04-03 12:05:42",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\nWZ 180/26 \nHUMBER. \nRACE BANK WIND FARM_\n1. TCYLFPM+_.*!_'*.!+_06_!_08_((\n/.9,__$01, 53-20.1N 000-49.1K\n_MONGL_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. TCYLFPM+_.*!_'*.!+_06_!_08_((\n/.9,__$01, 53-20.1N 000-49.1K\n_MONGL_S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Mongl s01, 53-15.7n 000-55.9e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Mongl s01, 53-15.7n 000-55.9e",
      "Race bank wind farm",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 78,
    "heading": "2026-04-03 12:05:10 AREA: G",
    "published_at": "2026-04-03 12:05:10",
    "area": "G",
    "message_id": "GA71",
    "text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "clean_text": "ZCZC GA71\nWZ 204/26\nHUMBER.\nORWELL GAS FIELD NORTHWESTWARDS.\n1. MET MAST 53-10.7N 002-59.1E UNLIT AND ALL NAVAIDS INOPERATIVE.\n2. CANCEL WZ 82/26 (GA42).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER",
      "ORWELL GAS FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: 1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative.",
    "decoded_highlights": [
      "1. met mast 53-10.7n 002-59.1e unlit and all navaids inoperative",
      "Orwell gas field northwestwards",
      "2. cancel wz 82/26 (ga42)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 79,
    "heading": "2026-04-03 12:04:40 AREA: G",
    "published_at": "2026-04-03 12:04:40",
    "area": "G",
    "message_id": "GA74",
    "text": "ZCZC GA74\nWZ 207/26 \nHUMBER. \nRAVENSPURN NORTH GAS FIELD. \nPLATFORM NOYHDM_YPT_ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC GA74\nWZ 207/26\nHUMBER.\nRAVENSPURN NORTH GAS FIELD.\nPLATFORM NOYHDM_YPT_ST2, 54-03.2N 001-02.0E, UNLIT AND ALL NAVAIDS INOPERATIVE.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "HUMBER"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Platform noyhdm ypt st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative.",
    "decoded_highlights": [
      "Platform noyhdm ypt st2, 54-03.2n 001-02.0e, unlit and all navaids inoperative",
      "Ravenspurn north gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 80,
    "heading": "2026-04-03 12:04:15 AREA: G",
    "published_at": "2026-04-03 12:04:15",
    "area": "G",
    "message_id": "GAQ",
    "text": "ZCZC GAQ\nWZ 214/26 \nGMDSS. \nMRCC HUMBER. \nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR. \nNNNN",
    "clean_text": "ZCZC GAQ\nWZ 214/26\nGMDSS.\nMRCC HUMBER.\nMF R/T SERVICE FROM CULLERCOATS SITE 55-04.4N 001-27.8W OFF AIR.\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "CULLERCOATS"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from cullercoats site 55-04.4n 001-27.8w off air",
      "Mrcc humber"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 81,
    "heading": "2026-04-03 12:03:51 AREA: G",
    "published_at": "2026-04-03 12:03:51",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. \nMRCC DOVER. \nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N \n_ UY_HGPMZ_IR. \nNNNN",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS.\nMRCC DOVER.\nMF R/T SERVICE FROM BAWDSEY SITE 51-59.6N\n_ UY_HGPMZ_IR.\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n",
      "Mrcc dover"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 82,
    "heading": "2026-04-03 12:03:24 AREA: G",
    "published_at": "2026-04-03 12:03:24",
    "area": "G",
    "message_id": "",
    "text": "ZCZC GA94__9\n_20/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__9\n_20/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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice 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": 83,
    "heading": "2026-04-03 12:02:51 AREA: G",
    "published_at": "2026-04-03 12:02:51",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/2 53$ 53-03.6N 002-12.6E, UNLFHMWMSSM_FWJMFZ_PYHF\nP_BM_CANCEL WZ 100/26 (GA52).\nNNNN",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM 49/2 53$ 53-03.6N 002-12.6E, UNLFHMWMSSM_FWJMFZ_PYHF\nP_BM_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/2 53$ 53-03.6n 002-12.6e, unlfhmwmssm fwjmfz pyhf.",
    "decoded_highlights": [
      "1. platform 49/2 53$ 53-03.6n 002-12.6e, unlfhmwmssm fwjmfz pyhf",
      "P bm cancel wz 100/26 (ga52)",
      "Leman gas field"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 84,
    "heading": "2026-04-03 12:02:21 AREA: G",
    "published_at": "2026-04-03 12:02:21",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\n2-=\n_7_57_9_$''.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITM\nHC_GXXLONG:(_,::9_-84.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\n2-=\n_7_57_9_$''.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITM\nHC_GXXLONG:(_,::9_-84.\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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness sitm",
      "Mrcc shetland",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 85,
    "heading": "2026-04-03 12:01:50 AREA: G",
    "published_at": "2026-04-03 12:01:50",
    "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 __TUEMVG_HYS_ONGONNIII_ZCZC",
    "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 __TUEMVG_HYS_ONGONNIII_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",
      "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"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 86,
    "heading": "2026-04-03 12:01:24 AREA: G",
    "published_at": "2026-04-03 12:01:24",
    "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": 87,
    "heading": "2026-04-03 12:00:50 AREA: G",
    "published_at": "2026-04-03 12:00:50",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS USFH_\nA. N1 55-08.1N 002-09.5E. \nB. E5 54-51.5N 002-20.7E. \n2. CANCEL WZ 95/26 (G5 \nNNNN",
    "clean_text": "ZCZC GA15\nWZ 221/26\nDOGGER.\nSOFIA OFFSHORE WIND FARM.\n1. BUOYS USFH_\nA. N1 55-08.1N 002-09.5E.\nB. E5 54-51.5N 002-20.7E.\n2. CANCEL WZ 95/26 (G5\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 usfh.",
    "decoded_highlights": [
      "1. buoys usfh",
      "Sofia offshore wind farm",
      "2. cancel wz 95/26 (g5"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 88,
    "heading": "2026-04-03 12:00:14 AREA: G",
    "published_at": "2026-04-03 12:00:14",
    "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-89_ -8' 8,9034-58=3. \n2. CANCEL WZ 130/26 (GA73). \n)._\n)*_\n_ZCZC",
    "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-89_ -8' 8,9034-58=3.\n2. CANCEL WZ 130/26 (GA73).\n)._\n)*_\n_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: 1. nng e buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-89 -8' 8,9034-58 3. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. nng e buoy 56-14.3n 002-08.6w and nng s buoy 56-12.3n 002-89 -8' 8,9034-58 3",
      "Neart na gaoithe windfarm",
      "2. cancel wz 130/26 (ga73)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 89,
    "heading": "2026-04-03 11:40:39 AREA: E",
    "published_at": "2026-04-03 11:40:39",
    "area": "E",
    "message_id": "EE96",
    "text": "ZCZC EE96\nEE96\nIUJD BY_ICE AT _70=(_)3 2-4,8,_': O_MIDNIG_HTNGP_MSZ_O __5 BYM_MIDN_R WIGHT\nS O  SWEK\n TO 7, VJ__IO_TH FOR A TIME: RAIN OD DRIZA_PMGPORTLAND PLYMO_TH\n_W 4 TO _YV MO_ _YMYZM_ PORTLAND. RAIN O_UDC_OO_YW_Z_F QV\n_Q\n_\n TO 4 L4. MOD __ DZ__MGHIOM_AIN _R SHWRS__ _KOOFU\n_\nK\nB_E_PZGIPD ___YMYPJONGONNII___ADCZC EA49\n_-2248Z MARCWQ__N 00_9,,87_2__+2__-__5_)__(+ 2_\n5_*.$\n__7___7___2/+:_: 3_$_7_\n2+ 19__26 \nLU_D_AZS_2_-2ZC__W\nWZ 185/2_5_,2\n_0\n__=5___1_\n_0ZFZC EAWWQ\nWZ 182_26 \nLUNDY. \nSPANIEL_B_Z.\n).__8.__ZCZC",
    "clean_text": "ZCZC EE96\nEE96\nIUJD BY_ICE AT _70=(_)3 2-4,8,_': O_MIDNIG_HTNGP_MSZ_O __5 BYM_MIDN_R WIGHT\nS O SWEK\nTO 7, VJ__IO_TH FOR A TIME: RAIN OD DRIZA_PMGPORTLAND PLYMO_TH\n_W 4 TO _YV MO_ _YMYZM_ PORTLAND. RAIN O_UDC_OO_YW_Z_F QV\n_Q\n_\nTO 4 L4. MOD __ DZ__MGHIOM_AIN _R SHWRS__ _KOOFU\n_\nK\nB_E_PZGIPD ___YMYPJONGONNII___ADCZC EA49\n_-2248Z MARCWQ__N 00_9,,87_2__+2__-__5_)__(+ 2_\n5_*.$\n__7___7___2/+:_: 3_$_7_\n2+ 19__26\nLU_D_AZS_2_-2ZC__W\nWZ 185/2_5_,2\n_0\n__=5___1_\n_0ZFZC EAWWQ\nWZ 182_26\nLUNDY.\nSPANIEL_B_Z.\n).__8.__ZCZC",
    "resolved_station_name": "Niton",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "English Channel and western approaches",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "WIGHT",
      "LUNDY",
      "PORTLAND"
    ],
    "display_region_heading": "United Kingdom - English Channel and western approaches",
    "display_region_label": "Niton, United Kingdom",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for United Kingdom - English Channel and western approaches. This is a weather bulletin; readable sections mention ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Iujd by ice at 70 ( )3 2-4,8, ': o midnig htngp msz o 5 bym midn r wight",
      "To 7, vj io th for a time: rain od driza pmgportland plymo th",
      "0zfzc eawwq"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 90,
    "heading": "2026-04-03 11:40:14 AREA: T",
    "published_at": "2026-04-03 11:40:14",
    "area": "T",
    "message_id": "",
    "text": "ZCOCK_XCWV0\n_\n+_\n__0(_9_69_0_4_=9(3___(__.$_+___534)6_='_.__6/\n.\n!._8)__TER\nNNN_\n\n__B___ZCZC",
    "clean_text": "ZCOCK_XCWV0\n_\n+_\n__0(_9_69_0_4_=9(3___(__.$_+___534)6_='_.__6/\n.\n!._8)__TER\nNNN_\n\n__B___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: Zcock xcwv0. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Zcock xcwv0"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 91,
    "heading": "2026-04-03 10:33:53 AREA: P",
    "published_at": "2026-04-03 10:33:53",
    "area": "P",
    "message_id": "PB30",
    "text": "ZCZC PB30\n030728 UTC APR 26\nGALEWARNING, 03 APR 07:25 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES. DOVER.\nSOUTHWEST 7.\n\n\n\nNNNN",
    "clean_text": "ZCZC PB30\n030728 UTC APR 26\nGALEWARNING, 03 APR 07:25 UTC.\nDOGGER. GERMAN BIGHT. HUMBER. THAMES. DOVER.\nSOUTHWEST 7.\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, 03 apr 07:25 utc.",
    "decoded_highlights": [
      "Galewarning, 03 apr 07:25 utc",
      "Dogger. german bight. humber. thames. dover",
      "Southwest 7"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 92,
    "heading": "2026-04-03 10:31:21 AREA: V",
    "published_at": "2026-04-03 10:31:21",
    "area": "V",
    "message_id": "VA63",
    "text": "ZCZC VA63\n081043 ___/._6_\n_\nWZ 183/26 \nTHAMES. \nEAST ANGLIA ONE WIND FARM. \nTURBINE G27, 52-09.8N 002-33.5E, FOG SIGNAL INOPERATIVE. \nNNNN",
    "clean_text": "ZCZC VA63\n081043 ___/._6_\n_\nWZ 183/26\nTHAMES.\nEAST ANGLIA ONE WIND FARM.\nTURBINE G27, 52-09.8N 002-33.5E, FOG SIGNAL INOPERATIVE.\nNNNN",
    "resolved_station_name": "Oostende (Thames Approaches relay)",
    "resolved_country": "Belgium / United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Thames approaches and Dover approaches",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "THAMES"
    ],
    "display_region_heading": "Belgium / United Kingdom - Thames approaches and Dover approaches",
    "display_region_label": "Oostende (Thames Approaches relay), Belgium / United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium / United Kingdom - Thames approaches and Dover approaches. Readable text reports a fog signal outage near 52-09.8N 002-33.5E. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Turbine g27, 52-09.8n 002-33.5e, fog signal inoperative",
      "East anglia one wind farm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 95,
    "heading": "2026-04-03 10:19:17 AREA: T",
    "published_at": "2026-04-03 10:19:17",
    "area": "T",
    "message_id": "TA99",
    "text": "ZCZC TA99\n141654 U_AN\nOOSTENDERADIO MSI 027/26\nBE EEZ\nHYDROGRAPHICAL INSTRU_ ESTABSFJDPWMF-09_$_!__'_52:8::)_,_*$!__ 8' 43173'53$ ,95 59 !8*$.+6._+._94 8, 5_3 =8:8,856\nNNNN",
    "clean_text": "ZCZC TA99\n141654 U_AN\nOOSTENDERADIO MSI 027/26\nBE EEZ\nHYDROGRAPHICAL INSTRU_ ESTABSFJDPWMF-09_$_!__'_52:8::)_,_*$!__ 8' 43173'53$ ,95 59 !8*$.+6._+._94 8, 5_3 =8:8,856\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. 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": 97,
    "heading": "2026-04-03 10:17:16 AREA: T",
    "published_at": "2026-04-03 10:17:16",
    "area": "T",
    "message_id": "TA87",
    "text": "ZCZC TA87\n17_7_5: .-4\nOOSTENDERADIO MSI 107/26\nOOSTENDE-ZEEBRUGGE\nCABLE OPERATIO__BY M/V_MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWING COORDINATES : \n51-31.75N 002-31.13E\n51-20.82N 002-52.76E \n51-19.93N _P_OMUTE\n51-19.93N 00_.75E \n51-19.31N 003-08.04E\n51-20.06N 002-51.09E \n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIRE CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF CH 16 AND 65\nNNNN",
    "clean_text": "ZCZC TA87\n17_7_5: .-4\nOOSTENDERADIO MSI 107/26\nOOSTENDE-ZEEBRUGGE\nCABLE OPERATIO__BY M/V_MANU PEKKA AND M/V DUKE\nBETWEEN FOLLOWING COORDINATES :\n51-31.75N 002-31.13E\n51-20.82N 002-52.76E\n51-19.93N _P_OMUTE\n51-19.93N 00_.75E\n51-19.31N 003-08.04E\n51-20.06N 002-51.09E\n51-31.19N 002-30.45E\nA BAN ON ACHORING AND FISHING IN THE ENTIRE CORRIDOR\nSHIPPING REQUESTED TO PASS AT A SAFE DISTANCE\nMANU PEKKA IS LISTENING OUT ON VHF CH 16 AND 65\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: A ban on achoring and fishing in the entire corridor.",
    "decoded_highlights": [
      "A ban on achoring and fishing in the entire corridor",
      "Cable operatio by m/v manu pekka and m/v duke",
      "Shipping requested to pass at a safe distance"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 98,
    "heading": "2026-04-03 10:16:43 AREA: T",
    "published_at": "2026-04-03 10:16:43",
    "area": "T",
    "message_id": "TA04",
    "text": "ZCZC TA04\n240834 UHXM_YONGZZJHPWPYWFZM_QGONXX_HC_OZOASTAL ROUTE - DE PANNE-OOSTENDE \nSPECIAL PURPOSE BUOY KYCN, Y. FL 5S, 51-09.88N 002-43.00E ESTABLISHED \n\nNNNN",
    "clean_text": "ZCZC TA04\n240834 UHXM_YONGZZJHPWPYWFZM_QGONXX_HC_OZOASTAL ROUTE - DE PANNE-OOSTENDE\nSPECIAL PURPOSE BUOY KYCN, Y. FL 5S, 51-09.88N 002-43.00E ESTABLISHED\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Special purpose buoy kycn, y. fl 5s, 51-09.88n 002-43.00e established.",
    "decoded_highlights": [
      "Special purpose buoy kycn, y. fl 5s, 51-09.88n 002-43.00e established",
      "240834 uhxm yongzzjhpwpywfzm qgonxx hc ozoastal route - de panne-oostende"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 107,
    "heading": "2026-04-03 10:10:19 AREA: T",
    "published_at": "2026-04-03 10:10:19",
    "area": "T",
    "message_id": "TA25",
    "text": "ZCZC TA25\n030602 UTC APR \nOOSTENDERADIO MSI 146/26\nDE PANNE-OOSTENDE\nGUNNERY EXERCISES IN THE GREAT SECTOR OF LOMBARDSIJDE 03 APR 20_3__6+_._CMGCHFSM\n_PMG_HXM_CPY_MJP_HZ_MFWM__I_FJHIZN CHAN 16 AND 74\n\nNNNN",
    "clean_text": "ZCZC TA25\n030602 UTC APR\nOOSTENDERADIO MSI 146/26\nDE PANNE-OOSTENDE\nGUNNERY EXERCISES IN THE GREAT SECTOR OF LOMBARDSIJDE 03 APR 20_3__6+_._CMGCHFSM\n_PMG_HXM_CPY_MJP_HZ_MFWM__I_FJHIZN CHAN 16 AND 74\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: Gunnery exercises in the great sector of lombardsijde 03 apr 20 3 6 . cmgchfsm. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gunnery exercises in the great sector of lombardsijde 03 apr 20 3 6 . cmgchfsm",
      "De panne-oostende"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 111,
    "heading": "2026-04-03 10:04:18 AREA: S",
    "published_at": "2026-04-03 10:04:18",
    "area": "S",
    "message_id": "SA81",
    "text": "ZCZC SA81\nNCC-HAMBURY\nN\nP_ PMG_HXM_Y_\n_NAV. WARN. NO. 191\nGERMAN BIGHT9._*+:_$06'3._0!**0.)=_UNDERWATER OPERATIONS BY MV 'FUGRO QUEST', CS 'C6FO2',\nAROUND POSITION 54-46,6N 006-00,5E\nRESTRICTED MANOEVRABILITY DURING OPERATIONK__ON_II_ERTH OF 500 MEHPYJMYP_CPJHPW_NNNN",
    "clean_text": "ZCZC SA81\nNCC-HAMBURY\nN\nP_ PMG_HXM_Y_\n_NAV. WARN. NO. 191\nGERMAN BIGHT9._*+:_$06'3._0!**0.)=_UNDERWATER OPERATIONS BY MV 'FUGRO QUEST', CS 'C6FO2',\nAROUND POSITION 54-46,6N 006-00,5E\nRESTRICTED MANOEVRABILITY DURING OPERATIONK__ON_II_ERTH OF 500 MEHPYJMYP_CPJHPW_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Germany - German Bight and German North Sea. Readable text says: Around position 54-46,6n 006-00,5e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Around position 54-46,6n 006-00,5e",
      "Restricted manoevrability during operationk on ii erth of 500 mehpyjmyp cpjhpw nnnn",
      "Nav. warn. no. 191"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 114,
    "heading": "2026-04-03 10:01:31 AREA: S",
    "published_at": "2026-04-03 10:01:31",
    "area": "S",
    "message_id": "SA85",
    "text": "ZCZC SA85\nNCC-_AMBURG\n020610 UTC_YM\n_NAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N 005-54,2E\nRESTRICTED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF _ M__MYP_CPJHPW_NNNN",
    "clean_text": "ZCZC SA85\nNCC-_AMBURG\n020610 UTC_YM\n_NAV. WARN. NO. 196\nGERMAN BIGHT. NORTHWESTERLY OWF 'BARD OFFSHORE 1'.\nUXO SURVEY BY\nMV 'OCEAN RESEARCHER', CS 'GDLS' AROUND POSITION\n54-23,3N 005-54,2E\nRESTRICTED MANOEUVRABILITY DURING OPERATIONS.\nSAFE BERTH OF _ M__MYP_CPJHPW_NNNN",
    "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",
      "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: Uxo survey by.",
    "decoded_highlights": [
      "Uxo survey by",
      "Restricted manoeuvrability during operations",
      "German bight. northwesterly owf 'bard offshore 1'"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 115,
    "heading": "2026-04-03 10:00:13 AREA: S",
    "published_at": "2026-04-03 10:00:13",
    "area": "S",
    "message_id": "SE66",
    "text": "ZCZC SE66\n030700 _\n__05____):64.\nLT_\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\nWIND: WEST TO NORTHWEST ABOUT 4, FOG OS_-FHIFTING SOUTH 6.\nVISIBIS_BI_THER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, SHIFTING SOUTD_MGF_YPJFMLZCHM\nC__NGOFJFLFSFHE__GU_ND_ LOCALLY SHOWER IH_M_ZZ_M_FJFLFSFH IZONGJP_XMUH_G_PHNEBHV_ _GP_L_MSHPYM_YMG_PH_Y_NNNN",
    "clean_text": "ZCZC SE66\n030700 _\n__05____):64.\nLT_\n\nWEATHERFORECAST FOR GERMAN BIGHT\n\nFRIDAY:\nWIND: WEST TO NORTHWEST ABOUT 4, FOG OS_-FHIFTING SOUTH 6.\nVISIBIS_BI_THER: RAIN OR SHOWER WITH PARTLY POOR VISIBILITY.\nSEA: 3 METER.\n\nSATURDAY:\nWIND: WESTERLY WINDS ABOUT 5, SHIFTING SOUTD_MGF_YPJFMLZCHM\nC__NGOFJFLFSFHE__GU_ND_ LOCALLY SHOWER IH_M_ZZ_M_FJFLFSFH IZONGJP_XMUH_G_PHNEBHV_ _GP_L_MSHPYM_YMG_PH_Y_NNNN",
    "resolved_station_name": "Pinneberg",
    "resolved_country": "Germany",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "German Bight and German North Sea",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "GERMAN BIGHT"
    ],
    "display_region_heading": "Germany - German Bight and German North Sea",
    "display_region_label": "Pinneberg, Germany",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Germany - German Bight and German North Sea. This is a weather bulletin; readable sections mention fog, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Wind: west to northwest about 4, fog os -fhifting south 6",
      "Visibis bi ther: rain or shower with partly poor visibility",
      "Weatherforecast for german bight"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 118,
    "heading": "2026-04-03 09:30:20 AREA: P",
    "published_at": "2026-04-03 09:30:20",
    "area": "P",
    "message_id": "PA42",
    "text": "ZCZC PA42\n290625 UHXM_Y_\n_MSI 103/26\nTSS NORHDM_YFPJSZ_O_XUNEKK_NE__SQDRX_D__4-3__7+_)_____1_9_ )8,3 *98,8,_ \n54-07.0N 004-39.5E AND 54-03.5N 004-39.6E.\nDANGEROUS TO FISHERY.\nCANCEL MSI 102/26\nNNNN",
    "clean_text": "ZCZC PA42\n290625 UHXM_Y_\n_MSI 103/26\nTSS NORHDM_YFPJSZ_O_XUNEKK_NE__SQDRX_D__4-3__7+_)_____1_9_ )8,3 *98,8,_\n54-07.0N 004-39.5E AND 54-03.5N 004-39.6E.\nDANGEROUS TO FISHERY.\nCANCEL MSI 102/26\nNNNN",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: Dangerous to fishery. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Dangerous to fishery"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 119,
    "heading": "2026-04-03 09:29:55 AREA: P",
    "published_at": "2026-04-03 09:29:55",
    "area": "P",
    "message_id": "PA02",
    "text": "ZCZC PA02\n041900 UTCM__\n_MSI 2/26\nBUOY WP2 53-18.7N 004-02.2E MISSING\nUNCOVERED MEASURIN_\nP CF_PHMZMHDPMJPL_WZ__ZFFF_ZCZC",
    "clean_text": "ZCZC PA02\n041900 UTCM__\n_MSI 2/26\nBUOY WP2 53-18.7N 004-02.2E MISSING\nUNCOVERED MEASURIN_\nP CF_PHMZMHDPMJPL_WZ__ZFFF_ZCZC",
    "display_region_heading": "Unresolved B1 code P",
    "display_region_label": "B1 code P",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code P. Readable text says: Buoy wp2 53-18.7n 004-02.2e missing. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Buoy wp2 53-18.7n 004-02.2e missing",
      "Uncovered measurin"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 120,
    "heading": "2026-04-03 09:25:32 AREA: T",
    "published_at": "2026-04-03 09:25:32",
    "area": "T",
    "message_id": "TA25",
    "text": "ZCZC TA25\n030602 UTC APR \nOOSTENDERADIO MSI 146/26\nDE PANNE-OOSTEN_GUNNERY EXERCISES IN THE GREAT SECTOR OF LOMBARDSIJDE 03 APR 2026 FROM 0700 UNTIL 1030 UTC GUNNERY SECTOR _S LISTENING ON CHAN 16 AND 74\n\nNNNN",
    "clean_text": "ZCZC TA25\n030602 UTC APR\nOOSTENDERADIO MSI 146/26\nDE PANNE-OOSTEN_GUNNERY EXERCISES IN THE GREAT SECTOR OF LOMBARDSIJDE 03 APR 2026 FROM 0700 UNTIL 1030 UTC GUNNERY SECTOR _S LISTENING ON CHAN 16 AND 74\n\nNNNN",
    "resolved_station_name": "Oostende Radio",
    "resolved_country": "Belgium",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "Belgian coast and southern North Sea",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "OOSTENDE",
      "OOSTENDERADIO"
    ],
    "display_region_heading": "Belgium - Belgian coast and southern North Sea",
    "display_region_label": "Oostende Radio, Belgium",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Belgium - Belgian coast and southern North Sea. Readable text says: De panne-oosten gunnery exercises in the great sector of lombardsijde 03 apr 2026 from 0700 until 1030 utc gunnery sector s listening on chan 16 and 74. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "De panne-oosten gunnery exercises in the great sector of lombardsijde 03 apr 2026 from 0700 until 1030 utc gunnery sector s listening on chan 16 and 74"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 121,
    "heading": "2026-04-03 08:50:08 AREA: L",
    "published_at": "2026-04-03 08:50:08",
    "area": "L",
    "message_id": "LA11",
    "text": "ZCZC LA11\n318_0( _75: .-4 26\n($-,8'_ ,-= 2-4, 177/2'\n$3,.-4( )88. !894$ )-_'5-4_43,$3\n2_. -15.5_\n3\n=,- _)_3_7_++(+: )-10\nQWQP_C MAR 26\nDANISH NA_ WARN 154/26\nDENMARKQM V__F_ FIORD. LAGSTAR RENDE.\nD_PTHS 3._39\n+_*06_02\n)___00\n,\n____(.9N 009-12.7E\nNNNN",
    "clean_text": "ZCZC LA11\n318_0( _75: .-4 26\n($-,8'_ ,-= 2-4, 177/2'\n$3,.-4( )88. !894$ )-_'5-4_43,$3\n2_. -15.5_\n3\n=,- _)_3_7_++(+: )-10\nQWQP_C MAR 26\nDANISH NA_ WARN 154/26\nDENMARKQM V__F_ FIORD. LAGSTAR RENDE.\nD_PTHS 3._39\n+_*06_02\n)___00\n,\n____(.9N 009-12.7E\nNNNN",
    "display_region_heading": "Unresolved B1 code L",
    "display_region_label": "B1 code L",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code L. Readable text says: Denmarkqm v f fiord. lagstar rende. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Denmarkqm v f fiord. lagstar rende",
      "Qwqp c mar 26",
      "Danish na warn 154/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 122,
    "heading": "2026-04-03 08:44:54 AREA: O",
    "published_at": "2026-04-03 08:44:54",
    "area": "O",
    "message_id": "OB09",
    "text": "ZCZC OB09\n/09450-548:(4-$89\nGALE WARNING FRIDAY 03 APRIL 0540 UTC\n\nFAEROES\nSOUTHEASTERLY GALE FORCE 8 _=006!._0*_06'_.*03 _-)3 !94:3 _9 _)-_$_\n_0+_2\n96+-588:3)-,$9\n__'=.+_.61*__+: B_P_\nGNFOZOFADSO\nGALE WARNI G FRIDAY 03 A_GIL 0540__*+.92_WBDJ_ GALE FZM_E 8=_3__3:5*$ )_534\nNNNN",
    "clean_text": "ZCZC OB09\n/09450-548:(4-$89\nGALE WARNING FRIDAY 03 APRIL 0540 UTC\n\nFAEROES\nSOUTHEASTERLY GALE FORCE 8 _=006!._0*_06'_.*03 _-)3 !94:3 _9 _)-_$_\n_0+_2\n96+-588:3)-,$9\n__'=.+_.61*__+: B_P_\nGNFOZOFADSO\nGALE WARNI G FRIDAY 03 A_GIL 0540__*+.92_WBDJ_ GALE FZM_E 8=_3__3:5*$ )_534\nNNNN",
    "display_region_heading": "Unresolved B1 code O",
    "display_region_label": "B1 code O",
    "subject_label": "meteorological warning",
    "subject_code": "B",
    "decoded_summary": "meteorological warning for Unresolved B1 code O. Readable text says: Southeasterly gale force 8 006!. 0 06' . 03 -)3 !94:3 9 )- $. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Southeasterly gale force 8 006!. 0 06' . 03 -)3 !94:3 9 )- $",
      "Gale warni g friday 03 a gil 0540 .92 wbdj gale fzm e 8 3 3:5 $ ) 534",
      "Gale warning friday 03 april 0540 utc"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 123,
    "heading": "2026-04-03 08:43:55 AREA: K",
    "published_at": "2026-04-03 08:43:55",
    "area": "K",
    "message_id": "KA26",
    "text": "ZCZC KA26\nVU_NAV CHERBOURG _WYXWY\nDOVER - DST MANCHE EST\n_APS_ \nQ\nZ_Z_\n_UT_\nYLV_+_ 5_-,'.85534 975 9! '34=8:3 - (_!2_.:__'\n9_)+_00.)**:60''09,\n__:0(N 000-57.80E\nH_NAVIGATE WITH CAUTION\nNNNN",
    "clean_text": "ZCZC KA26\nVU_NAV CHERBOURG _WYXWY\nDOVER - DST MANCHE EST\n_APS_\nQ\nZ_Z_\n_UT_\nYLV_+_ 5_-,'.85534 975 9! '34=8:3 - (_!2_.:__'\n9_)+_00.)**:60''09,\n__:0(N 000-57.80E\nH_NAVIGATE 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": [
      "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: Vu nav cherbourg wyxwy. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vu nav cherbourg wyxwy",
      "Dover - dst manche est",
      "H navigate with caution"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 124,
    "heading": "2026-04-03 08:42:42 AREA: T",
    "published_at": "2026-04-03 08:42:42",
    "area": "T",
    "message_id": "",
    "text": "ZCZCEKA28\nWIGH_ -\n_AT\n_PAYA_KZ_AI3ME_\nWORKW\n)'=.(-/__+WY_HKZOIGJ_ZY\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING, \n_ _(2:_\nE\n52-\n5.86N 0_1-1___1N TPPQA_WMPW\n50-19.74N 01-04.7(_07-1\n_06='/+_7N 001-20.08E\n_0-13.73N 001-21.92_\nNNNN",
    "clean_text": "ZCZCEKA28\nWIGH_ -\n_AT\n_PAYA_KZ_AI3ME_\nWORKW\n)'=.(-/__+WY_HKZOIGJ_ZY\nUNTIL FURTHER NOTICE\nNO FISHING, TRAWLING, DREDGING,\n_ _(2:_\nE\n52-\n5.86N 0_1-1___1N TPPQA_WMPW\n50-19.74N 01-04.7(_07-1\n_06='/+_7N 001-20.08E\n_0-13.73N 001-21.92_\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 sets local operating restrictions, including anchoring, fishing, or towing limits. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "No fishing, trawling, dredging",
      "Until further notice"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 125,
    "heading": "2026-04-03 08:42:08 AREA: T",
    "published_at": "2026-04-03 08:42:08",
    "area": "T",
    "message_id": "",
    "text": "ZCZ_ KA29\n______!-\n..$_6)+:6.-,8_3 3'_9\n_-8$__)2-_ZCZC",
    "clean_text": "ZCZ_ KA29\n______!-\n..$_6)+:6.-,8_3 3'_9\n_-8$__)2-_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": 126,
    "heading": "2026-04-03 08:33:07 AREA: J",
    "published_at": "2026-04-03 08:33:07",
    "area": "J",
    "message_id": "JA26",
    "text": "ZCZC JA26\n7*+__\n1_2/71 +KALINGRAD NA__W_ U__WY\n\nSMW\n_W_C APR\n_N L_EAXL\n_PORARILY_DA\nGDROU___A_______PQ__\nEU\nK _F\n\n\n__SU_ISE\nWFROM _7189.92N 000-12.63W\n49-40.78\n_00-10.93W\n49-32.33\nW\n49-34.72N 000-55.12W\nNAVIG_TE WITH CAUTION\n\n2. CANCEL THIS MSG 0!_-_5: -04 26\n\nAVURNAV CHERBOURG 39/26\nANTIFER - D82\nOPERATIONS SPECIALES\n1._=_34:8:3 $3 584\nDU 011000 UTC AVR 26 AU 061200 UTC AVR 26\n\nZONE DELIMITEE PAR :\n49-59.92N 000-12.63W\n49740.78N 80_7U\nT\n_49-35.88N 000-10.93W\n49-32.33N 000-18.62W\n49-3)_72N 000-55.12W\nNAVIGUER AVEC PRUDENCE\n\n2. ANNULER CE MSG LE 061200 UTC AVR 26\nNNNN",
    "clean_text": "ZCZC JA26\n7*+__\n1_2/71 +KALINGRAD NA__W_ U__WY\n\nSMW\n_W_C APR\n_N L_EAXL\n_PORARILY_DA\nGDROU___A_______PQ__\nEU\nK _F\n\n__SU_ISE\nWFROM _7189.92N 000-12.63W\n49-40.78\n_00-10.93W\n49-32.33\nW\n49-34.72N 000-55.12W\nNAVIG_TE WITH CAUTION\n\n2. CANCEL THIS MSG 0!_-_5: -04 26\n\nAVURNAV CHERBOURG 39/26\nANTIFER - D82\nOPERATIONS SPECIALES\n1._=_34:8:3 $3 584\nDU 011000 UTC AVR 26 AU 061200 UTC AVR 26\n\nZONE DELIMITEE PAR :\n49-59.92N 000-12.63W\n49740.78N 80_7U\nT\n_49-35.88N 000-10.93W\n49-32.33N 000-18.62W\n49-3)_72N 000-55.12W\nNAVIGUER AVEC PRUDENCE\n\n2. ANNULER CE MSG LE 061200 UTC AVR 26\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-fallback",
    "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: 2. cancel this msg 0! - 5: -04 26. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "2. cancel this msg 0! - 5: -04 26",
      "Navig te with caution",
      "Avurnav cherbourg 39/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 127,
    "heading": "2026-04-03 08:32:02 AREA: J",
    "published_at": "2026-04-03 08:32:02",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_AC\nLW\nQK_UMG_HXM_YONONGPSX___WARN 051/26\n__OUTHEASTERN BALTIC\nSHIPS E\n_F_FJICPKM\nM U MG HVCZFM__PPE\n55-03!0_FV__ZAETMP__ 5_46.40N 019-35._0E\n54-50.30 __ 0_9-20._0'_5__1795F_A___ZCZC",
    "clean_text": "ZCZC JA_AC\nLW\nQK_UMG_HXM_YONONGPSX___WARN 051/26\n__OUTHEASTERN BALTIC\nSHIPS E\n_F_FJICPKM\nM U MG HVCZFM__PPE\n55-03!0_FV__ZAETMP__ 5_46.40N 019-35._0E\n54-50.30 __ 0_9-20._0'_5__1795F_A___ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: Outheastern baltic. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Outheastern baltic"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 128,
    "heading": "2026-04-03 08:30:56 AREA: J",
    "published_at": "2026-04-03 08:30:56",
    "area": "J",
    "message_id": "",
    "text": "ZCZC JA_251815 UTC MAR\n\nKALINGRAD NAV WARN 052/26\n\nSOUTHEASTERN BALTIC\nKJDF_JMP_PYXFJ_IIIPE\nTK_PN UT_ MAR THRU 30_ MG_H_MYONGFMYPMH__SZYYFS_MW__PYZCJMHZMJDF_ BR-11_\n55-54.00N 019-03.00E 55-30.00N 020-15.00E\n55-03.00N 0_\n' 5.\n8_UMTPN 020-06.00E\n54-57.50N 019-55.00E _TRATPMPPN 019-50.00E\n54-50.00N 019-2_.\n6E\nCANC_SV\n_F._0*__0.\n0U_PP UTC APR\nGZN_FF_ZCZC",
    "clean_text": "ZCZC JA_251815 UTC MAR\n\nKALINGRAD NAV WARN 052/26\n\nSOUTHEASTERN BALTIC\nKJDF_JMP_PYXFJ_IIIPE\nTK_PN UT_ MAR THRU 30_ MG_H_MYONGFMYPMH__SZYYFS_MW__PYZCJMHZMJDF_ BR-11_\n55-54.00N 019-03.00E 55-30.00N 020-15.00E\n55-03.00N 0_\n' 5.\n8_UMTPN 020-06.00E\n54-57.50N 019-55.00E _TRATPMPPN 019-50.00E\n54-50.00N 019-2_.\n6E\nCANC_SV\n_F._0*__0.\n0U_PP UTC APR\nGZN_FF_ZCZC",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Unresolved B1 code J. Readable text says: 54-57.50n 019-55.00e tratpmppn 019-50.00e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "54-57.50n 019-55.00e tratpmppn 019-50.00e",
      "Kalingrad nav warn 052/26",
      "Southeastern baltic"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 129,
    "heading": "2026-04-03 08:30:01 AREA: J",
    "published_at": "2026-04-03 08:30:01",
    "area": "J",
    "message_id": "JA29",
    "text": "ZCZC JA29\n251818 UTC MAG\nKALINGRAD NAV WARN 053/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TE_IZ_U_FS_NGEROUS TO SHIPPING BR-161\n55-09.50N 019-45.30E 55-09.50N 020-00.00E\n55-02.00N 020-00.00E 55-02.00N 019-39.60E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "clean_text": "ZCZC JA29\n251818 UTC MAG\nKALINGRAD NAV WARN 053/26\n\nSOUTHEASTERN BALTIC\nSHIPS EXERCISES 312100 UTC MAR THRU 302100 UTC APR\nIN AREA TE_IZ_U_FS_NGEROUS TO SHIPPING BR-161\n55-09.50N 019-45.30E 55-09.50N 020-00.00E\n55-02.00N 020-00.00E 55-02.00N 019-39.60E\nCANCEL THIS MESSAGE 302200 UTC APR\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: In area te iz u fs ngerous to shipping br-161.",
    "decoded_highlights": [
      "In area te iz u fs ngerous to shipping br-161",
      "Kalingrad nav warn 053/26",
      "Southeastern baltic"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 131,
    "heading": "2026-04-03 08:28:07 AREA: J",
    "published_at": "2026-04-03 08:28:07",
    "area": "J",
    "message_id": "JA36",
    "text": "ZCZC JA36\n,1__H\nMGCHXM_YON__AN NAV WAM_IIXWY\nWESTERN BALTIC. EAST OF KADETRENDEN.\nSURVP__ZPYHFZJMLEM_JGZYHDPYMJHZYZ_\n__GBFJ\nC_ONGXZ_BPX_MF_M_JM_HYPH_CG_M\n_U_IE\nVESSEL WILL BE CROSSING TSS ON PSN 54-50.4N 013-04.2E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 500 METERS REQUESTED.\nNNNN",
    "clean_text": "ZCZC JA36\n,1__H\nMGCHXM_YON__AN NAV WAM_IIXWY\nWESTERN BALTIC. EAST OF KADETRENDEN.\nSURVP__ZPYHFZJMLEM_JGZYHDPYMJHZYZ_\n__GBFJ\nC_ONGXZ_BPX_MF_M_JM_HYPH_CG_M\n_U_IE\nVESSEL WILL BE CROSSING TSS ON PSN 54-50.4N 013-04.2E\nRESTRICTED MANOEVRABILITY DURING OPERATIONS.\nBERTH OF 500 METERS REQUESTED.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code J. Readable text says: Vessel will be crossing tss on psn 54-50.4n 013-04.2e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Vessel will be crossing tss on psn 54-50.4n 013-04.2e",
      "Restricted manoevrability during operations",
      "Western baltic. east of kadetrenden"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 132,
    "heading": "2026-04-03 08:27:16 AREA: J",
    "published_at": "2026-04-03 08:27:16",
    "area": "J",
    "message_id": "JA40",
    "text": "ZCZC JA40\n930130 UTC APR 26\nGERMAN NAV WARN 193\nWESTERN BALTIC. BIGHT OF MECKLENBURG.\nMEASURING INSTRUMENTS ESTABLISHED \nAND MARKED BY YELLOW LIGHTBUOYS WITH INSCRIPTION 'ODAS', \n54-20_60011-22,97E,\n54-22,56N 012-11,21E,\n54-03,24N 011-18,47E,\nSAFE BERTH R _UESTED.\n_,_\n\nZCZC",
    "clean_text": "ZCZC JA40\n930130 UTC APR 26\nGERMAN NAV WARN 193\nWESTERN BALTIC. BIGHT OF MECKLENBURG.\nMEASURING INSTRUMENTS ESTABLISHED\nAND MARKED BY YELLOW LIGHTBUOYS WITH INSCRIPTION 'ODAS',\n54-20_60011-22,97E,\n54-22,56N 012-11,21E,\n54-03,24N 011-18,47E,\nSAFE BERTH R _UESTED.\n_,_\n\nZCZC",
    "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: And marked by yellow lightbuoys with inscription 'odas'.",
    "decoded_highlights": [
      "And marked by yellow lightbuoys with inscription 'odas'",
      "German nav warn 193",
      "Western baltic. bight of mecklenburg"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 135,
    "heading": "2026-04-03 08:21:23 AREA: J",
    "published_at": "2026-04-03 08:21:23",
    "area": "J",
    "message_id": "JE51",
    "text": "ZCZC JE51\n030231 UTC APR\nBALTI_NSEA WEATHERFORECAST\n\nNEA_M_S_M_YFDO_OJV_PY__ONONG_PUIIKYMJC_ FLAT_S_Z_PYMLSHF_MJ\n__MGMW\nP_PF_A__EACH NOYUP_FXMJP__M7._!+6.'._**0*.+_06_8__!$__*=_161=__\n 9___+60_*_._'!2._HOURS (WIND SCALE IN METERS PER SECOND)_\n9,_*=_06__9,__4(_6-11,_LATE MORNING DEC_ _N IN AFTERNOON BACK S, AND INCR 7-12. THIS EVENING 11-16, OVERNIGHT W AND SOMEWHAT DECR. THIS EVENING PASSING RAIN WITH MOD VIS, _3 .-8,)6 _99$ =8'.\n,_8(_=__0__\n.__$0.*+:2_.__$0.)0'_*0.__0*_06.)'_!_..7.__ _9=_4-9, THIS EVENING AGAIN 7-12. THIS EVENING PASSING RAIN WITH MOD GOOD VIS BUT SOME SHWRS.\n\nLAKE VPPYONG_YLMHCE_HK_MBFCEBQNBDKM9___EL3$34 2. AT FIRST AND LATER AGAIN OVERN_T RAN OR RAIN AND SNOW WITH MOD-POOR VIS, BETWEEN THEM GOOD VIS.\n\nSOUTHERN BALTIC, SOUTHEASTERN BALTIC\nSW-W INCR 6-11. MAINLY GOOD VIS, TEMPO SOME RAIN.\n\nCENTRAL BALTIC\nSW 4-9. TEMPO RAIN WITH MOD VIS, RISK OF LOC FOG.\n\nNORTHERN BAL_F_O\nB 2-7. RAIN WITH MOD VIS, THIS EVENING FLW BY RISK OF FOG.\n\nGULF OF RIGA, GULF OF FINLAND\nSW-W 3-8. TEMPO RAIN WITH MOD-POOR VIS AN_ IN P_S.+._!_2_31___\n___3_\nSEA OF AALAND, ARCHIPELAGO SEA, SOUTHERN SEA OF BOTHNIA, NORTHERN SEA OF BOTHNIA N 2-7, OVERNIGHT VRB 1-5. MAINLY GOOD VIS.\n\nTHE QUARK, BAY OF BOTHNIA\nW OR VRB 1-5. GOOD VIS.\nNNNN",
    "clean_text": "ZCZC JE51\n030231 UTC APR\nBALTI_NSEA WEATHERFORECAST\n\nNEA_M_S_M_YFDO_OJV_PY__ONONG_PUIIKYMJC_ FLAT_S_Z_PYMLSHF_MJ\n__MGMW\nP_PF_A__EACH NOYUP_FXMJP__M7._!+6.'._**0*.+_06_8__!$__*=_161=__\n9___+60_*_._'!2._HOURS (WIND SCALE IN METERS PER SECOND)_\n9,_*=_06__9,__4(_6-11,_LATE MORNING DEC_ _N IN AFTERNOON BACK S, AND INCR 7-12. THIS EVENING 11-16, OVERNIGHT W AND SOMEWHAT DECR. THIS EVENING PASSING RAIN WITH MOD VIS, _3 .-8,)6 _99$ =8'.\n,_8(_=__0__\n.__$0.*+:2_.__$0.)0'_*0.__0*_06.)'_!_..7.__ _9=_4-9, THIS EVENING AGAIN 7-12. THIS EVENING PASSING RAIN WITH MOD GOOD VIS BUT SOME SHWRS.\n\nLAKE VPPYONG_YLMHCE_HK_MBFCEBQNBDKM9___EL3$34 2. AT FIRST AND LATER AGAIN OVERN_T RAN OR RAIN AND SNOW WITH MOD-POOR VIS, BETWEEN THEM GOOD VIS.\n\nSOUTHERN BALTIC, SOUTHEASTERN BALTIC\nSW-W INCR 6-11. MAINLY GOOD VIS, TEMPO SOME RAIN.\n\nCENTRAL BALTIC\nSW 4-9. TEMPO RAIN WITH MOD VIS, RISK OF LOC FOG.\n\nNORTHERN BAL_F_O\nB 2-7. RAIN WITH MOD VIS, THIS EVENING FLW BY RISK OF FOG.\n\nGULF OF RIGA, GULF OF FINLAND\nSW-W 3-8. TEMPO RAIN WITH MOD-POOR VIS AN_ IN P_S.+._!_2_31___\n___3_\nSEA OF AALAND, ARCHIPELAGO SEA, SOUTHERN SEA OF BOTHNIA, NORTHERN SEA OF BOTHNIA N 2-7, OVERNIGHT VRB 1-5. MAINLY GOOD VIS.\n\nTHE QUARK, BAY OF BOTHNIA\nW OR VRB 1-5. GOOD VIS.\nNNNN",
    "display_region_heading": "Unresolved B1 code J",
    "display_region_label": "B1 code J",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code J. This is a weather bulletin; readable sections mention fog, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Sw 4-9. tempo rain with mod vis, risk of loc fog",
      "B 2-7. rain with mod vis, this evening flw by risk of fog",
      "9, 06 9, 4( 6-11, late morning dec n in afternoon back s, and incr 7-12. this evening 11-16, overnight w and somewhat decr. this evening passing rain with mod vis, 3 .-8,)6 99$ 8'"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 136,
    "heading": "2026-04-03 08:11:18 AREA: G",
    "published_at": "2026-04-03 08:11:18",
    "area": "G",
    "message_id": "GA82",
    "text": "ZCZC GA82\nWZ 143/26 \nVIKING. \nBERYL OIL FIELD. \nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. 9,_9,,8((((((((((_((((((!_)$6+! 1,-=8_-\n 28___-_5768_ \n_E_V_PBFW_N__\nU_UUUU_____ZCZC",
    "clean_text": "ZCZC GA82\nWZ 143/26\nVIKING.\nBERYL OIL FIELD.\nBERYL SPM3 BUOY 59-31.7N 001-33.5E TEMPORARILY REMOVED. 9,_9,,8((((((((((_((((((!_)$6+! 1,-=8_-\n28___-_5768_\n_E_V_PBFW_N__\nU_UUUU_____ZCZC",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "BERYL OIL FIELD"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. Readable text says: Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed. 9, 9,,8(((((((((( ((((((! )$6 ! 1,- 8 -. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Beryl spm3 buoy 59-31.7n 001-33.5e temporarily removed. 9, 9,,8(((((((((( ((((((! )$6 ! 1,- 8 -",
      "Beryl oil field"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 137,
    "heading": "2026-04-03 08:10:47 AREA: G",
    "published_at": "2026-04-03 08:10:47",
    "area": "G",
    "message_id": "GA89",
    "text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG S_GNALCINOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "clean_text": "ZCZC GA89\nWZ 161/26\nCROMARTY.\nHYWIND FLOATING WIND FARM.\n1. TURBINE HS2, 57-29.4N 001-21.1W, FOG S_GNALCINOPERATIVE.\n2. CANCEL WZ 39/26 (GA12).\nNNNN",
    "resolved_station_name": "Cullercoats",
    "resolved_country": "United Kingdom",
    "resolved_nav_area": "I",
    "resolved_coverage_label": "North Sea and north-east UK coast",
    "resolved_match_basis": "regional-context",
    "resolved_match_terms": [
      "CROMARTY"
    ],
    "display_region_heading": "United Kingdom - North Sea and north-east UK coast",
    "display_region_label": "Cullercoats, United Kingdom",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for United Kingdom - North Sea and north-east UK coast. 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 s gnalcinoperative",
      "Cromarty",
      "Hywind floating wind farm"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 138,
    "heading": "2026-04-03 08:10:25 AREA: G",
    "published_at": "2026-04-03 08:10:25",
    "area": "G",
    "message_id": "GA96",
    "text": "ZCZC GA96\nWZ 171/26 \n,_$:_)0_\n_.9,_2:2_0+)_(8__:3)O_\nO_\nGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT. \n,_9,,888_ZCZC",
    "clean_text": "ZCZC GA96\nWZ 171/26\n,_$:_)0_\n_.9,_2:2_0+)_(8__:3)O_\nO_\nGEON SOUTH BUOY 53-12.5N 001-25.6E UNLIT.\n,_9,,888_ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Geon south buoy 53-12.5n 001-25.6e unlit. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Geon south buoy 53-12.5n 001-25.6e unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 139,
    "heading": "2026-04-03 08:09:53 AREA: G",
    "published_at": "2026-04-03 08:09:53",
    "area": "G",
    "message_id": "GA97",
    "text": "ZCZC GA97\nNAVAREA I 43/2_.9,_+6_$.*0_8))3.95 98) !83)$'. \nCHART_GB 278. \nSAFETY ZONE, RADIUS 500 METRES, ESTAB_ID ED IN 57-16.48N 000-46.38E\nNNNN",
    "clean_text": "ZCZC GA97\nNAVAREA I 43/2_.9,_+6_$.*0_8))3.95 98) !83)$'.\nCHART_GB 278.\nSAFETY ZONE, RADIUS 500 METRES, ESTAB_ID ED IN 57-16.48N 000-46.38E\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. Readable text says: Safety zone, radius 500 metres, estab id ed in 57-16.48n 000-46.38e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Safety zone, radius 500 metres, estab id ed in 57-16.48n 000-46.38e"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 140,
    "heading": "2026-04-03 08:09:15 AREA: G",
    "published_at": "2026-04-03 08:09:15",
    "area": "G",
    "message_id": "GA61",
    "text": "ZCZC GA61\n__-.\n_(0_(09_2_',4B__EW__\n1. TURBINE FOG SIGNALS INOPERATIVE: \nA. D01._07_ G_PPAROMQE. \nB. S01, 53-15.7N 000-55.9E. \n2. CANCEL WZ 58/26 (GA29). \nNNNN",
    "clean_text": "ZCZC GA61\n__-.\n_(0_(09_2_',4B__EW__\n1. TURBINE FOG SIGNALS INOPERATIVE:\nA. D01._07_ G_PPAROMQE.\nB. S01, 53-15.7N 000-55.9E.\n2. CANCEL WZ 58/26 (GA29).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention fog across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. turbine fog signals inoperative",
      "2. cancel wz 58/26 (ga29)"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 141,
    "heading": "2026-04-03 08:08:51 AREA: G",
    "published_at": "2026-04-03 08:08:51",
    "area": "G",
    "message_id": "GA83",
    "text": "ZCZC GA83\nWZ 215/26 \nGMDSS. 9___6_/.8__,4,_+! 4/T SERVICE FROM BAWDSEY SITE 51-59.6N_IIK_\nC\nRMKC__F AIR._\nO_NONNIIIK__ZCZC",
    "clean_text": "ZCZC GA83\nWZ 215/26\nGMDSS. 9___6_/.8__,4,_+! 4/T SERVICE FROM BAWDSEY SITE 51-59.6N_IIK_\nC\nRMKC__F AIR._\nO_NONNIIIK__ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Gmdss. 9 6 /.8 ,4, ! 4/t service from bawdsey site 51-59.6n iik"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 142,
    "heading": "2026-04-03 08:08:24 AREA: G",
    "published_at": "2026-04-03 08:08:24",
    "area": "G",
    "message_id": "GA94",
    "text": "ZCZC GA94\nWZ_\nUUTUEON_H_M\nBLYTH OFFSHORE DEMONSTRAHZYM_F_MWDL___D_ES___X_APYMIN 001-23.6W CSFHMWM+_.*!_'.!+__K____9,,888(ZCZC",
    "clean_text": "ZCZC GA94\nWZ_\nUUTUEON_H_M\nBLYTH OFFSHORE DEMONSTRAHZYM_F_MWDL___D_ES___X_APYMIN 001-23.6W CSFHMWM+_.*!_'.!+__K____9,,888(ZCZC",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. 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": 143,
    "heading": "2026-04-03 08:07:52 AREA: G",
    "published_at": "2026-04-03 08:07:52",
    "area": "G",
    "message_id": "GA02",
    "text": "ZCZC GA02\nWZ 223/26\nHUMBER. \nLEMAN GAS FIELD. \n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVJTAV_TAVE_JF_ WZ 1TUEMVG\nHUS_ONGONNIII_ZCZC",
    "clean_text": "ZCZC GA02\nWZ 223/26\nHUMBER.\nLEMAN GAS FIELD.\n1. PLATFORM 49/27-ED 53-03.6N 002-12.6E, UNLIT AND ALL NAVAIDS INOPERATIVJTAV_TAVE_JF_ WZ 1TUEMVG\nHUS_ONGONNIII_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: 1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperativjtav tave jf wz 1tuemvg.",
    "decoded_highlights": [
      "1. platform 49/27-ed 53-03.6n 002-12.6e, unlit and all navaids inoperativjtav tave jf wz 1tuemvg",
      "Leman gas field",
      "Hus ongonniii zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 144,
    "heading": "2026-04-03 08:07:21 AREA: G",
    "published_at": "2026-04-03 08:07:21",
    "area": "G",
    "message_id": "GA04",
    "text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "clean_text": "ZCZC GA04\nWZ 225/26\nGMDSS.\nMRCC SHETLAND.\n1. MF R/T AND DSC SERVICES FROM GREGNESS SITE 57-07.7N 002-03.2W OFF AIR.\n2. CANCEL WZ 213/26 (GA80).\nNNNN",
    "display_region_heading": "Unresolved B1 code G",
    "display_region_label": "B1 code G",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code G. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "1. mf r/t and dsc services from gregness site 57-07.7n 002-03.2w off air",
      "Mrcc shetland",
      "2. cancel wz 213/26 (ga80)"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 146,
    "heading": "2026-04-03 08:04:03 AREA: G",
    "published_at": "2026-04-03 08:04:03",
    "area": "G",
    "message_id": "GA13",
    "text": "ZCZC GA13\nNAVAREA I 62/26 \n1. NAVAREA I WARNINGS IN FORCE AT 271000 UTC MAR 2026: \n2026 SERIES: 43, 52, 60, 61, 62. \nNOTES: \nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBLISHED IMM_PPVS_MPWFHFZJMZ_MHDPMW_FYSH_MZHF_PJMHZM_YFPYJMLCSSPHFM_VGBL\nS_ON_L_NAVAREA I WARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEXVHYJ_FHHPYJ_C. THE COMPLETE TEXTS OF ALZ_AFORCE NAVAREA I WARNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEING BROADCAST, ARE REPRINTED IN SECTION III OF ANMB IN WEEKS 1. 0__,$ 39 WMYPMSJZM_FSLSPM_YZBMHDPMC_DZM_PLJFHPMH_HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\nALTERNATIVELY, THESE MAY BE REQCPJHPWML_MP\nGBIUI_FROM NAVAREA I CO_RDINATOR AT: NAVWARNINGS(AT)UKHO.GO\n__CVMO_\n___GXXPSM_YPMFM_HI_IK_TUEMVGP_YPSVG\nZUS__ZK__)_+__!!!__ZCZC",
    "clean_text": "ZCZC GA13\nNAVAREA I 62/26\n1. NAVAREA I WARNINGS IN FORCE AT 271000 UTC MAR 2026:\n2026 SERIES: 43, 52, 60, 61, 62.\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBLISHED IMM_PPVS_MPWFHFZJMZ_MHDPMW_FYSH_MZHF_PJMHZM_YFPYJMLCSSPHFM_VGBL\nS_ON_L_NAVAREA I WARNINGS LESS THAN 42 DAYS OLD (43/26 ONWARD) ARE PROMULGATED VIA ENHANCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEXVHYJ_FHHPYJ_C. THE COMPLETE TEXTS OF ALZ_AFORCE NAVAREA I WARNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEING BROADCAST, ARE REPRINTED IN SECTION III OF ANMB IN WEEKS 1. 0__,$ 39 WMYPMSJZM_FSLSPM_YZBMHDPMC_DZM_PLJFHPMH_HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\nALTERNATIVELY, THESE MAY BE REQCPJHPWML_MP\nGBIUI_FROM NAVAREA I CO_RDINATOR AT: NAVWARNINGS(AT)UKHO.GO\n__CVMO_\n___GXXPSM_YPMFM_HI_IK_TUEMVGP_YPSVG\nZUS__ZK__)_+__!!!__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: A. texts of navarea i warnings issued each week are published imm ppvs mpwfhfzjmz mhdpmw fysh mzhf pjmhzm yfpyjmlcssphfm vgbl. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "A. texts of navarea i warnings issued each week are published imm ppvs mpwfhfzjmz mhdpmw fysh mzhf pjmhzm yfpyjmlcssphfm vgbl",
      "S on l navarea i warnings less than 42 days old (43/26 onward) are promulgated via enhanced group call (egc) and/or relevant navtexvhyj fhhpyj c. the complete texts of alz aforce navarea i warnings, including those which are no longer being broadcast, are reprinted in section iii of anmb in weeks 1. 0 ,$ 39 wmypmsjzm fslspm yzbmhdpmc dzm pljfhpmh https://msi.admiralty.co.uk/radionavigationalwarnings",
      "Gbiui from navarea i co rdinator at: navwarnings(at)ukho.go"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 147,
    "heading": "2026-04-03 08:03:28 AREA: G",
    "published_at": "2026-04-03 08:03:28",
    "area": "G",
    "message_id": "GA15",
    "text": "ZCZC GA15\nWZ 221/26 \nDOGGER. \nSOFIA OFFSHORE WIND FARM. \n1. BUOYS UNLIT: \nA. N1 _-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 _-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": 148,
    "heading": "2026-04-03 08:02:53 AREA: G",
    "published_at": "2026-04-03 08:02:53",
    "area": "G",
    "message_id": "GA18",
    "text": "ZCZC GA18\nWZ 243/26 \nFORTH. \nNEART NA GAOITHE WINDFARM. \n_\n_,_ 3 _796 56-14.3N 002-08.6-,$ ,,_ ' _796 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_\n_,_ 3 _796 56-14.3N 002-08.6-,$ ,,_ ' _796 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-12.3N 002-09.8W. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "3 796 56-14.3n 002-08.6-,$ ,, ' 796 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": 149,
    "heading": "2026-04-03 08:00:14 AREA: T",
    "published_at": "2026-04-03 08:00:14",
    "area": "T",
    "message_id": "",
    "text": "ZCZK_BU\nGE16\nISSUED BY THE MET OFICE AT 0900 ON FRI 03 APR\n\nGALE WARNINGS: VIKING FAIR ISLE\n\nTHE GENE_AL SITUATION AT MIDNIGOT\nNEW LZWJV_0,,9423_8-, _-'8, 977 AND SE ICESWIIIKM\nZFHMGLEM_FWF_DHMHZF_DHONON_HR FORECASTS\n\nVIKING\nSE 5 TO 7, INCR 7 TO SEV GALE 9, VEER W 4 TO 6 LTR. MOD OR _OU_ OCNL VERY ROUGH S\n RAIN. GOOD, OCNL POOR\n\nFORTIES CROMARTY_FZYHDMH_PMWZ__PYONGJM_HMGHZM_C_G_PP_M_MZ_MJUM_YMGHZM\n_YMYZCD_BMGYFMHDPMJDIII_U_ MOD OR GOOD\n\nHUMBER THAMES\nS OR SW 5 TO 7, VEE _MZYMJUM_YMGHZM_LTR. SLT OR MOD, INCR ROUGH FOR\nMHFBP_BMGYFMZYMWYFAASP_OD OR GOOD, OCNL POOR\n\nFAIR ISLE\nCYCLONIC 6_.__+._'_._!._)0/_.7.__.__+.\n:_._6+:_$.+6._063.6_:$_._):_._+2_+3_3_/32__1B_K3_1*BHRK_$__!_46 '_24'. MOD OR GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSTORM FORCE 10 EXP IN FORTIES, CROMARTY AND FORTH. SEV GALES EXP IN VIKING, TYNE, DOGGER AND FAIR ISLE. GALES EXP IN HUMBER. STRG WINDS EXP IN THAMES \nNNNN",
    "clean_text": "ZCZK_BU\nGE16\nISSUED BY THE MET OFICE AT 0900 ON FRI 03 APR\n\nGALE WARNINGS: VIKING FAIR ISLE\n\nTHE GENE_AL SITUATION AT MIDNIGOT\nNEW LZWJV_0,,9423_8-, _-'8, 977 AND SE ICESWIIIKM\nZFHMGLEM_FWF_DHMHZF_DHONON_HR FORECASTS\n\nVIKING\nSE 5 TO 7, INCR 7 TO SEV GALE 9, VEER W 4 TO 6 LTR. MOD OR _OU_ OCNL VERY ROUGH S\nRAIN. GOOD, OCNL POOR\n\nFORTIES CROMARTY_FZYHDMH_PMWZ__PYONGJM_HMGHZM_C_G_PP_M_MZ_MJUM_YMGHZM\n_YMYZCD_BMGYFMHDPMJDIII_U_ MOD OR GOOD\n\nHUMBER THAMES\nS OR SW 5 TO 7, VEE _MZYMJUM_YMGHZM_LTR. SLT OR MOD, INCR ROUGH FOR\nMHFBP_BMGYFMZYMWYFAASP_OD OR GOOD, OCNL POOR\n\nFAIR ISLE\nCYCLONIC 6_.__+._'_._!._)0/_.7.__.__+.\n:_._6+:_$.+6._063.6_:$_._):_._+2_+3_3_/32__1B_K3_1*BHRK_$__!_46 '_24'. MOD OR GOOD, OCNL POOR\n\nOUTLOOK FLW 24 HOURS:\nSTORM FORCE 10 EXP IN FORTIES, CROMARTY AND FORTH. SEV GALES EXP IN VIKING, TYNE, DOGGER AND FAIR ISLE. GALES EXP IN HUMBER. STRG WINDS EXP IN THAMES\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": "operational notice",
    "subject_code": "",
    "decoded_summary": "operational notice for Belgium / United Kingdom - Thames approaches and Dover approaches. This is a weather bulletin; readable sections mention gales, ice, rain across the covered waters. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Se 5 to 7, incr 7 to sev gale 9, veer w 4 to 6 ltr. mod or ou ocnl very rough s",
      "Storm force 10 exp in forties, cromarty and forth. sev gales exp in viking, tyne, dogger and fair isle. gales exp in humber. strg winds exp in thames",
      "Gale warnings: viking fair isle"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 150,
    "heading": "2026-04-03 07:54:53 AREA: F",
    "published_at": "2026-04-03 07:54:53",
    "area": "F",
    "message_id": "FA26",
    "text": "ZCZC FA26\n L_E_EB\nA_VIM\nM_Y_M_RAL BALTIC. LATVIAN WATERS. \n=FUE TO ICE CONDITION_NMJNY BUOYS AND MA_KS_HAVE BEEN WITHDRAWN.\nNAV_GA___AU_F_ERI\nDU  __FI__\nU___U___UU_ ON\nVHF DR\nPNOOEC_WCY_K_EZEZI_QY WHAM THE HHIP IS WE_L MOORADJ_EOXEBR-3$__)\n_2\n,___ (1_-__*_._ 8,!94.-589_ 9, 43'548:589,' _9 _'BALTICE.ORG\nNNNN",
    "clean_text": "ZCZC FA26\nL_E_EB\nA_VIM\nM_Y_M_RAL BALTIC. LATVIAN WATERS.\n=FUE TO ICE CONDITION_NMJNY BUOYS AND MA_KS_HAVE BEEN WITHDRAWN.\nNAV_GA___AU_F_ERI\nDU __FI__\nU___U___UU_ ON\nVHF DR\nPNOOEC_WCY_K_EZEZI_QY WHAM THE HHIP IS WE_L MOORADJ_EOXEBR-3$__)\n_2\n,___ (1_-__*_._ 8,!94.-589_ 9, 43'548:589,' _9 _'BALTICE.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": [
      "Fue to ice condition nmjny buoys and ma ks have been withdrawn",
      "(1 - . 8,!94.-589 9, 43'548:589,' 9 'baltice.org",
      "M y m ral baltic. latvian waters"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 153,
    "heading": "2026-04-03 07:50:15 AREA: F",
    "published_at": "2026-04-03 07:50:15",
    "area": "F",
    "message_id": "FE93",
    "text": "ZCZC FE93\n030231 UTC APR\nBALTIC SEU WEATHERSORECAST\nNEAR GALE WARNI_G\nSKAGERRAK\n_EATHED SUMMARY:\nA FLAT _ OVER BALTCCZEA. A DE034 5 43-:_ ,9423_8-, _3-/_ U MI_OR LIPASS_S OV_O_GHT SKAGERRJJM\nF_V_K_ _ZZ _AY\nGDZCYJM__GAF_*_'0.!.+0_06*._06.__!_2_'9,*=7, IN FTEROZZ\n__, AND IDMR 7-12._THIS EVENING 11-1N OVERNIGD_N__OMJZBP__MWPFY_BMGTERNOON PASSING RAINQWI_LU_\nVIS, BEE_ VIS, _MPOF FHG.\nGULF OF RIGA, GULF OF_FIRLA__\nSW- 2 32_._ \n+:3\n__\n1$2_51 \n_/+\n3_\n()_+\n_1_1WBIQ\n_LYFJM_Z._\n_9\n5*03)-_BH_AX_WEBQKBE__SA_WGKBHAE_WEBQVI_B__W(_)9KKMB_BELJE_NBOEUO_D VIS.\nTHE QUARK_=BAY OF BOTHNIA\nW_OR VRB 1-5. GOOD VIS.\nNNNN",
    "clean_text": "ZCZC FE93\n030231 UTC APR\nBALTIC SEU WEATHERSORECAST\nNEAR GALE WARNI_G\nSKAGERRAK\n_EATHED SUMMARY:\nA FLAT _ OVER BALTCCZEA. A DE034 5 43-:_ ,9423_8-, _3-/_ U MI_OR LIPASS_S OV_O_GHT SKAGERRJJM\nF_V_K_ _ZZ _AY\nGDZCYJM__GAF_*_'0.!.+0_06*._06.__!_2_'9,*=7, IN FTEROZZ\n__, AND IDMR 7-12._THIS EVENING 11-1N OVERNIGD_N__OMJZBP__MWPFY_BMGTERNOON PASSING RAINQWI_LU_\nVIS, BEE_ VIS, _MPOF FHG.\nGULF OF RIGA, GULF OF_FIRLA__\nSW- 2 32_._\n+:3\n__\n1$2_51\n_/+\n3_\n()_+\n_1_1WBIQ\n_LYFJM_Z._\n_9\n5*03)-_BH_AX_WEBQKBE__SA_WGKBHAE_WEBQVI_B__W(_)9KKMB_BELJE_NBOEUO_D VIS.\nTHE QUARK_=BAY OF BOTHNIA\nW_OR VRB 1-5. GOOD VIS.\nNNNN",
    "display_region_heading": "Unresolved B1 code F",
    "display_region_label": "B1 code F",
    "subject_label": "weather forecast",
    "subject_code": "E",
    "decoded_summary": "weather forecast for Unresolved B1 code F. Readable text says: Near gale warni g. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Near gale warni g",
      "Baltic seu weathersorecast",
      "A flat over baltcczea. a de034 5 43-: ,9423 8-, 3-/ u mi or lipass s ov o ght skagerrjjm"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 154,
    "heading": "2026-04-03 07:44:35 AREA: E",
    "published_at": "2026-04-03 07:44:35",
    "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": 155,
    "heading": "2026-04-03 07:44:14 AREA: E",
    "published_at": "2026-04-03 07:44:14",
    "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": 156,
    "heading": "2026-04-03 07:43:54 AREA: E",
    "published_at": "2026-04-03 07:43:54",
    "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": 157,
    "heading": "2026-04-03 07:43:30 AREA: E",
    "published_at": "2026-04-03 07:43:30",
    "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. \nONNIII_ZCZC",
    "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.\nONNIII_ZCZC",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. This is a weather bulletin; readable sections mention ice across the covered waters.",
    "decoded_highlights": [
      "Mf r/t service from bawdsey site 51-59.6n 001-24.5e off air",
      "Mrcc dover",
      "Onniii zczc"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 158,
    "heading": "2026-04-03 07:43:06 AREA: E",
    "published_at": "2026-04-03 07:43:06",
    "area": "E",
    "message_id": "EA46",
    "text": "ZCZC EA46\nWZ 234/26 \nPLYMOUTH. LANDS END SOUTHEASTWARDS. \nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT. \nNNNN",
    "clean_text": "ZCZC EA46\nWZ 234/26\nPLYMOUTH. LANDS END SOUTHEASTWARDS.\nSOUTH CARDINAL BUOY 50-01.2N 005-40.4W UNLIT.\nNNNN",
    "display_region_heading": "Unresolved B1 code E",
    "display_region_label": "B1 code E",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for Unresolved B1 code E. Readable text says: South cardinal buoy 50-01.2n 005-40.4w unlit.",
    "decoded_highlights": [
      "South cardinal buoy 50-01.2n 005-40.4w unlit",
      "Plymouth. lands end southeastwards"
    ],
    "decoded_status": "decoded",
    "decoded_status_label": "Decoded"
  },
  {
    "index": 159,
    "heading": "2026-04-03 07:40:44 AREA: E",
    "published_at": "2026-04-03 07:40:44",
    "area": "E",
    "message_id": "EA47",
    "text": "ZCZC EA47\nNAVAREA I 62/26 \n1. NAVAREA I WARNINGS INM_ZYXPMHM_UC _MG_HXM_Y_\nUUEXM_ SERIES: 43, 52, 60, 61, 62. \nNOTES: \nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBWMFM_PPVS_MPWFHFZJMZ_MHDPMW_FY_SH_MZHF_PJMHZM_YFPYJMLCSSPHFM_NMB).\nB. NAVAREA I WAYF_F_AESS THAN 42 D_JMZSWM_XWY ONWARD) ARE PROMULGATED VIA _HENCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\nC. THE COMPLETE TEXTS OF ALL IN-FOR_E NAVAREA I WARNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEI_G BROADCAST, ARE REPRINTED IN SECTION III OF ANMB IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE A__HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR AT: NAVWARNINGS(AT)UKHO.GOV.UK \n2. CANCEL NAVAREA I 57/26 (EA43)(GA92)(OA68). \nNNNN",
    "clean_text": "ZCZC EA47\nNAVAREA I 62/26\n1. NAVAREA I WARNINGS INM_ZYXPMHM_UC _MG_HXM_Y_\nUUEXM_ SERIES: 43, 52, 60, 61, 62.\nNOTES:\nA. TEXTS OF NAVAREA I WARNINGS ISSUED EACH WEEK ARE PUBWMFM_PPVS_MPWFHFZJMZ_MHDPMW_FY_SH_MZHF_PJMHZM_YFPYJMLCSSPHFM_NMB).\nB. NAVAREA I WAYF_F_AESS THAN 42 D_JMZSWM_XWY ONWARD) ARE PROMULGATED VIA _HENCED GROUP CALL (EGC) AND/OR RELEVANT NAVTEX TRANSMITTERS.\nC. THE COMPLETE TEXTS OF ALL IN-FOR_E NAVAREA I WARNINGS, INCLUDING THOSE WHICH ARE NO LONGER BEI_G BROADCAST, ARE REPRINTED IN SECTION III OF ANMB IN WEEKS 1, 13, 26 AND 39 AND ARE ALSO AVAILABLE FROM THE UKHO WEBSITE A__HTTPS://MSI.ADMIRALTY.CO.UK/RADIONAVIGATIONALWARNINGS.\nALTERNATIVELY, THESE MAY BE REQUESTED BY E-MAIL FROM NAVAREA I CO-ORDINATOR AT: NAVWARNINGS(AT)UKHO.GOV.UK\n2. CANCEL NAVAREA I 57/26 (EA43)(GA92)(OA68).\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: 1. navarea i warnings inm zyxpmhm uc mg hxm y. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "1. navarea i warnings inm zyxpmhm uc mg hxm y",
      "A. texts of navarea i warnings issued each week are pubwmfm ppvs mpwfhfzjmz mhdpmw fy sh mzhf pjmhzm yfpyjmlcssphfm nmb)",
      "C. the complete texts of all in-for e navarea i warnings, including those which are no longer bei g broadcast, are reprinted in section iii of anmb in weeks 1, 13, 26 and 39 and are also available from the ukho website a https://msi.admiralty.co.uk/radionavigationalwarnings"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 160,
    "heading": "2026-04-03 07:40:15 AREA: E",
    "published_at": "2026-04-03 07:40:15",
    "area": "E",
    "message_id": "EA49",
    "text": "ZCZC EA49\n_272048Z MAR 2026 \nEA49 \nWZ 240/26 \nFASTNET. 9,_9__:(_-)) )3$_3 '975_352--$'. \nEAST CARDINAL BUOY 51-55.3N 007-48.5W UNLIT. \n\nNNNN",
    "clean_text": "ZCZC EA49\n_272048Z MAR 2026\nEA49\nWZ 240/26\nFASTNET. 9,_9__:(_-)) )3$_3 '975_352--$'.\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. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "East cardinal buoy 51-55.3n 007-48.5w unlit"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 161,
    "heading": "2026-04-03 06:48:14 AREA: W",
    "published_at": "2026-04-03 06:48:14",
    "area": "W",
    "message_id": "WA23",
    "text": "ZCZC WA23\nAVURNAV TOULON 207/26\nCORSE - ELB_- LIGURE - LION - MADDALENA - PROVENCE - SARDAIGNE - MINORQUT  /:-_434-\n8,-FORCE BULLETIN\n1. ALL AVURNAV TOULON WARNINGS IN FORCE ARE AVAILABLE ON THE WEB-SITE\n HTTPS:55_ZYHFS_BG__G_+__:_!_:0\n__69,.9,._:6_,._+:'+.!_._+6/0._._7: __3.___/._6_\n7__9,.::5_179/26, 184/26, 186/26, 189/26, 192/26, 2UTUE_EXWYN WPRXWYN WPTXWYN WPYXWY AND THIS MSG\n-9=_//0'._$!*._*__P __EMG_H_MYM\n_NNN\n\nAPPM_UN_0 AL_U_J__LD___ZCZC",
    "clean_text": "ZCZC WA23\nAVURNAV TOULON 207/26\nCORSE - ELB_- LIGURE - LION - MADDALENA - PROVENCE - SARDAIGNE - MINORQUT /:-_434-\n8,-FORCE BULLETIN\n1. ALL AVURNAV TOULON WARNINGS IN FORCE ARE AVAILABLE ON THE WEB-SITE\nHTTPS:55_ZYHFS_BG__G_+__:_!_:0\n__69,.9,._:6_,._+:'+.!_._+6/0._._7: __3.___/._6_\n7__9,.::5_179/26, 184/26, 186/26, 189/26, 192/26, 2UTUE_EXWYN WPRXWYN WPTXWYN WPYXWY AND THIS MSG\n-9=_//0'._$!*._*__P __EMG_H_MYM\n_NNN\n\nAPPM_UN_0 AL_U_J__LD___ZCZC",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: Corse - elb - ligure - lion - maddalena - provence - sardaigne - minorqut /:- 434-. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Corse - elb - ligure - lion - maddalena - provence - sardaigne - minorqut /:- 434-",
      "1. all avurnav toulon warnings in force are available on the web-site",
      "7 9,.::5 179/26, 184/26, 186/26, 189/26, 192/26, 2utue exwyn wprxwyn wptxwyn wpyxwy and this msg"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  },
  {
    "index": 162,
    "heading": "2026-04-03 06:45:34 AREA: W",
    "published_at": "2026-04-03 06:45:34",
    "area": "W",
    "message_id": "WA32",
    "text": "ZCZC WA32\nAVURNAV TOULON 216/26\nLIGURE\nSPECIAL OPERATIONS\n1. _':_05_!8_:'__\n_$__.*6+___EMG_H_MYM\n_TO 082359 UTC APR 26\n BY MV TETHYS _I IN FOLLOWING AERAS.\n AREA 23 BOUNDED BY :\n 43-27.0N  006-55.0E/43-20.0N  006-55._,\n 43-36.3N  007-28.0E/43-43.2N  007-24.4E\n COASTLIN\n .9,.60._BOUNDED BY :\n 43-24.0N 007-03.0E/43-11.7N 007-14.8E\n 43-17.6N 007-26.6E/43-30.0N 007-15.2E\n \n AREA 26 BOUNDED BY :\n 43-35.5N 007-26.4E/43-29.5N 007-31.6E \n 43-31.2N 007-35.9E/43-23.3N 007-39.3E \n 43-17.2N 007-26.6E/43-29.3N 007-15.1E\n \n AREA 28 BOUNDED BY _XONMYPUY__G_PUAEOMEE_43-.997N 007-45._E\n 43-05.6N 007-37.8E/43-17.6N 007-26.6E\n \n AREA ENSEIGNEMENT BOUNDED BY :\n 43-29.50N 007-31.50E/43-32.00N 007-36.20E\n 43-34.00N 007-34.50E/43-35.00N 007-37.50E\n 43-39.50N 007-36.00_\n_YPKR_L)9,.:,/+)'_+)_1_/0__29.::$__,,3,:QL_GHLO.::__,_9.::1)_____(CHART FR7507)\n WIDE BERTH REQUESTED\n2. CANCEL THIS MSG 090059 UTC APR 26NNNN",
    "clean_text": "ZCZC WA32\nAVURNAV TOULON 216/26\nLIGURE\nSPECIAL OPERATIONS\n1. _':_05_!8_:'__\n_$__.*6+___EMG_H_MYM\n_TO 082359 UTC APR 26\nBY MV TETHYS _I IN FOLLOWING AERAS.\nAREA 23 BOUNDED BY :\n43-27.0N 006-55.0E/43-20.0N 006-55._,\n43-36.3N 007-28.0E/43-43.2N 007-24.4E\nCOASTLIN\n.9,.60._BOUNDED BY :\n43-24.0N 007-03.0E/43-11.7N 007-14.8E\n43-17.6N 007-26.6E/43-30.0N 007-15.2E\n\nAREA 26 BOUNDED BY :\n43-35.5N 007-26.4E/43-29.5N 007-31.6E\n43-31.2N 007-35.9E/43-23.3N 007-39.3E\n43-17.2N 007-26.6E/43-29.3N 007-15.1E\n\nAREA 28 BOUNDED BY _XONMYPUY__G_PUAEOMEE_43-.997N 007-45._E\n43-05.6N 007-37.8E/43-17.6N 007-26.6E\n\nAREA ENSEIGNEMENT BOUNDED BY :\n43-29.50N 007-31.50E/43-32.00N 007-36.20E\n43-34.00N 007-34.50E/43-35.00N 007-37.50E\n43-39.50N 007-36.00_\n_YPKR_L)9,.:,/+)'_+)_1_/0__29.::$__,,3,:QL_GHLO.::__,_9.::1)_____(CHART FR7507)\nWIDE BERTH REQUESTED\n2. CANCEL THIS MSG 090059 UTC APR 26NNNN",
    "resolved_station_name": "CROSS La Garde",
    "resolved_country": "France",
    "resolved_nav_area": "III",
    "resolved_coverage_label": "Provence, Ligurian Sea and western Mediterranean",
    "resolved_match_basis": "station-signature",
    "resolved_match_terms": [
      "AVURNAV TOULON"
    ],
    "display_region_heading": "France - Provence, Ligurian Sea and western Mediterranean",
    "display_region_label": "CROSS La Garde, France",
    "subject_label": "navigational warning",
    "subject_code": "A",
    "decoded_summary": "navigational warning for France - Provence, Ligurian Sea and western Mediterranean. Readable text says: Area 28 bounded by xonmypuy g puaeomee 43-.997n 007-45. e. Decoding is partial rather than complete.",
    "decoded_highlights": [
      "Area 28 bounded by xonmypuy g puaeomee 43-.997n 007-45. e",
      "By mv tethys i in following aeras",
      "Avurnav toulon 216/26"
    ],
    "decoded_status": "partial",
    "decoded_status_label": "Partially decoded"
  }
]